این دوره تکنیک هایی را برای افزایش امنیت نرم افزار آموزش می دهد. در این آموزش تصویری نحوه تجزیه و تحلیل کد های استاتیک و دینامیک ، آشنایی با الگوهای امنیتی ، کار با برنامه نویسی امن و نحوه اعتبار سنجی داده های ورودی را می آموزید. در ادامه کار با انواع مختلف تهدیدات امنیتی ، اجتناب از سرریزی بافر ، تامین امنیت داده های حساس و تست نرم افزار را نیز خواهید آموخت.
این دوره آموزشی محصول موسسه Lynda است.

سرفصل های دوره:

  • آشنایی با نرم افزارهای امنیتی
  • امنیت نرم افزار چیست؟
  • اهمیت امنیت نرم افزار
  • آشنایی با واژگان امنیتی
  • مدیریت ریسک های امنیتی
  • منابع امنیتی نرم افزار
  • تهدید نرم افزار امنیتی
  • افزایش سطح سخت افزار
  • امنیت در معماری نرم افزار
  • مقدمه ای بر طراحی
  • تاکتیک های امنیتی
  • ساخت الگوهای امنیتی
  • مقابله با آسیب پذیری های امنیتی
  • تجزیه و تحلیل معماری
  • تحلیل معماری تاکتیک گرا
  • تحلیل معماری-آسیب پذیری
  • کار با برنامه نویسی امن
  • مقدمه ای بر امنیت برنامه نویسی
  • نحوه تست امنیت
  • تجزیه و تحلیل استاتیک
  • تجزیه و تحلیل دینامیکی
  • نحوه تست نفوذ
  • مدیریت vulnerabilty
  • و…

عنوان دوره: Lynda Techniques for Developing Secure Software
سطح: متوسط
مدت زمان: 1 ساعت و 1 دقیقه
نویسنده: Jungwoo Ryoo


Lynda Techniques for Developing Secure Software

Jungwoo Ryoo
1h 1m

Software developers are constantly told to use secure coding practices. Luckily, with today's tools, secure code doesn't take a lot of time or effort. There are security frameworks (authentication, authorization, etc.) developers can use as their own. There are also static and dynamic code analysis tools to test code. Plus, with security patterns that can be implemented at the design level'before coding ever begins'you can make sure you're not reinventing the wheel.
Jungwoo Ryoo is a faculty member teaching cybersecurity and information technology at Penn State. In this course, he'll introduce secure software development tools and frameworks and teach secure coding practices such as input validation, separation of concerns, and single access point. He'll also show how to recognize different kinds of security threats and fortify your code. Plus, he'll help you put a system in place to test your software for any overlooked vulnerabilities.
Topics include:
What is software security?
Analyzing different kinds of security threats
Designing secure software by adopting patterns and addressing vulnerabilities
Avoiding buffer overflows
Countering insecure direct object references
Securing sensitive data
Testing software security

1. Understanding Software Security
6m 38s
What is software security?
Significance of software security
1m 55s
Software security vocabulary
Software security risk management
1m 21s
Software security resources
1m 27s
2. Software Security Threats
9m 38s
Hardware-level threats
1m 34s
Code-level threats
1m 30s
Detailed design-level threats
1m 50s
Architectural-level threats
1m 42s
Requirements-level threats
1m 39s
Threat modeling and tools
1m 23s
3. Secure Software Design
17m 4s
Introduction to secure design
1m 31s
Security tactics
1m 21s
Security patterns
1m 38s
Security vulnerabilities
2m 1s
Architectural analysis for security
2m 0s
Case study: Setting the Stage
Case study: Tactic-Oriented Architectural Analysis
1m 36s
Case study: Pattern-Oriented Architectural Analysis
2m 33s
Case study: Vulnerability-Oriented Architectural Analysis
1m 44s
Software security anti-patterns
2m 7s
4. Secure Coding
15m 2s
Introduction to secure coding
1m 8s
Buffer overflow attacks
1m 41s
Buffer overflow countermeasures
1m 44s
Broken authentication and session management
1m 7s
Broken authentication and session management countermeasures
2m 1s
Insecure direct object references
1m 24s
Insecure direct object references countermeasures
Sensitive information exposure
1m 6s
Sensitive data exposure countermeasures
1m 37s
Other secure coding best practices
2m 22s
5. Testing for Security
11m 23s
Testing for security
1m 4s
Static analysis
1m 41s
Exploring tools for static analysis
1m 42s
Dynamic analysis
1m 37s
Exploring tools for dynamic analysis
1m 13s
Penetration testing
1m 33s
Exploring tools for penetration testing
Vulnerability management
1m 42s
Exploring tools for vulnerabilty management
Next steps