[讀書筆記]Binary Hancks(1)

來源:互聯網
上載者:User

本書真的很不錯,雖然它的名字叫做“駭客”,但它所講述的內容卻是一個程式員,特別是一個Linux程式員,或者說是C程式員必備的知識!

 

第一講:二進位Hack的技巧分為6大類:

1、各種工具、庫

2、二進位格式

3、系統調用

4、OS功能

5、處理器功能

6、編譯器功能

 

從這幾大類上就可以看出來,它並不是所謂的駭客工具或者攻略之類的東西,而是深入理解二進位程式的相關知識。相信很多程式寫過很多程式,但都沒有深入理解二進位檔案的格式以及編譯、連結、靜態分析等之類的東西!從這裡開始,你將瞭解這些東西!

 

第二計:Binary Hacks的用語基礎知識

應用二進位介面ABI(Application Binary Interface),EABI

應用程式介面API(Application Programming Interface)

初始符號段BBS Segment(Block Started Bymbol Segment)

動態共用對象DSO(Dynamic Shared Object)

任意記錄格式高度DWARF(Debug With Arbitrary Record Format)

可執行可連結格式ELF(Executable and Linking Format)

GCC(GNU Complier Collection)

glibc(Gnu C Library)

GNU(GNU's Not Unix)

GNU/Linux

全域位移表GOT(Global Offset Table)

LLP64 long long和指標都佔64位,int和long都佔32位的資料模型

LP64 long和指標佔64位,int佔32位的資料模型

位置無關代碼PIC(Position Idependent Code)

位置無關的可執行程式PIE(Position Idependent Executable)

程式連結資料表PLT(Procedure Linkage Table)

POSIX(Protable Operating System Interface for Unix)

SUS(Single Unix Specification)

執行緒區域儲存TLS(Thread Local Storage)

預連結(prelink)

靜態連結(Staitc Link)

工具鏈(toolschain)

資料區段(Data segment)

程式碼片段(Text segment)

調試器(Debuger)

調試資訊(Debug infomation)

符號重組(demangle)

動態連結(Dynamic link)

動態連結程式庫(Dynamic link library)

名稱改編(name mangline)

Binarian 精通Binary Hack方面技術的工程師

棧跟蹤,棧回塑(backstrace)

堆(heap)

斷點(break point)

程式計數器(program conter)

進程(process)

Profile 程式效能解析

函數呼叫慣例(Calling Convention)

運行時(runtime)

連結(link)

反射(reflection)

裝載,載入(load)

 

有多少人知道上面所有的名詞?本書會慢慢的帶你瞭解這些基礎知識!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.