EC-Council Certified Secure Programmer
EC-Council Certified Secure Programmer EC-Council Certified Secure Programmer
Page 44• The Bind System Call• The Listen System Call• The Accept System Callo The Accept System Call: Sample Code• The dup2 System Calls• The execve System Call• Linux Port Binding Shellcode• Compile, Print, and Test Shellcode• Reverse Connection Shellcode• Socket Reusing Shellcode• Linux Implementation of Socket Reusing Shellcode• Reusing File Descriptors• Using the setuid Rooto Executing the setuid Programo System calls used by the setuid Root program• Using ltrace utility• Using GDB• Assembly Implementation• SysCall Trace• RW Shellcode• Encoding Shellcode• Decoder Implementation and Analysis• Decoder Implementation Program• Results of Implementation Program• OS-Spanning Shellcode• Assembly CreationModule 27: Writing Exploitshttp://www.eccouncil.orgEC-Council
• Introduction• Targeting Vulnerabilities• Remote and Local Exploits• A Two-Stage Exploit• Format String Attackso Example of a Vulnerable Program• Using %n Character• Fixing Format String Bugs• User-Supplied Format String Vulnerability CVE-2000-0763 in xlockmore• TCP/IP Vulnerabilities• Race Conditions• File Race Conditions• Signal Race Conditions• Input Validation Error in man Program• Input Validation Error in man Program (Snippet 1)• Input Validation Error in man Program (Snippet 2)• Writing Exploits and Vulnerability Checking Programso Writing Exploits and Vulnerability Checking Programs Sample Code• Stack Overflow Exploits• Memory Organization• Stack Overflows• Finding Exploitable Stack Overflows in Open-Source Software• Finding Exploitable Stack Overflows in Closed-Source Software• Heap Corruption Exploits• Doug Lea Malloc• Dlmalloc Chunk• Freed Dlmalloc Chunk• Vulnerable Program ExamplePage 45http://www.eccouncil.orgEC-Council
- Page 1 and 2: Page 1EC-Council CertifiedSecure Pr
- Page 3: Course DescriptionEC-Council Certif
- Page 8 and 9: • Microsoft SDL Threat Modeling T
- Page 11 and 12: • Countermeasure against Buffer O
- Page 13 and 14: • Using Variable Arguments Proper
- Page 15 and 16: o Code for GSS Client• Java Serve
- Page 17 and 18: • .NET Frameworko .NET Framework
- Page 19: o Design Considerationso Applicatio
- Page 22 and 23: Page 22o Web Application Fingerprin
- Page 24 and 25: Page 24• SQL Server Security Mode
- Page 26 and 27: Page 26• SQL Server 2005o Step 1:
- Page 28 and 29: Page 28• Application Configuratio
- Page 30 and 31: Page 30• Preventing Automatic Sub
- Page 32 and 33: • Validation Process in XML• XM
- Page 34 and 35: • Preventing Repurposing• SiteL
- Page 36 and 37: Page 36• Authorization Controls
- Page 38 and 39: Page 38Module 22: Secure Xcode Prog
- Page 40 and 41: Page 40• Obfuscation Sample Code
- Page 42 and 43: Page 42• Starting a Winsock 2 API
- Page 46 and 47: Page 46• Figures: Fake Chunk, Ove
- Page 48 and 49: Page 48• The wiretap Library• A
- Page 50 and 51: Page 50• Security and Trust Servi
- Page 52 and 53: Page 52• SSL Certificates• Veri
- Page 54 and 55: • Avoiding unvalidated redirects
Page 44• The Bind System Call• The Listen System Call• The Accept System Callo The Accept System Call: Sample Code• The dup2 System Calls• The execve System Call• Linux Port Binding Shellcode• Compile, Print, and Test Shellcode• Reverse Connection Shellcode• Socket Reusing Shellcode• Linux Implementation of Socket Reusing Shellcode• Reusing File Descriptors• Using the setuid Rooto Executing the setuid Programo System calls used by the setuid Root program• Using ltrace utility• Using GDB• Assembly Implementation• SysCall Trace• RW Shellcode• Encoding Shellcode• Decoder Implementation and Analysis• Decoder Implementation Program• Results of Implementation Program• OS-Spanning Shellcode• Assembly CreationModule 27: Writing Exploitshttp://www.eccouncil.org<strong>EC</strong>-<strong>Council</strong>