Must-Read Books and Other References

Books on C/C++:

  • The C Programming Language by Brian W. Kernighan and Dennis M. Ritchie. Prentice Hall, 1988. The author’s description of C as defined by American National Standard Institute (ANSI), also called the “Old Testament.” It is old-fashioned but remains a must-read. This book also has
    a home page: http://cm.bell-labs.com/cm/cs/cbook/index.html.
  • 1001 Visual C++ Programming Tips, first
    edition, by Kris Jamsa. Muska & Lipman, 2001. Not the “Old Testament”, but
    very good.
  • “С++
    Annotations” by Frank B. Brokken (http://www.icce.rug.nl/documents/
    cpp.shtml
    ). This annotated manual on the C++
    programming language is
    a must-read for every self-respecting hacker.
  • “comp.lang.c Frequently Asked
    Questions” by Steve Summit (http://www.eskimo.com/~scs/C-faq/top.html) is the best.

On Assembly:

  • The Art of Assembly Language, first
    edition, by Randall Hyde. No Starch Press, 2003. One of the most highly
    recommended resources on Assembly.
  • Write Great Code: Understanding the Machine, first edition, by Randall Hyde. No Starch Press, 2004. In addition to the
    excellent language description, the book provides information concerning basic
    computer data representation, binary arithmetic and bit operations, memory
    organization and access, Boolean logic, and CPU design.
  • Manuals from Intel and AMD,
    which, by the way, are available not only for free downloading but also for
    ordering by mail (also for free).

On the operating system:

  • SDKs/DDKs from Microsoft,
    containing toolsets and accompanying documentation. You need these software
    products, so go and download them.
  • Advanced Windows, third edition, by
    Jeffrey Richter. Microsoft Press, 1997. This is a Bible of the application
    programmer.
  • Inside the Windows NT File System by
    Helen Custer. Microsoft Press, 1994. An excellent description of the Windows NT
    file system, and a must have.
  • Inside Windows NT by Helen Custer.
    Microsoft Press, 1992. A
    detailed in-depth investigation of the Windows NT 4.0 architecture and
    associated
    coding implications.
  • Microsoft Windows Internals, fourth
    edition, by David Solomon and Mark Russinovich. Microsoft Press, 2004. Written
    by two gurus of the hacker’s community, this classic book is an in-depth guide
    to the Windows kernel. The new edition covers all newest Windows versions,
    including Windows 2000, Windows XP, and Windows .NET Server 2003.
  • Undocumented Windows 2000 Secrets by
    Sven Schreiber. Addison-Wesley Professional, 2001. This book, written by a
    noted investigator of the Windows kernel internals, covers the Windows 2000
    debugging interfaces, symbol files, system memory, and kernel objects; the
    kernel’s native API; Microsoft PDB file format; and other topics.

On disassembling:

  • The Art of Disassembly from the
    Reversing-Engineering Network
    (http://www.reverse-engineering.net/). The bible of the disassembly.
  • Hacker Disassembling Uncovered by Kris
    Kaspersky. A-List Publishing, 2003.
    A hacker’s advice related to how to analyze programs
    without its source code using a debugger and a disassembler.

On hacking:

  • Phrack (http://www.phrack.org). The best e-zine available containing lots of articles, including
    the ones focusing on stack overflow.

On the buffer overflow:

  • UNIX Assembly Codes Development for Vulnerabilities Illustration Purposes (http://opensores.thebunker.net/pub/mirrors/blackhat/presentations/bh-usa-01/LSD/bh-usa-01-lsd.pdf). An excellent
    manual on the buffer overflow technique and gaining control over remote
    computers.
  • Win32 Assembly Components (http://www.lsd-pl.net/documents/winasm-1.0.1.pdf). Ready-to-use components and exploits.
  • Understanding Windows Shellcode (http://www.hick.org/code/skape/papers/win32-shellcode.pdf). Manual on shellcode development.

《黑客反汇编揭秘》(2e)推荐书单的更多相关文章

  1. 学校的统一订书80%该烧掉——IT推荐书单

    学校的统一订书80%该烧掉——IT推荐书单 作者: 夏浅音.py 中文图书个人黑名单:清华大学出版社的国产作者,例如一段错n次的谭浩强.一页错n次的严蔚敏... 中文图书个人白名单:机械工业出版社.电 ...

  2. Android 应用开发推荐书单

    本文由 伯乐在线 - zerob13 翻译自 fromdev.欢迎加入Android小组.转载请参见文章末尾处的要求. Android 已经成为了世界上最受欢迎的操作系统之一.成千上万的智能手机和平板 ...

  3. (转载)Stackoverflow评选的C++推荐书单

    C++必读书籍推荐 (原链接:http://bestcbooks.com/recommended-cpp-books 2013-10-07) 本文内容来自国外著名编程问答网站Stackoverflow ...

  4. 书评第001篇:《C++黑客编程揭秘与防范》

    本书基本信息 作者:冀云(编著) 出版社:人民邮电出版社 出版时间:2012-6-1 ISBN:9787115280640 版次:1 页数:265 字数:406000 印刷时间:2012-6-1 开本 ...

  5. 推荐书单(转自GITHUB)

    Skip to content PersonalOpen sourceBusinessExplore Sign upSign in PricingBlogSupport   This reposito ...

  6. Web前端--黑客技术揭秘(菜鸟知识)

    一,Web安全的关键点 1.同源策略是众多安全策略的一个,是Web层面上的策略.很重要. 2.同源策略规定:不同域的client脚本在没明白授权的情况下.不能读写对方的资源. 3.同域要求两个网站同协 ...

  7. C语言之反汇编揭秘

    title: 'C语言之反汇编揭秘' tags: 汇编与反汇编 categories: 汇编与反汇编 copyright: true abbrlink: 'b1c9' date: 2019-09-07 ...

  8. 推荐书单(网课)-人生/编程/Python/机器学习-130本

    目录 总计(130本) 一.在读 二.将读 三.已读 非专业书单(77本) 四.已读 专业书单(53本) 五.已看网课(8个) 六.在看网课 一个人如果抱着义务的意识去读书,便不了解读书的艺术.--林 ...

  9. [在读]web前端黑客技术揭秘

随机推荐

  1. Atitit java集成内嵌浏览器与外嵌浏览器attilax总结

    Atitit java集成内嵌浏览器与外嵌浏览器attilax总结 HTML5将颠覆原生App世界.这听起来有点危言耸听,但若认真分析HTML5的发展史,你会发现,这个世界的发展趋势确实就是这样. 熟 ...

  2. SQLServer修改表字段名称

    EXEC sp_rename 'TableName.[ColumnName]','ColumnNew','COLUMN'

  3. IE7 浏览器下面设置text-indent属性变成margin属性BUG

    问题来源 今天做项目的时候发现了一个问题,在使用text-indent属性对元素进行缩进是发现在360浏览器下发生了元素偏移,跟margin-left的效果一样,打开f12发现3607.1浏览采用的i ...

  4. 将SHP导入MySQL中

    ogr2ogr -f MySQL MySQL:smfs,host=127.0.0.1,user=root,password=gis D:\spatialData\HB\HuBeiPicture\HuB ...

  5. React Native学习笔记

    React 是使用ES6 ,支持JSX语法, 开发组件化web或native的工具. 现阶段使用Babel工具转换成ES5 代码. 组件通过props属性传递不变化的内容,UI通过state属性变动来 ...

  6. iOS学习15之OC集合

    1.数组类 1> 回顾C语言数组 数组是一个有序的集合, 来存储相同数据类型的元素. 通过下标访问数组中的元素,下标从 0 开始. 2> 数组 数组是一个有序的集合,OC中的数组只能存储对 ...

  7. 7个高性能JavaScript代码高亮插件

    本文由码农网 – 小峰原创,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 对于喜欢写技术博客的同学来说,一定对代码高亮组件非常熟悉.一款优秀的JavaScript代码高亮插件,将会帮助你渲染 ...

  8. SQL中select与set的区别-转载

    下表列出 SET 与 SELECT 的区别   SELECT SET 同时对多个变量同时赋值时 支持 不支持 表达式返回多个值时 将返回的最后一个值赋给变量 出错 表达式未返回值时 变量保持原值 变量 ...

  9. javaweb项目jsp跳转servlet Error instantiating servlet class 问题

    问题: HTTP Status 500 - Error instantiating servlet class RecommenderServlet type Exception report mes ...

  10. Oracle数据库,数据的增、删、改、查

    oracle数据库中,数据的增.删.改.查,通过SQL语句实现 SQL:结构化查询语言: 特点:不区分大小写:字符串用单引号引起来:语句结束用分号表示结束: 行注释,在语句的最前面加"--& ...