黑客攻防技术宝典web实战篇:攻击应用程序逻辑习题
貓寧!!!
參考鏈接:http://www.ituring.com.cn/book/885
?
隨書答案。
1. 何為強制瀏覽?可以通過它確定哪些漏洞?
強制瀏覽包括避開瀏覽器導航對應用程序功能訪問順序實施的任何限制。應
使用強制瀏覽測試多階段過程或其他區域中的錯誤假設。通常,這些假設會導致
可以通過使用強制瀏覽加以利用的訪問控制漏洞。
2. 為防止不同類型的攻擊,應用程序對用戶輸入實施各種全局過濾。為防止 SQL
注入,它將出現在用戶輸入中的單引號配對。為防止針對一些本地代碼組件的緩
沖區溢出攻擊,它將超長的數據截短到適當的長度。這些過濾有什么問題?
如果在實施長度限制之前將引號配對,則通過在配對的兩個引號之間截短輸
入,就可以在輸入中引入奇數單引號(請參閱第 9 章了解詳情)。
如果在配對之前應用長度限制,仍然可以通過在有效載荷的開頭插入大量單引
號,使該有效載荷充分放大,并使用位于有效載荷末尾的專門設計的數據來溢出
緩沖區,從而達到利用任何緩沖區溢出條件的目的。
3. 可以采取哪些步驟來探查某登錄功能中是否存在故障開放條件?(列出想到
的各種不同測試。)
應使用所控制帳戶的證書,多次重復登錄過程,并以特定方式修改請求:
(a) 對于提交的每個參數,嘗試提交一個空值,完全省略名稱/值對,并使用不
同的值多次提交同一數據項。
(b) 如果登錄過程包括多個階段,應嘗試以不同的順序執行這些階段、完全跳過
單個階段、直接進入任意階段,以及在不需要參數的階段提交參數。
(c) 如果多次提交了同一數據項,應進行探查,以確定如何處理每個值,以及在
一個階段確認的數據在后續階段是否仍為可信數據。
4. 某銀行應用程序采用一種非常安全可靠的多階段登錄機制。在第一個階段,
用戶輸入用戶名和密碼。在第二個階段,用戶輸入在物理令牌上顯示的一個不斷
變化的值,并通過隱藏表單字段重新提交前面輸入的用戶名。
可以立即發現的邏輯缺陷有哪些?
應用程序很可能單獨執行這兩個檢查,根據一個用戶名確認密碼,根據另一個用
戶名確認令牌值,然后為其中一個已確認的用戶名創建通過驗證的會話。
如果擁有自己的物理令牌的應用程序用戶沒法獲得了其他用戶的密碼,他們就可
以作為該用戶登錄。相反,取決于該機制的運行方式,能夠讀取其他用戶的令牌
值的用戶或許可以作為該用戶登錄,而無需了解后者的密碼。該解決方案的總體
安全狀態將因此被明顯削弱。
5. 在通過提交專門設計的輸入探查一個應用程序中是否存在常見的漏洞時,應
用程序頻繁返回包含調試信息的詳細錯誤消息。有時,這些消息與其他用戶造成
的錯誤有關。發生這種情況后,就無法令其再次發生。這表示應用程序存在什么
邏輯缺陷,接下來該如何處理?
這種行為表示錯誤消息功能不是線程安全的,將返回由任何用戶生成的上一個錯
誤的詳細信息。應同時使用兩個不同的會話進行深入探查,以確認是否確實出現
了這種情況。如果確實如此,應使用一段腳本不斷觸發一條詳細的錯誤消息,并
記錄其內容中的任何差異,以獲取與其他應用程序用戶有關的有用信息。
?
轉載于:https://www.cnblogs.com/landesk/p/10888452.html
總結
以上是生活随笔為你收集整理的黑客攻防技术宝典web实战篇:攻击应用程序逻辑习题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 保存 laravel model 而不更
- 下一篇: Taro项目遇到的问题