漏洞作業2知識點

2021-09-22 17:55:25 字數 1230 閱讀 9531

2.test的乙個非常普遍的用法是用來測試一方暫存器是否為空:

test ecx, ecx 

jz somewhere

如果ecx為零,設定zf零標誌為1,jz跳轉

lea是取變數的位址

lea有兩個運算元。

左邊是目的運算元,表示操作結果儲存在此,該指令目的運算元只能是8個通用暫存器之一。

右邊的是源運算元,該指令的源運算元只能是乙個儲存單元,表達儲存單元有多種定址方式。

示例:lea bx,[bx+si+0f54h]

[bx+si+0f54h]採用相對基址變址的定址方式表達儲存單元,它表示的儲存單元的有效位址是:bx內容加si內容加0f54h。這個結果被傳送到bx中。

sub_***x  位址***x處的子例程(過程/方法)

loc_***x  位址***x處的乙個指令

byte_***x  位置***x處的8位資料

unk_***x  位置***x處的大小未知的資料

.text:00401020 ; attributes: bp-based frame

.text:00401020

.text:00401020 ; int __cdecl sub_401020(char *)

.text:00401020 sub_401020  proc near   ; code xref: sub_401005↑j

.text:00401020

.text:00401020 var_4c  = byte ptr -4ch        //ida提供的乙個摘要棧檢視,列出棧幀內被直接引用的每乙個變數,以及大小與幀指標的偏移量

.text:00401020 var_c   = byte ptr -0ch         // var_為區域性變數名稱的字首,後面表示變數與被儲存的幀指標之間距離

.text:00401020 var_4   = dword ptr -4

.text:00401020 arg_0   = dword ptr  8         // 函式引數名以arg_為字首,後面表示與最頂端引數之間的相對距離(十六進製制)

.text:00401020

dword   雙字 就是四個位元組

ptr pointer縮寫 即指標

裡的資料是乙個位址值,這個位址指向乙個雙字型資料

比如mov eax, dword ptr [12345678] 把記憶體位址12345678中的雙字型(32位)資料賦給eax

小知識點2

find name svn exec rm rf find type d name svn xargs rm rf find type d name svn make otapackage j24 adb shell am start n 包名 類名 adb shell pm list packag...

介面知識點2

1.介面中常量的定義 public static final int num one 34 注意事項 前三個關鍵字可以省略,final定義的是不可變的量,名字盡量是用大寫,必須進行賦值。2.介面是沒有靜態 塊或者構造方法的。3.乙個類的直接父類只能有乙個,但是乙個類可以同時實現多個介面。格式為 pu...

框架知識點2

doctype html en utf 8 viewport content width device width,initial scale 1.0 document title jquery 1.10.1.min.js script 注 jq是js封裝的乙個 庫。注 jq中相容js所有的寫法。注...