How to Break Software Security

James A. Whittaker, Hugh Thompson

  • 出版商: Addison Wesley
  • 出版日期: 2003-05-19
  • 售價: $1,650
  • 貴賓價: 9.5$1,568
  • 語言: 英文
  • 頁數: 208
  • 裝訂: Paperback
  • ISBN: 0321194330
  • ISBN-13: 9780321194336
  • 相關分類: 資訊安全
  • 立即出貨(限量) (庫存=2)

買這商品的人也買了...

商品描述

How to Break Software Security describes the general problem of software security in a practical perspective from a software tester's point of view. It defines prescriptive techniques (attacks that testers can use on their own software) that are designed to ferret out security vulnerabilities in software applications. The book's style is easy to read and provides readers with the techniques and advice to hunt down security bugs and see that they're destroyed before the software is released.

Accompanying the book is a CD-ROM containing Holodeck, which tests for security vulnerabilities. There are also a number of bug-finding tools, freeware, and an easy-to-use port scanner included on the CD-ROM.

Table of Contents:

(Chapters 1-6 conclude with a “Conclusion,” “Exercises,” and “References.” Chapter 7 concludes with a “Conclusion” and “References” and the Appendices conclude with only “References.”)

Preface.
Dedication.
Chapter Summaries.

I. INTRODUCTION.

1. A Fault Model for Software Security Testing.

Why Security Testing is Different.

A Fault Model for Security Vulnerabilities.

Security Concerns and the How to Break Software Fault Model.

Creating an Attack Plan.

A Note on Format.

II. CREATING UNANTICIPATED USER INPUT SCENARIOS.

2. Attacking Software Dependencies.

First Attack: Block access to libraries.

Second Attack: Manipulate the application's registry values.

Third Attack: Force the application to use corrupt files.

Fourth Attack: Manipulate and replace files that the application creates, reads from, writes to or executes.

Fifth Attack: Force the application to operate in low memory, disk space and network availability conditions.

Summary: A Checklist for Battle.

3. Breaking Security through the User Interface.

First Attack: Overflow input buffers.

Second Attack: Examine all common switches and options.

Third Attack: Explore escape characters, character sets and commands.

Summary: A Checklist for Battle.

III. DESIGN AND IMPLEMENTATION ATTACKS.

4. Attacking Design.

First Attack: Try common default and test account names and passwords.

Second Attack: Use Holodeck to expose unprotected test APIs.

Third Attack: Connect to all ports.

Fourth Attack: Fake the source of data.

Fifth Attack: Create loop conditions in any application that interprets script, code or other user supplied logic.

Sixth Attack: Use alternate routes to accomplish the same task.

Seventh Attack: Force the system to reset values.

Summary: A Checklist for Battle.

5. Attacking Implementation.

First Attack: Get between time of check and time of use.

Second Attack: Create files with the same name as files protected with a higher classification.

Third Attack: Force all error messages.

Fourth Attack: Use Holodeck to look for temporary files and screen their contents for sensitive information.

Summary: A Checklist for Battle.

IV. APPLYING THE ATTACKS.

6. Putting it All Together.

Pre-Attack Preparations.

Opponent#1: Microsoft Windows Media Player 9.0 (Windows).

Opponent#2: Mozilla 1.2.1 (Windows).

Opponent#3: OpenOffice.org 1.0.2 (Linux).

V. CONCLUSION.

7. Some Parting Advice.

How Secure is Secure?

Mining Gold from Bug Databases.

Final Words of Wisdom.

APPENDICES.

Glossary of Coding, Testing, and Software Security Terms.
Appendix A. Using the Tools on the Accompanying CD.

Surveying the Tools.

Holodeck.

Port Scanner.

Appendix B. Software's Invisible Users.

Where Errors Slip In.

The Human User.

The Operating System User.

The API User.

The File System User.

Index.

商品描述(中文翻譯)

《如何破解軟體安全》從軟體測試人員的角度,以實用的觀點描述了軟體安全的一般問題。它定義了預防性技術(測試人員可以在自己的軟體上使用的攻擊),旨在發現軟體應用中的安全漏洞。這本書的風格易於閱讀,並提供讀者尋找安全漏洞並在軟體發布之前消除它們的技巧和建議。

附帶的CD-ROM中包含了Holodeck,用於測試安全漏洞。CD-ROM還包含了一些尋找錯誤的工具、免費軟體和易於使用的端口掃描器。

目錄:

(第1-6章以“結論”,“練習”和“參考文獻”結束。第7章以“結論”和“參考文獻”結束,附錄僅以“參考文獻”結束。)

前言。

獻辭。

章節摘要。

第一部分:介紹。

1. 軟體安全測試的錯誤模型。

- 為什麼安全測試與眾不同。
- 安全漏洞的錯誤模型。
- 安全問題和《如何破解軟體錯誤模型》。
- 創建攻擊計劃。
- 格式備註。

第二部分:創建未預期的使用者輸入場景。

2. 攻擊軟體相依性。

- 第一種攻擊:阻止訪問庫。
- 第二種攻擊:操縱應用程式的註冊表值。
- 第三種攻擊:強制應用程式使用損壞的檔案。
- 第四種攻擊:操縱並替換應用程式創建、讀取、寫入或執行的檔案。
- 第五種攻擊:強制應用程式在記憶體、磁碟空間和網路可用性低的情況下運作。
- 總結:戰鬥檢查清單。

3. 通過使用者介面破解安全。

- 第一種攻擊:溢位輸入緩衝區。
- 第二種攻擊:檢查所有常見的開關和選項。
- 第三種攻擊:探索轉義字符、字符集和命令。
- 總結:戰鬥檢查清單。

第三部分:設計和實施攻擊。

4. 攻擊設計。

- 第一種攻擊:嘗試常見的預設和測試帳戶名稱和密碼。
- 第二種攻擊:使用Holodeck揭示未受保護的測試API。
- 第三種攻擊:連接所有端口。
- 第四種攻擊:偽造數據來源。
- 第五種攻擊:在解釋腳本、代碼或其他用戶提供的邏輯的任何應用程式中創建循環條件。
- 第六種攻擊:使用替代路線完成相同的任務。
- 第七種攻擊:強制系統重置值。