Table of Contents
Giới thiệu xxiii
Phần I Contemporary an
1 Nhu cầu Hệ thống an toàn 3
ứng dụng trên Web Wild Wild 5
Nhu cầu Trustworthy Computing 7
Bắt mọi người Head trong Game 7
dùng Tact để bán bảo mật đối với Tổ chức 8
Sử dụng Subversion 11
Một số ý tưởng Thấm nhuần cho một nền văn hoá an ninh 13
Lấy Boss để Gửi E-Mail 14
Nominate một Thánh An ninh 15
Advantage của Attacker và Dilemma 19 của Defender
Nguyên tắc # 1: Hậu vệ phải bảo vệ tất cả các điểm; kẻ tấn công có thể lựa chọn những điểm yếu nhất. 19
Nguyên tắc số 2: Các hậu vệ có thể bảo vệ chống lại các cuộc tấn công chỉ biết; kẻ tấn công có thể thăm dò các lỗ hổng chưa được biết. 20
Nguyên tắc # 3: Hậu vệ phải liên tục cảnh giác; kẻ tấn công có thể tấn công theo ý muốn. 20
Nguyên tắc # 4: Hậu vệ phải chơi đúng luật; kẻ tấn công có thể chơi bẩn. 21
Tóm tắt 21
2 Proactive Phát triển An ninh Process 23
Quy trình cải tiến 25
Vai trò của giáo dục 26
Resistance để đào tạo bắt buộc 29
đang thực hiện đào tạo 29
Tiến Khoa học An ninh 29
Giáo dục Chứng minh các sai lầm khác Eyes 31
Bây giờ các bằng chứng! 31
Giai đoạn thiết kế 32
câu hỏi bảo mật Trong cuộc phỏng vấn 33 vii Xác định các mục tiêu sản phẩm an ninh 34 An ninh Đặc tính sản phẩm 37 Làm Time An ninh 40 Threat Modeling Dẫn đến an toàn Thiết kế 41 Build End of-Life Kế hoạch không an toàn Tính năng 41 Đặt Bug Bar 41 an ninh Đoàn đánh giá 43 Phát triển giai đoạn 43 Hãy Hardcore Về Ai có thể Kiểm tra Trong Mã New (Check-Ins Checked) 43 an ninh Peer xét của Bộ luật mới (Check-Ins Checked) 44 Xác định bảo mật Nguyên tắc mã 44 Xem lại Old Defects 44 External Security Review 45 an ninh Đẩy 45 Quán Niệm Bug của bạn Counts 46 Giữ Theo dõi của Metrics Bug 46 Không ngạc nhiên và No Easter Eggs! 47 Giai đoạn thử nghiệm 47 Vận chuyển và bảo dưỡng giai đoạn 47 Làm thế nào Bạn có biết khi bạn đang làm gì? 47 Response Process 48 Accountability 49 Tóm tắt 49 3 nguyên tắc an Sống Bằng 51 SD3: Secure bởi Thiết kế, bởi mặc định, và trong Deployment 51 an toàn bằng cách thiết kế 51 an toàn theo Mặc định 53 an toàn trong triển khai 53 nguyên tắc an ninh 54 Tìm hiểu từ những sai lầm 54 Giảm thiểu tấn công của bạn Surface 57 sử dụng mặc định an toàn 57 Sử dụng Defense in Depth 59 Sử dụng Least Privilege 60 Khả năng tương thích ngược Will Always Cho Bạn đau buồn 62 Giả sử hệ thống bên ngoài là không an toàn 63 Kế hoạch thất bại 64 Fail để một chế độ an toàn 64 Ghi Đó tính năng bảo mật! = Các tính năng an toàn 66 Never Depend về an ninh thông qua tối tăm một mình 66 Không Mix Mã và dữ liệu 67 vấn đề an ninh Fix đúng 67 Tóm tắt 68 4 Threat Mô hình hóa 69 Bảo mật Thiết kế Thông qua mối đe dọa Mô hình hóa 70 Lắp ráp các đội Threat-Modeling 72 Phân hủy các ứng dụng 73 Xác định các mối đe dọa đến hệ thống 83 Rank các mối đe dọa bằng cách tăng Giảm rủi ro 93 Chọn Làm thế nào để ứng phó với các mối đe dọa 106 Chọn Kỹ thuật để Giảm thiểu các mối đe dọa 107 an ninh kỹ thuật 108 Xác thực 109 Authorization 114 Technologies 115 Tamper kháng và Bảo mật-Enhanced Secrets Protect, hoặc tốt hơn Tuy nhiên, Không Lưu trữ bí mật 116 Encryption, băm, MAC, và chữ ký kỹ thuật số 116 Kiểm toán 117 lọc, chỉnh tiết lưu, và chất lượng dịch vụ 118 Least Privilege 118 Giảm nhẹ các mối đe dọa ứng dụng mẫu tính lương 118 A Cornucopia các mối đe dọa và giải pháp 120 Tóm tắt 124 Phần II an toàn kỹ thuật mã hoá 5 Public Enemy # 1 : The tràn bộ đệm 127 stack vượt 129 Heap vượt 138 Mảng lỗi Indexing 144 Định dạng chuỗi Bugs 147 Unicode và ANSI Buffer Size Sự không tương xứng 153 A Real Unicode Bug Ví dụ 154 Ngăn đệm vượt 155 Safe chuỗi Xử lý 156 A Lời cảnh cáo về chức năng String-Xử lý 166 Visual C ++ .NET / GS Lựa chọn 167 Tóm tắt 170 6 Xác định thích hợp Access Control 171 Tại sao ACLs là quan trọng 171 A Diversion: Sửa luật Registry 173 Điều gì tạo nên Up một ACL? 175 A Cách Lựa chọn tốt ACL 178 hiệu quả Deny ACEs 180 Tạo ACL 181 Tạo ACL trong Windows NT 4 181 Tạo ACL trong Windows 2000 185 Tạo ACL với Active Template Library 189 Bắt các ACE Đặt Ngay 191 Hãy cảnh giác với Terminal Server và Remote Desktop SIDs 193 DACLs NULL và các loại ACE nguy hiểm khác 195 DACLs NULL và Kiểm toán 197 loại ACE Dangerous 197 Nếu tôi không thể thay đổi các NULL DACL? 198 khác Cơ chế điều khiển truy cập 199 NET Roles khung 199 COM + Vai trò 201 Hạn chế IP 202 SQL Server Triggers và Quyền 203 A Ví dụ y tế 203 Lưu ý Quan trọng về truy cập cơ chế kiểm soát 205 Tóm tắt 206 7 Chạy với Least Privilege 207 Least Privilege trong thế giới thực 208 virus và Trojan 209 Web Server deface 210 Tổng quan Giới thiệu tóm tắt của Access Control 211 Tổng quan Giới thiệu tóm tắt về quyền ưu đãi 211 SeBackupPrivilege vấn đề 212 SeRestorePrivilege vấn đề 215 SeDebugPrivilege vấn đề 215 SeTcbPrivilege vấn đề 216 SeAssignPrimaryTokenPrivilege và SeIncreaseQuotaPrivilege vấn đề 217 SeLoadDriverPrivilege vấn đề 217 SeRemoteShutdownPrivilege vấn đề 217 SeTakeOwnershipPrivilege vấn đề 217 Tổng quan Tóm tắt Tokens 218 Làm thế nào Tokens, quyền ưu đãi, SID, ACL, và các quá trình Relate 218 SIDs và Kiểm tra Access, quyền ưu đãi, Privilege Kiểm tra 219 Ba lý do ứng dụng Yêu cầu Privileges Elevated 220 ACL vấn đề 220 Privilege Issue 221 Sử dụng LSA Secrets 221 Giải quyết các đặc quyền cao Issue 222 Giải quyết ACL vấn đề 222 Giải quyết vấn đề Privilege 223 Giải quyết các vấn đề LSA 223 Tiến trình xác định phù hợp Privilege 223 Bước 1: Tìm Tài nguyên sử dụng bởi các ứng dụng 224 Bước 2: Tìm API Privileged Được sử dụng bởi các ứng dụng 224 Bước 3: Những Tài Khoản là bắt buộc? 226 Bước 4: Lấy Contents token 226 Bước 5: Có phải tất cả các SID và quyền ưu đãi cần thiết? 232 Bước 6: Điều chỉnh Token 233 Low-Privilege Dịch vụ Tài khoản trong Windows XP và Windows .NET Server 2003 248 The Privilege Mạo danh và Windows .NET Server 2003 250 Debugging Least Privilege-vấn đề 251 Tại sao ứng dụng thất bại như một người bình thường 251 Làm thế nào để Xác định Tại sao ứng dụng Fail 252 Tóm tắt 258 8 Cryptographic nhược điểm 259 Sử dụng Poor số ngẫu nhiên 259 Vấn đề: rand 260 số được mã hóa ngẫu nhiên trong Win32 262 số được mã hóa ngẫu nhiên trong Managed Mã 268 số được mã hóa ngẫu nhiên trong trang Web 269 Sử dụng mật khẩu để lấy được mật mã phím 269 Đo lường hiệu quả Bit Kích thước của một mật khẩu 270 Key vấn đề quản lý 272 dài hạn và ngắn hạn Phím 274 Sử dụng thích hợp Key độ dài để bảo vệ dữ liệu 274 Giữ phím Gần Nguồn 276 Key Exchange vấn đề 279 Tạo riêng của bạn Cryptographic Chức năng 281 Sử dụng Cùng Stream Cipher Encryption Key 283 Tại sao người sử dụng thuật toán mã hóa 284 Suối Những cạm bẫy của Suối thuật toán mã hóa 284 gì Nếu Bạn Phải Sử dụng các khóa giống nhau không? 287 Bit-Flipping tấn công chống Suối thuật toán mã hóa 289 Giải quyết Bit-Flipping Attacks 290 Khi sử dụng một Hash, Keyed Hash, hoặc Digital Signature 290 Dùng lại một vùng đệm cho Plaintext và bản mã 296 Sử dụng Crypto để Giảm thiểu các mối đe dọa 297 tài liệu sử dụng của bạn của Cryptography 298 9 Bảo vệ bí mật dữ liệu 299 phương bí mật dữ liệu 300 Đôi khi bạn không cần để Store một bí mật 301 Tạo một muối Hash 302 PKCS dùng # 5 để làm cho công việc của Attacker Harder 303 Bắt bí mật từ người dùng 305 Bảo vệ bí mật trong Windows 2000 và sau 305 A Trường hợp đặc biệt: Credentials Khách hàng trong Windows XP 309 Bảo vệ bí mật trong Windows NT 4 311 Bảo vệ bí mật trong Windows 95, Windows 98, Windows Me, và Windows CE 315 Bắt Chi tiết Thiết bị dùng PnP 316 Not Chọn cho một Least Common Mẫu số giải pháp 320 Quản lý bí mật trong bộ nhớ 321 A Compiler Optimization Nên biết trước 322 Encrypting bí mật dữ liệu trong bộ nhớ 326 Khóa nhớ để Ngăn chặn Paging Sensitive liệu 327 Bảo vệ bí mật dữ liệu trong luật quản lý 329 Quản lý bí mật trong bộ nhớ trong Luật Quản lý 335 Nâng cao an ninh Bar 336 Lưu trữ các dữ liệu trong một tập tin trên một FAT File System 337 Sử dụng một Key nhúng và XOR để mã hóa dữ liệu 337 Sử dụng một Key nhúng và 3DES để mã hóa dữ liệu 337 Sử dụng 3DES để mã hóa các dữ liệu và lưu trữ mật khẩu trong Registry 337 Sử dụng 3DES để mã hóa các dữ liệu và lưu trữ một Key mạnh trong Registry 337 Sử dụng 3DES để mã hóa dữ liệu, lưu trữ một khóa mạnh mẽ trong Registry, và ACLing File và Registry Key 338 Sử dụng 3DES để mã hóa dữ liệu, lưu trữ một khóa mạnh mẽ trong Registry, Yêu cầu người dùng để Nhập mật khẩu , và ACLing File và Registry Key 338 Trade-offs Khi Bảo vệ bí mật dữ liệu 338 Tóm tắt 339 10 Tất cả các đầu vào là ác! 341 Vấn đề 342 bị đặt nhầm Tín 343 Một chiến lược Chống lại Input Attacks 345 Làm thế nào để Kiểm tra hiệu lực 347 biến nhiễm trong Perl 349 Sử dụng biểu thức thường xuyên cho kiểm tra đầu vào 350 Hãy cẩn thận của những gì bạn Tìm-Bạn Muốn Nói để chứng thực? 352 Regular Expressions và Unicode 353 A Regular Expression Rosetta Stone 358 biểu hiện thường xuyên trong Perl 358 biểu hiện thường xuyên trong Managed Mã 359 biểu hiện thường xuyên trong Script 360 biểu hiện thường xuyên trong C ++ 360 A thực hành tốt nhất mà không sử dụng thường xuyên Expressions 361 Tóm tắt 362 11 Canonical Đại diện vấn đề 363 Liệu những gì Canonical Mean, và Tại sao là một vấn đề? 364 Canonical vấn đề Filename 364 Bỏ qua Napster Tên Filtering 364 Lỗ hổng trong Apple Mac OS X và Apache 365 DOS Device Names Vulnerability 365 Sun Microsystems StarOffice / tmp mục Symbolic Link Vulnerability 366 Common của Windows Canonical Filename sai lầm 367 Canonical Web-Based vấn đề 373 Bỏ qua AOL Parental Controls 373 Bỏ qua an eEye Kiểm tra 374 Zones và Internet Explorer 4 "Dotless-IP Address" Bug 374 Internet Information Server 4.0 :: $ DỮ LIỆU Vulnerability 375 Khi là một dòng Really Hai dòng? 377 Yet Another Web Issue-Escaping 378 tương đương tấn công thị giác và các Homograph tấn công 382 Ngăn chặn sai lầm Canonicalization 383 Không Kiếm Quyết Dựa trên Names 383 Sử dụng một biểu hiện thường xuyên để Restrict gì cho phép trong một danh 383 Dừng 8.3 Filename thế hệ 385 Do not Trust các tên PATH-Sử dụng Full Path 385 Tại
đang được dịch, vui lòng đợi..