logo

CardDev

مسیر یادگیری
logo

CardDev

کتاب امنیت برنامه‌های وب، ویرایش دوم

0 فلش‌کارت
0 گالری‌کارت
0 صوت
0 پرامپت
0 واژه‌نامه

در ویرایش اول این کتاب تحسین‌شده، اندرو هافمن سه ستون اصلی امنیت برنامه‌های کاربردی را تعریف کرد: شناسایی (reconnaissance)، حمله (offense) و دفاع (defense). در این ویرایش دوم بازبینی‌شده و به‌روزرسانی‌شده، او ده‌ها موضوع مرتبط را بررسی می‌کند، از جدیدترین انواع حملات و روش‌های کاهش خطر تا مدل‌سازی تهدید، چرخه عمر توسعه نرم‌افزار امن (SSDL/SDLC) و موارد دیگر. هافمن، مهندس ارشد امنیت در ریپل، همچنین اطلاعاتی در مورد اکسپلویت‌ها و روش‌های کاهش خطر برای چندین فناوری اضافی برنامه‌های وب مانند GraphQL، استقرار‌های مبتنی بر ابر، شبکه‌های تحویل محتوا (CDN) و رندرینگ سمت سرور (SSR) ارائه می‌دهد. این ویرایش دوم، با پیروی از برنامه درسی کتاب اول، به سه ستون متمایز تقسیم شده است که شامل سه مجموعه مهارت جداگانه است: ستون ۱: شناسایی – تکنیک‌های نقشه‌برداری و مستندسازی برنامه‌های وب از راه دور را بیاموزید، از جمله رویه‌ها برای کار با برنامه‌های وب. ستون ۲: حمله – روش‌های حمله به برنامه‌های وب را با استفاده از تعدادی اکسپلویت بسیار مؤثر که توسط بهترین هکرها در جهان اثبات شده‌اند، کاوش کنید. این مهارت‌ها در کنار مهارت‌های ستون ۳ ارزشمند هستند. ستون ۳: دفاع – بر اساس مهارت‌های کسب‌شده در دو بخش اول، روش‌های کاهش خطر مؤثر و طولانی‌مدت را برای هر یک از حملات توصیف‌شده در ستون ۲ بسازید.

اشتراکی

book cover
O’Reilly
0 فلش‌کارت
0 گالری‌کارت
0 صوت
0 پرامپت
0 واژه‌نامه
جزئیاتمقدمهفصل‌هانسخه‌ها

فصل های کتاب

با مرور فصل‌ها، ساختار ، محتوای کتاب را به سرعت بشناسید.

با مرور فصل‌های این کتاب می‌تونی خیلی سریع بفهمی هر بخش چی یاد میده، ساختار کلی چطوره و از کجا باید شروع کنی. هر فصل روی یک مفهوم یا مهارت خاص تمرکز داره و موضوعات اصلیش رو می‌بینی تا انتخابت آگاهانه‌تر باشه. چه بخوای کل کتاب رو دنبال کنی، چه فقط یک بخش خاص رو دنبال کنی، این نما کمکت می‌کنه مسیرت رو پیدا کنی.

book cover

تاریخچه امنیت نرم‌افزار

The Origins of Hacking • The Enigma Machine, Circa 1930 • Automated Enigma Code Cracking, Circa 1940 • Telephone “Phreaking,” Circa 1950 • Anti-Phreaking Technology, Circa 1960 • The Origins of Computer Hacking, Circa 1980 • The Rise of the World Wide Web, Circa 2000 • Hackers in the Modern Era, Circa 2015+ • Summary

فصل 1

درحال تولید...

شناسایی

به جای یک نمای کلی فنی، که می‌توانید آن را در چندین جای کتاب امنیت برنامه‌های وب بیابید، این بخش از کتاب را با یک نمای کلی فلسفی آغاز می‌کنم.

برای بهره‌برداری مؤثر از برنامه‌های وب، طیف گسترده‌ای از مهارت‌ها مورد نیاز است. از یک سو، یک هکر به دانش پروتکل‌های شبکه، تکنیک‌های توسعه نرم‌افزار و آسیب‌پذیری‌های رایج موجود در انواع مختلف برنامه‌ها نیاز دارد. اما از سوی دیگر، هکر باید برنامه‌ای را که هدف قرار داده است نیز درک کند. هرچه این دانش عمیق‌تر باشد، بهتر و کاربردی‌تر خواهد بود.

هکر باید هدف برنامه را از منظر عملکردی درک کند. کاربران آن چه کسانی هستند؟ برنامه چگونه درآمدزایی می‌کند؟ کاربران به چه دلیلی این برنامه را به رقبا ترجیح می‌دهند؟ رقبا چه کسانی هستند؟ چه قابلیت‌هایی در برنامه یافت می‌شود؟

بدون درک عمیق از برنامه هدف از منظر غیرفنی، در واقع دشوار است که تعیین کنیم چه داده‌ها و قابلیت‌هایی اهمیت دارند. به عنوان مثال، یک برنامه وب که برای فروش خودرو استفاده می‌شود، ممکن است ذخیره‌سازی اشیائی که نماینده خودروهای فروشی هستند (قیمت، موجودی و غیره) را داده‌ای حیاتی در نظر بگیرد. اما یک وب‌سایت سرگرمی که علاقه‌مندان به خودرو می‌توانند تغییرات انجام شده روی خودروهای خود را پست و به اشتراک بگذارند، ممکن است حساب‌های کاربری را ارزشمندتر از موجودی فهرست شده در پروفایل کاربر بداند.

همین امر در مورد قابلیت‌ها نیز صادق است، نه فقط داده‌ها. بسیاری از برنامه‌های وب ...

book cover

مقدمه‌ای بر شناسایی برنامه‌های وب

Information Gathering • Web Application Mapping • Summary

فصل 2

درحال تولید...

book cover

ساختار یک برنامه وب مدرن

Modern Versus Legacy Web Applications • REST APIs • JavaScript Object Notation • JavaScript • Variables and Scope • Functions • Context • Prototypal Inheritance • Asynchrony • Browser DOM • SPA Frameworks • Authentication and Authorization Systems • Authentication • Authorization • Web Servers • Server-Side Databases • Client-Side Data Stores • GraphQL • Version Control Systems • CDN/Cache • Summary

فصل 3

درحال تولید...

book cover

یافتن زیردامنه‌ها

Multiple Applications per Domain • The Browser’s Built-In Network Analysis Tools • Taking Advantage of Public Records • Search Engine Caches • Accidental Archives • Social Snapshots • Zone Transfer Attacks • Brute Forcing Subdomains • Dictionary Attacks • Summary

فصل 4

درحال تولید...

book cover

تحلیل API

Endpoint Discovery • Authentication Mechanisms • Endpoint Shapes • Common Shapes • Application-Specific Shapes • Summary

فصل 5

درحال تولید...

book cover

شناسایی وابستگی‌های شخص ثالث

Detecting Client-Side Frameworks • Detecting SPA Frameworks • Detecting JavaScript Libraries • Detecting CSS Libraries • Detecting Server-Side Frameworks • Header Detection • Default Error Messages and 404 Pages • Database Detection • Summary

فصل 6

درحال تولید...

book cover

شناسایی نقاط ضعف در معماری برنامه

Secure Versus Insecure Architecture Signals • Multiple Layers of Security • Adoption and Reinvention • Summary

فصل 7

درحال تولید...

book cover

خلاصه بخش اول

فصل 8

درحال تولید...

حمله

در بخش اول این کتاب، ما تعدادی روش برای بررسی و مستندسازی ساختار و عملکرد یک برنامه وب را کاوش کردیم. ما روش‌های یافتن APIها روی یک سرور را ارزیابی کردیم، از جمله آنهایی که روی زیردامنه‌ها به جای فقط دامنه سطح بالا وجود دارند. ما روش‌های شمارش نقاط پایانی (endpoints) که این APIها ارائه می‌دهند و افعال HTTP که می‌پذیرند را بررسی کردیم.

پس از ساختن نقشه‌ای از زیردامنه‌ها، APIها و افعال HTTP، به بررسی روش‌هایی برای تعیین نوع درخواست و پاسخ‌هایی که توسط هر نقطه پایانی پذیرفته می‌شوند، پرداختیم. ما این موضوع را از یک زاویه عمومی و همچنین با بررسی روش‌های یافتن مشخصات باز که ما را سریع‌تر به ساختار بار داده (payload) هدایت می‌کنند، مورد بررسی قرار دادیم.

پس از بررسی روش‌های نقشه‌برداری از ساختار API یک برنامه، گفتگویی را در مورد وابستگی‌های شخص ثالث آغاز کردیم و روش‌های مختلفی برای شناسایی ادغام‌های شخص ثالث در یک برنامه شخص اول را ارزیابی کردیم. از این بررسی، یاد گرفتیم که چگونه فریم‌ورک‌های SPA، پایگاه‌های داده و وب‌سرورها را شناسایی کنیم و تکنیک‌های عمومی (مانند اثرانگشت‌گذاری) را برای شناسایی نسخه‌های سایر وابستگی‌ها آموختیم.

در نهایت، گفتگوی خود در مورد شناسایی را با بحث در مورد نقص‌های معماری که می‌تواند منجر به عملکرد ضعیف محافظت‌شده شود، به پایان رساندیم. با ارزیابی چند شکل رایج از معماری ناامن برنامه‌های وب، بینشی در مورد خطراتی که برنامه‌های وب با توسعه عجولانه با آن مواجه هستند، به دست آوردیم.

اکنون در بخش دوم، شروع به یادگیری تکنیک‌های رایج مورد استفاده توسط ...

book cover

مقدمه‌ای بر هک برنامه‌های وب

The Hacker’s Mindset • Applied Recon

فصل 9

درحال تولید...

book cover

اسکریپت‌نویسی بین‌سایتی

XSS Discovery and Exploitation • Stored XSS • Reflected XSS • DOM-Based XSS • Mutation-Based XSS • Bypassing Filters • Self-Closing HTML Tags • Protocol-Relative URLs • Malformed Tags • Encoding Escapes • Polyglot Payloads • XSS Sinks and Sources • Summary

فصل 10

درحال تولید...

book cover

جعل درخواست بین‌سایتی

Query Parameter Tampering • Alternate GET Payloads • CSRF Against POST Endpoints • Bypassing CSRF Defenses • Header Validation • Token Pools • Weak Tokens • Content Types • Regex Filter Bypasses • Iframe Payloads • AJAX Payloads • Zero Interaction Forms • Summary

فصل 11

درحال تولید...

book cover

موجودیت خارجی XML

XXE Fundamentals • Direct XXE • Indirect XXE • Out-of-Band Data Exfiltration • Account Takeover Workflow • Obtaining System User Data • Obtaining Password Hashes • Cracking Password Hashes • SSH Remote Login • Summary

فصل 12

درحال تولید...

book cover

تزریق

SQL Injection • Code Injection • Command Injection • Injection Data Exfiltration Techniques • Data Exfiltration Fundamentals • In-Band Data Exfiltration • Out-of-Band Data Exfiltration • Inferential Data Exfiltration • Bypassing Common Defenses • Summary

فصل 13

درحال تولید...

book cover

حمله محروم‌سازی از سرویس

Regex DoS • Logical DoS Vulnerabilities • Distributed DoS • Advanced DoS • YoYo Attacks • Compression Attacks • Proxy-Based DoS • Summary

فصل 14

درحال تولید...

book cover

حمله به داده‌ها و اشیاء

Mass Assignment • Insecure Direct Object Reference • Serialization Attacks • Web Serialization Explained • Attacking Weak Serialization • Summary

فصل 15

درحال تولید...

book cover

حملات سمت کلاینت

Methods of Attacking a Browser Client • Client-Targeted Attacks • Client-Specific Attacks • Advantages of Client-Side Attacks • Prototype Pollution Attacks • Understanding Prototype Pollution • Attacking with Prototype Pollution • Prototype Pollution Archetypes • Clickjacking Attacks • Camera and Microphone Exploit • Creating Clickjacking Exploits • Tabnabbing and Reverse Tabnabbing • Traditional Tabnabbing • Reverse Tabnabbing • Summary

فصل 16

درحال تولید...

book cover

بهره‌برداری از وابستگی‌های شخص ثالث

Methods of Integration • Branches and Forks • Self-Hosted Application Integrations • Source Code Integration • Package Managers • JavaScript • Java • Other Languages • Common Vulnerabilities and Exposures Database • Summary

فصل 17

درحال تولید...

book cover

آسیب‌پذیری‌های منطق کسب‌وکار

Custom Math Vulnerabilities • Programmed Side Effects • Quasi-Cash Attacks • Vulnerable Standards and Conventions • Exploiting Business Logic Vulnerabilities • Summary

فصل 18

درحال تولید...

book cover

خلاصه بخش دوم

فصل 19

درحال تولید...

دفاع

این بخش پایانی کتاب امنیت برنامه‌های وب است. با تکیه بر بخش‌های اول و دوم، به طور عمیق تحلیل خواهیم کرد که چه چیزهایی در ساخت یک برنامه وب مدرن و فول استک نقش دارند. در هر نقطه از تحلیل خود، خطرات و نگرانی‌های امنیتی قابل توجهی را در نظر خواهیم گرفت. پس از بررسی نگرانی‌هایمان، پیاده‌سازی‌های جایگزین و همچنین روش‌های کاهش خطری که ریسک امنیتی را کاهش می‌دهند، ارزیابی خواهیم کرد.

در طول این فرآیند، شما تکنیک‌هایی را خواهید آموخت که می‌توانید آنها را در چرخه عمر توسعه نرم‌افزار خود ادغام کنید تا آسیب‌پذیری‌های موجود در کد تولیدی خود را کاهش دهید. این تکنیک‌ها از معماری امن به صورت پیش‌فرض برنامه، تا اجتناب از الگوهای ضد امنیتی، و تا تکنیک صحیح بازبینی کد با رویکرد امنیتی و اقدامات متقابل برای انواع خاصی از اکسپلویت‌ها را شامل می‌شوند.

در پایان بخش سوم، شما پایه قوی در شناسایی برنامه‌های وب، تکنیک‌های تست نفوذ تهاجمی و توسعه نرم‌افزار امن خواهید داشت. در آن مرحله، شما را تشویق می‌کنم که نکات مورد علاقه خود را در دو بخش اول (اما با زمینه اضافی) دوباره بخوانید یا به کارگیری مهارت‌های جدید خود در دنیای واقعی بپردازید.

بیایید ادامه دهیم و شروع به یادگیری در مورد امنیت نرم‌افزار و مهارت‌های مورد نیاز برای ساخت برنامه‌های وب مقاوم در برابر هکرها کنیم.

book cover

ایمن‌سازی برنامه‌های وب مدرن

Defensive Software Architecture • Comprehensive Code Reviews • Vulnerability Discovery • Vulnerability Analysis • Vulnerability Management • Regression Testing • Mitigation Strategies • Applied Recon and Offense Techniques • Summary

فصل 20

درحال تولید...

book cover

معماری امن برنامه

Analyzing Feature Requirements • Authentication and Authorization • Secure Sockets Layer and Transport Layer Security • Secure Credentials • Hashing Credentials • MFA • PII and Financial Data • Search Engines • Zero Trust Architecture • The History of Zero Trust • Implicit Versus Explicit Trust • Authentication and Authorization • Summary

فصل 21

درحال تولید...

book cover

پیکربندی امن برنامه

Content Security Policy • Implementing CSP • CSP Structure • Important Directives • CSP Sources and Source Lists • Strict CSP • Example Secure CSP Policy • Cross-Origin Resource Sharing • Types of CORS Requests • Simple CORS Requests • Preflighted CORS Requests • Implementing CORS • Headers • Strict Transport Security • Cross-Origin-Opener Policy (COOP) • Cross-Origin-Resource-Policy (CORP) • Headers with Security Implications • Legacy Security Headers • Cookies • Creating and Securing Cookies • Testing Cookies • Framing and Sandboxing • Traditional Iframe • Web Workers • Subresource Integrity • Shadow Realms • Summary

فصل 22

درحال تولید...

book cover

تجربه کاربری امن

Information Disclosures and Enumeration • Information Disclosures • Enumeration • Secure User Experience Best Practices • Summary

فصل 23

درحال تولید...

book cover

مدل‌سازی تهدید برنامه‌ها

Designing an Effective Threat Model • Threat Modeling by Example • Logic Design • Technical Design • Threat Identification (Threat Actors) • Threat Identification (Attack Vectors) • Identifying Mitigations • Delta Identification • Summary

فصل 24

درحال تولید...

book cover

بازبینی کد برای امنیت

How to Start a Code Review • Archetypical Vulnerabilities Versus Business Logic Vulnerabilities • Where to Start a Security Review • Secure-Coding Anti-Patterns • Blocklists • Boilerplate Code • Trust-by-Default • Client/Server Separation • Summary

فصل 25

درحال تولید...

book cover

کشف آسیب‌پذیری

Security Automation • Static Analysis • Dynamic Analysis • Vulnerability Regression Testing • Responsible Disclosure Programs • Bug Bounty Programs • Third-Party Penetration Testing • Summary

فصل 26

درحال تولید...

book cover

مدیریت آسیب‌پذیری

Reproducing Vulnerabilities • Ranking Vulnerability Severity • Common Vulnerability Scoring System • CVSS: Base Scoring • CVSS: Temporal Scoring • CVSS: Environmental Scoring • Advanced Vulnerability Scoring • Beyond Triage and Scoring • Summary

فصل 27

درحال تولید...

book cover

دفاع در برابر حملات XSS

Anti-XSS Coding Best Practices • Sanitizing User Input • DOMParser Sink • SVG Sink • Blob Sink • Sanitizing Hyperlinks • HTML Entity Encoding • CSS XSS • Content Security Policy for XSS Prevention • Script Source • Unsafe Eval and Unsafe Inline • Implementing a CSP • Summary

فصل 28

درحال تولید...

book cover

دفاع در برابر حملات CSRF

Header Verification • CSRF Tokens • Anti-CRSF Coding Best Practices • Stateless GET Requests • Application-Wide CSRF Mitigation • Summary

فصل 29

درحال تولید...

book cover

دفاع در برابر XXE

Evaluating Other Data Formats • Advanced XXE Risks • Summary

فصل 30

درحال تولید...

book cover

دفاع در برابر تزریق

Mitigating SQL Injection • Detecting SQL Injection • Prepared Statements • Database-Specific Defenses • Generic Injection Defenses • Potential Injection Targets • Principle of Least Authority • Allowlisting Commands • Summary

فصل 31

درحال تولید...

book cover

دفاع در برابر حملات DoS

Protecting Against Regex DoS • Protecting Against Logical DoS • Protecting Against DDoS • Summary

فصل 32

درحال تولید...

book cover

دفاع از داده‌ها و اشیاء

Defending Against Mass Assignment • Validation and Allowlisting • Data Transfer Objects • Defending Against IDOR • Defending Against Serialization Attacks • Summary

فصل 33

درحال تولید...

book cover

دفاع در برابر حملات سمت کلاینت

Defending Against Prototype Pollution • Key Sanitization • Prototype Freezing • Null Prototypes • Defending Against Clickjacking • Frame Ancestors • Framebusting • Defending Against Tabnabbing • Cross-Origin-Opener Policy • Link Blockers • Isolation Policies • Summary

فصل 34

درحال تولید...

book cover

ایمن‌سازی وابستگی‌های شخص ثالث

Evaluating Dependency Trees • Modeling a Dependency Tree • Dependency Trees in the Real World • Automated Evaluation • Secure Integration Techniques • Separation of Concerns • Secure Package Management • Summary

فصل 35

درحال تولید...

book cover

کاهش آسیب‌پذیری‌های منطق کسب‌وکار

Architecture-Level Mitigations • Statistical Modeling • Modeling Inputs • Modeling Actions • Model Development • Model Analysis • Summary

فصل 36

درحال تولید...

book cover

خلاصه بخش سوم

فصل 37

درحال تولید...

خانهدسته‌بندیکتابخانهکتاب‌منپروفایل
انتشار کتاب

37 فصل در حال تولید

آخرین بروزرسانی
۲ مهر ۱۴۰۵
امتیاز
5.0
پیش نیاز
ندارد

مدت زمان خوانش

11:10

نوع کتاب

اشتراکی

شرکت کنندگان

0 نفر

تولید کتاب

۲ مهر ۱۴۰۵

درباره ما

قوانین و سوالات

کتاب‌های نرم افزار خوندنش چه نسخه اصلی و چه ترجمه شده میتونه برامون چالش برانگیز و سخت باشه. یا شاید اصلا حوصله نکنی این همه وقت و انرژی بزاری برای کتاب ، ما هستیم تا تو بتونی کتاب های مطرح و مهم دنیای نرم افزار رو بیشتر از پیش و با انگیزه بیشتر و کیفیت بهتر مطاله کنی و یادش بگیری.
CardDev قدمی کوچک برای یک تیم و قدمی بزرگ برای جامعه بزرگ مهندسین نرم‌افزار و برنامه نویسان!

ارتباط با ما

ایمیل

info@aiflashcard.dev

شبکه های اجتماعی

CardDev
CardDev

نصب اپ CardDev

دسترسی سریع‌تر از هوم‌اسکرین

کلیه حقوق مادی و معنوی برای سایت CardDev محفوظ است.

Built pixel by pixel by Khadem

Khadem Al Mahdi

Built pixel by pixel by