Binary Hacks ―ハッカー秘伝のテクニック100選 pdf epub mobi txt 电子书 下载 2024


Binary Hacks ―ハッカー秘伝のテクニック100選

简体网页||繁体网页
高林 哲
オライリー・ジャパン
2006-11-14
412
JPY 33.60
単行本(ソフトカバー)
9784873112886

图书标签: linux  hack  Programming  计算机科学  计算机  binary  unix  日文书   


喜欢 Binary Hacks ―ハッカー秘伝のテクニック100選 的读者还喜欢




    点击这里下载
        


    想要找书就要到 笔趣阁图书下载中心
    立刻按 ctrl+D收藏本页
    你会得到大惊喜!!

    发表于2024-06-22

    Binary Hacks ―ハッカー秘伝のテクニック100選 epub 下载 mobi 下载 pdf 下载 txt 电子书 下载 2024

    Binary Hacks ―ハッカー秘伝のテクニック100選 epub 下载 mobi 下载 pdf 下载 txt 电子书 下载 2024

    Binary Hacks ―ハッカー秘伝のテクニック100選 pdf epub mobi txt 电子书 下载 2024



    图书描述

    Binary Hacks from O'Reilly Japan is a book about low-level programming on GNU/Linux systems. The goal of the book is to offer useful but not necessarily very well-known techniques as many as we can to readers.

    Table of Contents

    Chapter 1. Introduction

    1. Introduction to Binary Hacks

    2. Terminology of Binary Hacks

    3. Using "file" to tell file types

    4. Using "od" to dump binary files

    Chapter 2. Object Files Hacks

    5. Introduction to ELF

    6. Static libraries and dynamic libraries

    7. Using "ldd" to check dependencies of shared libraries

    8. Using "readelf" to see information of ELF files

    9. Using "objdump" to dump object files

    10. Using "objdump" to disassemble object files

    11. Using "objcopy" to embed data in executables

    12. Using "nm" to see lists of symbols in object files

    13. Using "strings" to extract strings from binary files

    14. Using "c++filt" to demangle C++ symbols

    15. Using "addr2line" to get file names and line numbers by addresses

    16. Using "strip" to delete symbols from object files

    17. Using "ar" to modify static libraries

    18. How to link C and C++ programs

    19. How to avoid symbol collision issues

    20. Why PIC code is used for shared libraries on GNU/Linux systems

    21. Using "statifier" to create pseudo static executables from dynamic executables

    Chapter 3. GNU Programming Hacks

    22. Introduction to GCC extensions

    23. Using inline assembler with GCC

    24. Using GCC's builtin functions for optimization

    25. Writing "Hello World" without using glibc

    26. Using TLS (Thread Local Storage)

    27. Switching glibc's internal libraries by system capabilities

    28. Changing behavior of programs by linked libraries

    29. Reducing exported symbols of libraries

    30. Using versioned symbols to manage compatibility

    31. Calling functions before main()

    32. How GCC generates trampoline code at runtime

    33. Allowing and disallowing executable flags of code on stacks

    34. Running code on heaps

    35. Creating PIE (Position Independent Executable)

    36. Writing synchronized methods in C++

    37. Creating singletons in C++

    38. Understanding g++'s exceptions (throw)

    39. Understanding g++'s exceptions (SjLj)

    40. Understanding g++'s exceptions (DWARF2)

    41. Understanding runtime cost of g++'s exceptions

    Chapter 4. Secure Programming Hacks

    42. Introduction to GCC secure programming

    43. Using "-ftrapv" to detect integer overflows

    44. Using "Mudflap" to detect buffer overflows

    45. Using "-D_FORTIFY_SOURCE" to detect buffer overflows

    46. Using "-fstack-protector" to protect stacks

    47. Why you should use unsigned constants to do bitmask

    48. Why big shift operations are dangerous

    49. Why you should care difference between 0 and NULL on 64-bit systems

    50. Thread-safe functions defined by POSIX

    51. Writing signal handlers in a safe manner

    52. Using "sigwait" to process async signals synchronously

    53. Using "sigsafe" to write signal processing safely

    54. Using "Valgrind" to detect memory leaks

    55. Using "Valgrind" to detect invalid memory access

    56. Using "Helgrind" to debug multi-threaded programs

    57. Using "fakeroot" to run programs with fake root privilege

    Chapter 5. Runtime Hacks

    58. How programs reach main()

    59. How system calls are called

    60. Using "LD_PRELOAD" to switch shared libraries

    61. Using "LD_PRELOAD" to wrap existing functions

    62. Using "dlopen" to do dynamic linking

    63. Showing backtraces with C programs

    64. Checking running process's absolute path

    65. Checking loaded shared libraries of running programs

    66. Checking memory maps of running programs

    67. Using "libbfd" to list symbols

    68. Demangling C++ symbols at runtime

    69. Using "ffcall" to call functions with dynamic signatures

    70. Using "libdwarf" to get debug information

    71. Using "dumper" to pretty-print struct variables

    72. How to load object files yourself

    73. Using "libunwind" to control call chains

    74. Using "GNU lightning" to generate code in a portable manner

    75. Getting addresses of stacks

    76. Using "sigaltstack" to handle stack overflows

    77. Hooking entering and exiting of functions

    78. Modifying contexts of programs in signal handlers

    79. Getting values of program counters

    80. Rewriting your programs at runtime

    81. Using "SIGSEGV" to validate accessibility of addresses

    82. Using "strace" to trace system calls

    83. Using "ltrace" to trace function calls in shared libraries

    84. Using "Jockey" to record and replay programs

    85. Using "prelink" to improve programs starting up time

    86. Using 'livepatch" to patch running programs

    Chapter 6. Profilers and Debuggers Hacks

    87. Using "gprof" to profile programs

    88. Using "sysprof" to profile systems very easily

    89. Using "oprofile" to profile systems

    90. Using "GDB" to control running programs

    91. Using debugging support of hardware

    92. Setting break points in your C programs

    Chapter 7. Misc Hacks

    93. How Boehm GC works

    94. Why you should be careful about memory ordering of processors

    95. Light-weight concurrent processing with PCL (Portable Coroutine Library)

    96. Counting clock counts of CPUs

    97. How floating numbers are expressed in bits

    98. What's special about x86's floating numbers instructions

    99. Raising signals for operations resulting infinite or NAN.

    100. Further reading

    Binary Hacks ―ハッカー秘伝のテクニック100選 下载 mobi epub pdf txt 电子书

    著者简介


    图书目录


    Binary Hacks ―ハッカー秘伝のテクニック100選 pdf epub mobi txt 电子书 下载
    想要找书就要到 笔趣阁图书下载中心
    立刻按 ctrl+D收藏本页
    你会得到大惊喜!!

    用户评价

    评分

    又一本被翻译糟蹋了的书。。。

    评分

    把目前能看懂的hacks读完了。原书很不错,中文版则充分演绎了什么叫做狗屎一样的翻译。

    评分

    把目前能看懂的hacks读完了。原书很不错,中文版则充分演绎了什么叫做狗屎一样的翻译。

    评分

    评分

    又一本被翻译糟蹋了的书。。。

    读后感

    评分

    翻译的实在太差,大量的句子不通顺、用词匪夷所思。很差,是给译者和编辑,大败OReilly的牌子。书的内容对于学习了解Linux开发一些底层知识和技巧还是有价值的,我是把书中的内容作为索引在网上搜索自学的。 期待有负责的人士重新翻译出版。  

    评分

    翻译的实在太差,大量的句子不通顺、用词匪夷所思。很差,是给译者和编辑,大败OReilly的牌子。书的内容对于学习了解Linux开发一些底层知识和技巧还是有价值的,我是把书中的内容作为索引在网上搜索自学的。 期待有负责的人士重新翻译出版。  

    评分

    随便一翻,看到Hack100,文献。 严重怀疑作者没有相关行业背景, 详解Unix编程 应该是 Advanced Programing in the Unix Environment 国内翻译叫做Unix环境高级编程。 计算机的构成和设计, 应该是Computer Organization and Design. 国内翻译我记得是,计算机组织与设计 D...  

    评分

    随便一翻,看到Hack100,文献。 严重怀疑作者没有相关行业背景, 详解Unix编程 应该是 Advanced Programing in the Unix Environment 国内翻译叫做Unix环境高级编程。 计算机的构成和设计, 应该是Computer Organization and Design. 国内翻译我记得是,计算机组织与设计 D...  

    评分

    我不会日语,所以把原书给我我也看不懂。这里只说中文版。今天刚拿到书,看第二章,ELF的规范我看过不止一遍,即使这样我也不知道第二章的前10页在说什么,或者说我很难把这些汉字和我看过的东西联系在一起,即便是我在大脑中进行"中文<--->英文"的转换之后。 这本书的中文用...  

    类似图书 点击查看全场最低价

    Binary Hacks ―ハッカー秘伝のテクニック100選 pdf epub mobi txt 电子书 下载 2024


    分享链接









    相关图书




    本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度googlebingsogou

    友情链接

    © 2024 twxs8.cc All Rights Reserved. 笔趣阁图书下载中心 版权所有