Sockets, Shellcode, Porting, and Coding: Reverse Engineering Exploits and Tool Coding for Security Professionals

Book description

The book is logically divided into 5 main categories with each category representing a major skill set required by most security professionals:

1. Coding – The ability to program and script is quickly becoming a mainstream requirement for just about everyone in the security industry. This section covers the basics in coding complemented with a slue of programming tips and tricks in C/C++, Java, Perl and NASL.

2. Sockets – The technology that allows programs and scripts to communicate over a network is sockets. Even though the theory remains the same – communication over TCP and UDP, sockets are implemented differently in nearly ever language.

3. Shellcode – Shellcode, commonly defined as bytecode converted from Assembly, is utilized to execute commands on remote systems via direct memory access.

4. Porting – Due to the differences between operating platforms and language implementations on those platforms, it is a common practice to modify an original body of code to work on a different platforms. This technique is known as porting and is incredible useful in the real world environments since it allows you to not “recreate the wheel.”

5. Coding Tools – The culmination of the previous four sections, coding tools brings all of the techniques that you have learned to the forefront. With the background technologies and techniques you will now be able to code quick utilities that will not only make you more productive, they will arm you with an extremely valuable skill that will remain with you as long as you make the proper time and effort dedications.

*Contains never before seen chapters on writing and automating exploits on windows systems with all-new exploits.

*Perform zero-day exploit forensics by reverse engineering malicious code.

*Provides working code and scripts in all of the most common programming languages for readers to use TODAY to defend their networks.

Table of contents

  1. Cover (1/3)
  2. Cover (2/3)
  3. Cover (3/3)
  4. Contents (1/3)
  5. Contents (2/3)
  6. Contents (3/3)
  7. Foreword
  8. Security Coding (1/13)
  9. Security Coding (2/13)
  10. Security Coding (3/13)
  11. Security Coding (4/13)
  12. Security Coding (5/13)
  13. Security Coding (6/13)
  14. Security Coding (7/13)
  15. Security Coding (8/13)
  16. Security Coding (9/13)
  17. Security Coding (10/13)
  18. Security Coding (11/13)
  19. Security Coding (12/13)
  20. Security Coding (13/13)
  21. NASL Scripting (1/7)
  22. NASL Scripting (2/7)
  23. NASL Scripting (3/7)
  24. NASL Scripting (4/7)
  25. NASL Scripting (5/7)
  26. NASL Scripting (6/7)
  27. NASL Scripting (7/7)
  28. BSD Sockets (1/10)
  29. BSD Sockets (2/10)
  30. BSD Sockets (3/10)
  31. BSD Sockets (4/10)
  32. BSD Sockets (5/10)
  33. BSD Sockets (6/10)
  34. BSD Sockets (7/10)
  35. BSD Sockets (8/10)
  36. BSD Sockets (9/10)
  37. BSD Sockets (10/10)
  38. Windows Sockets (Winsock) (1/7)
  39. Windows Sockets (Winsock) (2/7)
  40. Windows Sockets (Winsock) (3/7)
  41. Windows Sockets (Winsock) (4/7)
  42. Windows Sockets (Winsock) (5/7)
  43. Windows Sockets (Winsock) (6/7)
  44. Windows Sockets (Winsock) (7/7)
  45. Java Sockets (1/9)
  46. Java Sockets (2/9)
  47. Java Sockets (3/9)
  48. Java Sockets (4/9)
  49. Java Sockets (5/9)
  50. Java Sockets (6/9)
  51. Java Sockets (7/9)
  52. Java Sockets (8/9)
  53. Java Sockets (9/9)
  54. Writing Portable Code (1/11)
  55. Writing Portable Code (2/11)
  56. Writing Portable Code (3/11)
  57. Writing Portable Code (4/11)
  58. Writing Portable Code (5/11)
  59. Writing Portable Code (6/11)
  60. Writing Portable Code (7/11)
  61. Writing Portable Code (8/11)
  62. Writing Portable Code (9/11)
  63. Writing Portable Code (10/11)
  64. Writing Portable Code (11/11)
  65. Portable Network Programming (1/12)
  66. Portable Network Programming (2/12)
  67. Portable Network Programming (3/12)
  68. Portable Network Programming (4/12)
  69. Portable Network Programming (5/12)
  70. Portable Network Programming (6/12)
  71. Portable Network Programming (7/12)
  72. Portable Network Programming (8/12)
  73. Portable Network Programming (9/12)
  74. Portable Network Programming (10/12)
  75. Portable Network Programming (11/12)
  76. Portable Network Programming (12/12)
  77. Writing Shellcode I (1/7)
  78. Writing Shellcode I (2/7)
  79. Writing Shellcode I (3/7)
  80. Writing Shellcode I (4/7)
  81. Writing Shellcode I (5/7)
  82. Writing Shellcode I (6/7)
  83. Writing Shellcode I (7/7)
  84. Writing Shellcode II (1/12)
  85. Writing Shellcode II (2/12)
  86. Writing Shellcode II (3/12)
  87. Writing Shellcode II (4/12)
  88. Writing Shellcode II (5/12)
  89. Writing Shellcode II (6/12)
  90. Writing Shellcode II (7/12)
  91. Writing Shellcode II (8/12)
  92. Writing Shellcode II (9/12)
  93. Writing Shellcode II (10/12)
  94. Writing Shellcode II (11/12)
  95. Writing Shellcode II (12/12)
  96. Writing Exploits I (1/4)
  97. Writing Exploits I (2/4)
  98. Writing Exploits I (3/4)
  99. Writing Exploits I (4/4)
  100. Writing Exploits II (1/11)
  101. Writing Exploits II (2/11)
  102. Writing Exploits II (3/11)
  103. Writing Exploits II (4/11)
  104. Writing Exploits II (5/11)
  105. Writing Exploits II (6/11)
  106. Writing Exploits II (7/11)
  107. Writing Exploits II (8/11)
  108. Writing Exploits II (9/11)
  109. Writing Exploits II (10/11)
  110. Writing Exploits II (11/11)
  111. Writing Exploits III (1/10)
  112. Writing Exploits III (2/10)
  113. Writing Exploits III (3/10)
  114. Writing Exploits III (4/10)
  115. Writing Exploits III (5/10)
  116. Writing Exploits III (6/10)
  117. Writing Exploits III (7/10)
  118. Writing Exploits III (8/10)
  119. Writing Exploits III (9/10)
  120. Writing Exploits III (10/10)
  121. Writing Security Components (1/11)
  122. Writing Security Components (2/11)
  123. Writing Security Components (3/11)
  124. Writing Security Components (4/11)
  125. Writing Security Components (5/11)
  126. Writing Security Components (6/11)
  127. Writing Security Components (7/11)
  128. Writing Security Components (8/11)
  129. Writing Security Components (9/11)
  130. Writing Security Components (10/11)
  131. Writing Security Components (11/11)
  132. Creating a Web Security Tool (1/7)
  133. Creating a Web Security Tool (2/7)
  134. Creating a Web Security Tool (3/7)
  135. Creating a Web Security Tool (4/7)
  136. Creating a Web Security Tool (5/7)
  137. Creating a Web Security Tool (6/7)
  138. Creating a Web Security Tool (7/7)
  139. Glossary (1/2)
  140. Glossary (2/2)
  141. Security Tool Compendium (1/2)
  142. Security Tool Compendium (2/2)
  143. Exploit Archives
  144. Syscall Reference
  145. Data Conversion Reference (1/2)
  146. Data Conversion Reference (2/2)
  147. Index (1/3)
  148. Index (2/3)
  149. Index (3/3)
  150. Related Titles

Product information

  • Title: Sockets, Shellcode, Porting, and Coding: Reverse Engineering Exploits and Tool Coding for Security Professionals
  • Author(s): James C Foster
  • Release date: April 2005
  • Publisher(s): Syngress
  • ISBN: 9780080489728