<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    實戰|一次從弱口令到getshell

    VSole2022-07-15 08:56:31

    這是個人認為近期比較有價值的一次滲透測試,分享給大家。

    主要分為4個步驟:弱口令進入系統;后臺sql注入;getshell,遠程RDP管理員登錄;擴大戰果,證明危害。

    0x01 弱口令

    在一次針對某站點信息收集的過程中,通過子域名掃描,掃描到某個老舊系統。

    一看這都2014年的老站了,肯定有搞頭!

    日常使用burp爆破一波試試,沒爆破出來

    但是隨手一試,好家伙123/123進入系統,屬于是運氣拉滿了

    (高強度打碼)

    這里能看到是一個“編輯”人員的權限,并沒有什么上傳等后臺管理的功能,只能耐心過一遍系統的各種功能。

    0x02 SQL注入

    進入系統翻一翻,沒有什么敏感信息泄露,但是在一處查詢人員信息的接口發現了SQL注入(xray被動掃描掃出來的)

    http://host.com/xxx/control/SearchMenHunInfo?content=123

    這時想要手工驗證一下,發現甚至不需要后臺cookie就能直接訪問該接口,相當于還存在未授權訪問漏洞。

    那這sqlmap一把梭,--cookie參數都不用加了

    python sqlmap.py -u "http://host.com/xxx/control/SearchMenHunInfo?content=123" --current-db

    這里跑出了庫名,還能看到這是一個Oracle數據庫。打算繼續拿shell試試。

    但是在我日常滲透過程中,Oracle數據庫并不常見,sqlmap中--os-shell參數還是不支持Oracle數據庫的,只能現學現賣一波。

    0x03 getshell

    首先參考了這篇文章 Oracle注入 - 命令執行&Shell反彈

    文章中介紹到以下版本的Oracle在發現注入后可以命令執行

    那么再用sqlmap查看一下Oracle版本

    python sqlmap.py -u "http://host.com/xxx/control/SearchMenHunInfo?content=123" -b

    看來是符合可以命令執行的版本的!

    又經歷了一波漫長的學習,發現了github一個大佬已經集成好的工具 oracleShell oracle 數據庫命令執行

    工具截圖如下

    可以看出,我們還需要知道數據庫的SID,用戶名,密碼,就可以嘗試執行命令。

    那么就繼續利用sqlmap來擴大我們已知信息。

    查看數據庫權限--is-dba

    查看數據庫IP,SID

    這里進入sqlmap的--sql-shell模式,用sql語句來查詢

    查詢SID:select instance_name from v$instance

    查詢當前IP:select sys_context('userenv','ip_address') from dual

    爆破所有數據庫賬號、密碼

    使用sqlmap的--passwords參數,跑出數據庫的所用用戶名和對應的密碼

    經過漫長的等待,終于有了結果(這里給出的是虛構的數據)

    database management system users password hashes:
    [*] ANONYMOUS [1]:
        password hash: anonymous
    [*] HR [1]:
        password hash: 6399F3B38EDF3288
    [*] SYS [1]:
        password hash: 4DE42795E66117AE
    [*] SYSMAN [1]:
        password hash: B607EEBB3A2D36D0
    [*] SYSTEM[1]:
        password hash: 8877FF8306EF558B
        clear-text password: SYS
    

    可以看到有些用戶名只得到了對應的哈希,但是其中一個用戶名system成功跑出了明文密碼!

    查詢Oracle常用端口

    Oracle確實不熟悉,百度查一波端口:

    查詢發現,服務端默認的端口號一般是389,客戶端默認的端口號一般都是1521

    OK!現在已經擁有了IP,PORT,SID,用戶名(SYSTEM),密碼(SYS),可以直接使用工具連接了。

    一切順利!取得了system權限!

    0x04 進一步證明危害

    創建個用戶試試

    net user name pwd /add

    net localgroup Administrators name /add

    遠程桌面RDP連接 name/pwd

    連接成功!

    上傳一個mimikatz,抓取管理員明文密碼

    privilege::debug

    sekurlsa::logonPasswords

    最終成功登錄Administrator賬號RDP

    至此,滲透結束。

    總結

    弱口令->sql注入->getshell->拿下管理員權限

    從一個常見的弱口令,到拿下管理員權限,這個過程需要運氣和耐心,把這次經歷拿出來分享一下。

    在強調一下本次漏洞詳情均已提交,滲透需規范!

    大三信息安全專業學生的一篇文章,如有錯誤還請多多指教!(再不寫文章就成大四了^^)

    本文作者:Jerrytqq, 轉載請注明來自FreeBuf.COM

    弱口令sqlmap
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    這是個人認為近期比較有價值的一次滲透測試,分享給大家。 主要分為4個步驟:口令進入系統;后臺sql注入;getshell,遠程RDP管理員登錄;擴大戰果,證明危害。
    0x00 目標情況一個web站點111.*.*.63,只有一個登陸框,測試了沒有注入,沒有口令,掃描了全端口,沒有發現什么有用的信息。0x02 找網站絕對路徑判斷是不是dba權限uname=test';if(1=(select?判斷是否是站庫分離uname=test';if?sqlmap查看建表成功,sqlmap -r 1.txt --dbms "Microsoft SQL Server" -D "tempdb" --tables查找網站文件并把路徑寫入到表tt_tmp. python sqlmap.py -r 1.txt --dbms="Microsoft SQL Server" --technique=S -D "tempdb" -T "tt_tmp" -C "tmp1" --dump -v 30x03 嘗試在111.*.*.59主機getshell嘗試寫一句話先在下面的路徑中寫入txt文件驗證網站路徑到底是哪一個D:\bak\20170226\bak\20170403.2\webapp\Content\layer\. 依次寫文件然后訪問,在寫入?
    不甘心,案例找不出來,我把代碼審計一遍還不行嗎?于是就通過webshell打包了一份代碼,于是便有了這篇文章。0x02 漏洞利用還是先簡單聊聊sql注入如何拿下內網的吧。因此可以下定結論,該漏洞在未經授權就可被利用。
    不甘心,案例找不出來,我把代碼審計一遍還不行嗎?于是就通過webshell打包了一份代碼,于是便有了這篇文章。0x02 漏洞利用還是先簡單聊聊sql注入如何拿下內網的吧。因此可以下定結論,該漏洞在未經授權就可被利用。
    Scanners-Box 指引#簡介#Scanners-Box是一個集合github平臺上的安全行業從業人員自研開源掃描器的倉庫,包括子域名枚舉、數據庫漏洞掃描、口令或信息泄漏掃描、端口掃描、指紋識別以及其他大型掃描器或模塊化掃描器;該倉庫只收錄各位網友自己編寫的一般性開源掃描器,類似nmap、w3af、brakeman等知名掃描工具不收錄。
    0x00前言 接到任務,需要對一些違法網站做滲透測試…… 0x01信息收集 根據提供的目標,打開網站如下
    0x00前言接到任務,需要對一些違法網站做滲透測試……最終定位到該系統為某網絡驗證系統下載最新版的代碼到本地,開始審計。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类