最近在挖各大src,主要以邏輯漏洞為主,想着總結一下我所知道的一些邏輯漏洞分享一下以及舉部分實際的案例展示一下,方便大家理解。
主要從兩個方面看,業務方面與漏洞方面。(接下來就從拿到網站的挖掘步驟進行逐一介紹各個邏輯漏洞)
一 、業務
注冊:
上面這個屬於利用了burp中的intruder插件遍歷了差數,導致短信**漏洞產生。遍歷幾個參數設置好payloads即可,具體看圖操作。我個人來說特別喜歡測各種各樣的短信**漏洞。其他測試方法接着往下看有專門寫短信**。郵箱**與其相同方式。
2.用戶任意注冊/批量注冊
3.枚舉用戶名
4.XSS (在這里的話其實就是說遇到框你就插xss即可,即使大部分不執行,還是會遇到一些奇葩的地方,不信你接着看圖)
另外再注冊名字的窗口處也可以插入xss,雖然危害小,但是你可以找找其他漏洞,打組合拳也說不定哦!
登錄:
1.短信轟炸/驗證碼安全問題/密碼爆破/郵箱轟炸
2.SQL注入
3.撞庫
4.抓包把password字段修改成空值發送
5.認證憑證替換/比如返回的數據包中包含賬號,修改賬號就能登陸其他賬號
6.Cookie仿冒
7.修改返回包的相關數據,可能會登陸到其他的用戶
找回密碼:
1.短信郵箱轟炸/短信郵箱劫持
2.重置任意用戶密碼/驗證碼手機用戶未統一驗證
3.直接跳過驗證步驟
購買支付/充值(主要還是利用抓包需要仔細的去看每一個可用參數)
1. 交易金額/數量修改,替換支付模塊 (這里也就是更換了支付的模塊金額)
2. 交易信息訂單編碼/導致信息泄露
3. 整數溢出,int最大值為2147483647,超過最大值
4. 修改充值賬戶
5. 支付繞過
抽獎活動
1. 刷獎品/積分
2. 並發
優惠券/代金券
1. 並發邏輯漏洞(burp或者fd批量獲取優惠劵等)
2. 修改優惠券金額/數量
訂單信息
1. 訂單信息遍歷/泄露
2. 訂單信息泄露導致用戶信息泄露
3. 刪除他人訂單
會員系統
1. 修改個人信息上傳文件,上傳帶彈窗的html
2. 如遇上上傳xlsx/docx,可能存在xxe,上傳惡意的文檔盲測
3. 圖片上傳也可能遇到imagereagick命令執行,上傳惡意圖片
4. 視頻上傳如果使用ffmpeg<3.2.4(視頻按幀分割成圖片),上傳惡意avi盲測ssrf
5. 用戶橫向越權訪問/遍歷/導致用戶信息泄露
6. SQL注入/個人簡介處存儲XSS 個人信息注冊的名稱也可以插入xss
傳輸過程
1. 明文傳輸賬號密碼
2. 修改信息處無session/token導致csrf
3. POST/COOKIE注入
評論
1. POST注入/存儲XSS
2. 無session/token導致CSRF
二、漏洞處
驗證碼問題
1. 萬能驗證碼
2. 返回包中存在驗證碼
3. 刪除驗證碼或者cookie中的值可以爆破賬號密碼
短信轟炸
1. 一直重放
2. 刪除修改cookie,重放數據包
3. 遍歷參數發送數據包
4. 手機號后面加空格或者前面加其他的比如+86或者逗號分號等,然后重發數據包
5. 請求參數修改大小寫,或者添加請求參數比如&id=1
6. 一個站的登陸處可能做了防護,但是再找回密碼處可能沒有安全防護,或者在注冊流程中沒有安全防護,所以說多測試接口
7. 如果對手機號一天次數進行了限制的話,還可以在進行發送一次短信,DO intercept之后修改為成功回顯
水平越權
1. 主要登陸后還是修改參數,主要找到多個接口不斷測試
2. 關注網頁源代碼,有時候會有表單,但是被bidden(隱藏標簽)給隱藏起來了,可以修改返回包然后嘗試獲取數據檢測
3. 多個賬號,主要分析請求參數
數據泄露
1. 在找回密碼處,填寫數據后抓包查看返回信息,有可能存在敏感數據返回
任意用戶密碼重置
1. 目前大部分都是在修改密碼處參數修改
2. 有些是前端驗證
三、支付邏輯漏洞
1.邊界值問題 : 正常的邏輯是用戶購買商品,然后價格累加得到一個總價進行扣款。這個時候就會產生邏輯問題:如果說用戶購買的商品是負數了,那么計算的總數就是負數。反過來錢給用戶
2.順序執行缺陷:正常的邏輯是a-b-c-d 循環漸進的進行流程操作。這個時候就會產生邏輯問題:可以直接從中繞過某一個過程進入到下一步操作。如果說有一項是支付的操作,那么也就會產生支付繞過,如果說有一項是驗證機制,就會繞過驗證直接進入下一步。
3.金額直接傳輸導致篡改:直接對下單的金額進行修改值,這里可以使用fd或者burp抓包
4.確定支付之后還可以加入購物車:把商品放入購物車點擊下單支付,會跳轉到微信,支付寶等第三方支付平台。這個時候還可以繼續在購物車中加入商品,支付結束之后,商家發放的商品是現在的購物車里面的東西。
5.請求重放:購買成功之后,繼續重放請求,可以讓購買的商品一直增加。購買成功之后,會有一個銀行對商戶網站跳轉的過程,如果反復進行操作,有幾率會導致商品反復購買和增加,但是不需要付更多的錢。
6.請求參數干擾:金錢做了簽名認證之后,修改后不通過,但是在里面仍然會有一個參數對金額產生影響導致問題產生。
7.訂單替換:訂單替換發生在支付之后的事件處理,同時向服務器發起二次支付請求一個多一個少,支付金額少的,然后支付之后進行替換,告知服務器訂單支付完成,並且過程可以反復的回放。
8.欺詐:需要兩個收款人,一個是正常的商家,一個是偽造的商家
9.單位替換:產生在paypal類似的國際支付的場景。
10.用戶替換:在支付過程中發生用戶替換現象,首先登陸自己的賬戶,然后取得另外一個人的賬戶名等有效信息,在業務流程中用對方的用戶名替換自己的用戶名,用對方的余額購買完成后,再替換自己的賬戶名,這樣就形成別人的錢買自己的東西
11.強制攻擊:強制攻擊發生在暴力破解的情況下,如果一個商家運用一個自己的網店,接入第三方支付接口,由於設計上的不當導致商家與第三方支付約定的密鑰Key可以單獨被MD5加密,導致可以使用MD5碰撞技術對密鑰進行破解,攻擊者可以設計簡單的密鑰加密信息使得MD5加密是可以用MD5碰撞技術進行暴力破解。
12.秘鑰泄漏:內置支付功能的app為了設計上的方便有可能會把Md5或者是RSA的私鑰泄漏導致攻擊者反編譯apk之后獲取密鑰信息使得交易信息可以被篡改。
13.函數修改:apk反編譯之后的函數修改,可能導致商家在最后一步向支付方提交訂單時未驗證信息的准確性,仍然被篡改。
14.heart bleed:SSL(安全套接層)協議是使用最為普遍網站加密技術,而OpenSSL則是開源的 SSL 套件,為全球成千上萬的web服務器所使用。Web服務器正是通過它來將密鑰發送給訪客然后在雙方的連接之間對信息進行加密。URL中使用 https打頭的連接都采用了SSL加密技術。在線購物、網銀等活動均采用SSL技術來防止竊密及避免中間人攻擊。
該漏洞被歸為緩沖過度讀取。緩沖過度讀取錯誤是軟件可以讀取比應該被允許還多的數據。漏洞讓特定版本的openSSL成為無需鑰匙即可開啟的“廢鎖”,入侵者每次可以翻檢戶主的64K信息,只要有足夠的耐心和時間,就可以翻檢足夠多的數據,拼湊出戶主的銀行密碼、私信等敏感數據。產生原因:數據在傳輸的兩端是不加密的。一些數據如果在傳輸過程中不加密則會泄露個人數據等信息。
其實首先的話還是需要給原理明白以及操作的思路弄懂,學會變通才可以挖到更多新型邏輯漏洞
一些挖src邏輯的騷操作下期抽時間寫一下,案例可以私聊我找我要漏洞報告
如有寫的不正確處,望大佬斧正。謝謝!