0x00 前言
發現網上很多關于ollydbg和windbg的條件斷點的設定是錯誤的,是以這裡總結下。
0x01 字元串條件斷點
ollydbg:
unicode字元串:
bp kernel32.CreateFileW, [UNICODE [esp+4]]=="C:\\4.txt"
ascii字元串:
bp kernel32.CreateFileA, [STRING [esp+4]]=="C:\\4.txt"
windbg:
unicode字元串:
bp kernel32!CreateFileW "$<F:\\script.txt"
其中,F:\script.txt的内容為:
as /mu ${/v:fname} poi(esp+4)
.if ( $sicmp( "${fname}", "c:\3.txt" ) = 0 ) {.echo ${fname}} .else {gc}
ascii字元串:
bp kernel32!CreateFileA "$<F:\\script.txt"
其中,F:\script.txt的内容為:
as /ma ${/v:fname} poi(esp+4)
.if ( $sicmp( "${fname}", "c:\3.txt" ) = 0 ) {.echo ${fname}} .else {gc}