SRC漏洞挖掘小見解

原文鏈接:SRC漏洞挖掘小見解-MottoIN

---------------------------------------------------------------------------------------------------------------------------

0x01 本文由來

前段時間一直忙著工作也沒有好好的總結一下,今天趁著周末來總結一下前段時間關於漏洞挖掘的一些心得。

0x02 說在前面的話(扯淡)

漏洞挖掘我並不是什麼大牛,還只是一個在慢慢摸索前行的學習者,也歡迎大家一起來交流漏洞挖掘技術。我的qq:2776369267。

其次本文針對的人群並不是大牛,所以也請不要噴,如果你覺得我寫的不好,可以加我指導一下我,大家一起碰撞一下思路。

最後本文可能基本都是文字看起來是比較疲倦的,希望大家見諒,因為我不可能把挖的漏洞截圖給大家,這個希望大家理解一下,但是來討論沒問題的。

0x03 漏洞挖掘的前期–信息收集

雖然是前期,但是卻是我認為最重要的一部分;

很多人挖洞的時候說不知道如何入手,其實挖洞就是信息收集+常規owasp top 10+邏輯漏洞(重要的可能就是思路猥瑣一點),這些漏洞的測試方法本身不是特別複雜,一般混跡在安全圈子的人都能復現漏洞。接下來我就著重說一下我在信息收集方面的心得。

1、域名信息收集

src一般都只收對應的漏洞,很多src的公告裡面就會明確範圍;然後我們就需要根據這些範圍來確定域名。

如果src上面沒有給出範圍,那麼需要我們去搜集,你需要知道哪些domain是該公司的,主要通過手工來查看:

如:

  • 網站的關於頁面/網站地圖
  • whois反查
  • 一些網站裡面的跳轉請求(也可以關注一下app)
  • 還有就是百度,有些會在title 和 copyright信息裡面出現該公司的信息
  • 網站html源碼:主要就是一些圖片、js、css等,也會出現一些域名
  • apk反編譯源碼裡面

…………還需要你們來補充

2、子域名信息收集

工具:

  • subdomain lijiejie的子域名收集工具(個人覺得挺好用的);
  • layer:這個工具也不錯;

其他的還有很多,比如kali下的等等,不寫那麼多免得看著蛋疼;

但是只要是工具就會有誤報,建議大家對獲取的子域名寫個腳本處理一下;判斷哪些是可以訪問的,哪些是不可以訪問的,哪些訪問是測試頁面的。可以節約不少時間。

手工:其實也是可以工具化(爬蟲思維,不過爬蟲不是很準確)

利用google hacking 搜索,大家一定不要只用google 搜索,這樣是不全面的,還有 bing(不用翻牆)、百度、360等等,因為很多國內的網站利用google去搜索是搜不到的。這裡就不說語法了,貼幾條常用的就行了。

搜集域名和mail地址:

搜集敏感文件:site:xxx.com filetype:doc

搜集管理後台:site:xxx.com 管理/site:xxx.com admin/site:xxx.com login

搜集mail:site:xxx.com intext:@xxx.com/intext:@xxx.com

搜集敏感web路徑:site:xxx.com intitle:登錄/site:xxx.com inurl:sql.php

3、敏感信息收集

這一塊是比較大的一塊,我這裡舉一些:

  • github源代碼:網上有工具(repoog/GitPrey)
  • svn信息泄漏:這個只能用掃描器了
  • 敏感文件:比如資料庫配置文件啦(有案例的)、網站源碼啊、資料庫備份文件等等
  • 敏感目錄:網站後台目錄/一些登錄地址/一些介面目錄
  • email:郵箱命名規則、公司是否具有郵箱默認密碼(這個可以採取社工,畢竟我司默認密碼就很弱雞)。
  • 員工號:很多oa、um、sso系統都是採用員工號登錄的,所以知道員工號的規則很多時候能幫助我們進行撞庫。
  • 商家信息:如果是一些具有商家系統的,能收集到一些商家賬戶(自己搞去,可以註冊,註冊資料請百度)就可以進入很多系統來測試了。

4、小結一下

其實很多時候,我們通過信息收集能得到不少的漏洞了,我這裡舉幾個簡單的案例:

  • 通過搜索引擎獲取系統管理頁面,直接越權訪問;(說好的沒有詳細)
  • 通過github直接找到管理後台賬號密碼;
  • 通過目錄/文件掃描直接得到系統信息(ip、管理員賬號密碼)連入伺服器;
  • 當然也有很多通過信息收集得到一些東西結合其他手段;

0x04 漏洞挖掘的中期–信息處理

1、信息整理

對於第三節提到的那些信息收集技術,我們不能收集完了就完了,一定好好整理,會對後期滲透有很大的幫助。這裡說一下具體怎麼整理。

利用word或excel或txt 都行,我建議word 和excel 因為txt畢竟太簡單了。

分類:

  • 哪些網站功能類似;
  • 哪些網站可能使用的同一模版;
  • 哪些網站有waf(這個一般在url中標明就好);
  • 哪些網站能登錄(註冊的賬號也一定要記住,最好可以準備兩個手機號,兩個郵箱方便註冊);
  • 哪些網站暴露過哪些類型的漏洞(這個只能去烏雲上面找);
  • 網站目前有哪些功能(這個稍微關注一下網站公告,看最近是否會有業務更迭);

2、漏洞整理

我們辛苦的挖洞一定要對我們挖掘出來對漏洞有一個記錄,記錄的可以稍微詳細一些,一是可以方便自己以後回顧,還有就是以後說不定有些地方出現了跟以前一樣的功能,這樣就方便我們更快的找到漏洞。這裡建議doc文檔,圖片可以貼的詳細一些。

第二個就是通過漏洞得到的一些數據:

  • 訂單信息;遍歷、注入
  • 用戶信息:這個可以通過撞庫獲取、任意密碼重置獲取、注入
  • 資料庫用戶名密碼:注入、配置泄漏

為什麼我們要整理這些數據,因為我們要根據這些數據來設計我們的字典。爆破完好了,一樣的6。

0x05 漏洞挖掘的後期–漏洞挖掘

有了前兩步,這裡我會寫的少一點,畢竟漏洞的類型就那麼些,像前文說過就是owasp top 10、邏輯,對於挖掘這些漏洞,我覺得沒什麼特別好的辦法,就是抓包分析邏輯(這裡說的不包括對軟體客戶端的挖掘、app的挖掘);

首先我們需要對一個網站/app有一個了解要知道它的功能點有哪些(後期我會更新一個checklist介紹一下哪些功能會對應什麼樣的漏洞)。

其次我們要分析這個網站/app裡面的請求哪些是我們可以控制的參數,這些地方就是漏洞經常出沒的點。

最後就是分析邏輯,這一類別的漏洞主要還是涉及一套流程,這裡舉個例子:

例:」我們買東西」

  • 首先我們要選擇:
  1. 篩選涉及查詢(是否可以SQL注入)
  2. 加入購物車:商品數量是否可以為負
  • 詢問商家:
  1. 跳轉客服系統,跳轉url中是否含有用戶參數
  2. xss打客服cookie
  3. 釣魚+社工
  • 下單:
  1. 填地址,涉及插入(注入)、xss
  2. 修改單價
  3. 修改總額(這裡說明一下修改總額:情況1,就是我們可能會遇到可以使用優惠卷的情況,比如我們買了100的東西只能使用5塊的優惠價,但是我有一張50的優惠卷是否可以使用;情況2,打折我們是否可以修改打折的折扣;情況3,我們是否可以修改運費,將運費改為負數;情況n)
  4. 備註:xss,sql注入
  • 電子票據:
  1. 會寫抬頭
  • 支付:
  1. 傳輸過程中是否可以修改,如果是掃描二維碼支付,我們可以分析一下二維碼中的請求url看是否可以修改以後重新生成二維碼(這裡不討論具體的支付了,因為微信和支付寶都很安全)
  • 訂單完成:
  1. 是否可以遍歷訂單
  • 評價:
  1. 注入、上傳圖片、xss
  • 退貨…………

附邏輯漏洞安全腦圖:

大家可以無限延伸,這裡只是拋磚引玉。

0x06 說在最後的幾句話

其實這方面的文章很少,幾個原因:

  • 大家會覺得就是經驗,玩多了就自然會了,教不了什麼;
  • 這種分享經驗特別不好寫,到現在也不知道我寫了什麼,其實都是一個思路點;
  • 懶,不願意……肯定都有一定的原因;

最後就是一點建議了:

src慢慢的挖多了系統更新不快,業務不多自然就很難挖了,所以一定要有堅持精神,深入挖掘意識,因為挖洞沒有想像中的那麼簡單;不要想一步登天,多去看看烏雲的案例分析一下別人的挖掘思路,然後跟著學。

最後謝謝大家看了這麼多廢話!下節繼續…

*本文作者MottoIN Team成員:Blood_Zer0,未經允許禁止轉載

推薦閱讀:

反引號->命令執行
「你的深度學習框架包含15個漏洞」,360說 | 附論文
漏洞挖掘高級方法
Linux PIE/stack 內存破壞漏洞(CVE–2017–1000253)預警

TAG:漏洞挖掘 | Web漏洞 | 渗透测试 |