精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

網(wǎng)絡(luò)安全編程:文件補丁及內(nèi)存補丁

安全
有時破解一個程序后可能會將其發(fā)布,而往往被破解的程序只是修改了其中一個程序而已,無須將整個軟件都進行打包再次發(fā)布,只需要發(fā)布一個補丁程序即可。發(fā)布補丁常見的有三種情況,第一種情況是直接把修改后的文件發(fā)布出去,第二種情況是發(fā)布一個文件補丁,它去修改原始的待破解的程序......

[[397659]]

微信公眾號:計算機與網(wǎng)絡(luò)安全

ID:Computer-network

有時破解一個程序后可能會將其發(fā)布,而往往被破解的程序只是修改了其中一個程序而已,無須將整個軟件都進行打包再次發(fā)布,只需要發(fā)布一個補丁程序即可。發(fā)布補丁常見的有三種情況,第一種情況是直接把修改后的文件發(fā)布出去,第二種情況是發(fā)布一個文件補丁,它去修改原始的待破解的程序,最后一種情況是發(fā)布一個內(nèi)存補丁,它不修改原始的文件,而是修改內(nèi)存中的指定部分。

3種情況各有好處。第一種情況將已經(jīng)修改后的程序發(fā)布出去,使用者只需要簡單進行替換就可以了。但是有個問題,如果程序的版本較多,直接替換可能就會導致替換后的程序無法使用。第二種方法是發(fā)布文件補丁,該方法需要編寫一個簡單的程序去修改待破解的程序,在破解以前可以先對文件的版本進行判斷,如果補丁和待破解程序的版本相同則進行破解,否則不進行破解。但是有時候修改了文件以后,程序可能無法運行,因為有的程序會對自身進行校驗和比較,當校驗和發(fā)生變化后,程序則無法運行。最后一種方式是內(nèi)存補丁,也需要自己動手寫程序,并且寫好的補丁程序需要和待破解的程序放在同一個目錄下,執(zhí)行待破解的程序時,需要執(zhí)行內(nèi)存補丁程序,內(nèi)存補丁程序會運行待破解的程序,然后比較補丁與程序的版本,最后進行破解。同樣,如果有內(nèi)存校驗的話,也會導致程序無法運行。不過,無論是文件校驗還是內(nèi)存校驗,都可以繼續(xù)對被校驗的部分進行打補丁來突破程序校驗的部分。本文編寫一個文件補丁程序和內(nèi)存補丁程序。

1. 文件補丁

用OD修改CrackMe是比較容易的,如果脫離OD該如何修改呢?其實在OD中修改反匯編的指令以后,對應地,在文件中修改的是機器碼。只要在文件中能定位到指令對應的機器碼的位置,那么直接修改機器碼就可以了。JNZ對應的機器碼指令為0x75,JZ對應的機器碼指令為0x74。也就是說,只要在文件中找到這個要修改的位置,用十六進制編輯器把0x75修改為0x74即可。如何能把這個內(nèi)存中的地址定位到文件地址呢?這就是PE文件結(jié)構(gòu)中把VA轉(zhuǎn)換為FileOffset的知識了。

具體的手動步驟,請大家自己嘗試,這里直接通過寫代碼進行修改。為了簡單起見,這里使用控制臺來編寫,而且直接對文件進行操作,省略中間的步驟。有了思路以后,就不是難事了。

關(guān)于文件補丁的代碼如下:

  1. #include <windows.h> 
  2. #include <stdio.h> 
  3. int main(int argc, char* argv[]) 
  4.   // VA = 00401EA8 
  5.   // FileOffset = 00001EA8 
  6.   DWORD dwFileOffset = 0x00001EA8; 
  7.   BYTE bCode = 0; 
  8.   DWORD dwReadNum = 0; 
  9.   // 判斷參數(shù) 
  10.   if ( argc != 2 ) 
  11.   { 
  12.     printf("Please input two argument \r\n"); 
  13.     return -1; 
  14.   } 
  15.   // 打開文件 
  16.   HANDLE hFile = CreateFile(argv[1], 
  17.     GENERIC_READ | GENERIC_WRITE,FILE_SHARE_READ, 
  18.     NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL, NULL); 
  19.   if ( hFile == INVALID_HANDLE_VALUE ) 
  20.   { 
  21.     return -1; 
  22.   } 
  23.   SetFilePointer(hFile, dwFileOffset, 0, FILE_BEGIN); 
  24.   ReadFile(hFile, (LPVOID)&bCode, sizeof(BYTE), &dwReadNum, NULL); 
  25.   // 比較當前位置是否為 JNZ 
  26.   if ( bCode != '\x75' ) 
  27.   { 
  28.     printf("%02X \r\n", bCode); 
  29.     CloseHandle(hFile); 
  30.     return -1; 
  31.   } 
  32.   // 修改為 JZ 
  33.   bCode = '\x74'
  34.   SetFilePointer(hFile, dwFileOffset, 0, FILE_BEGIN); 
  35.   WriteFile(hFile, (LPVOID)&bCode, sizeof(BYTE), &dwReadNum, NULL); 
  36.   printf("Write JZ is Successfully ! \r\n"); 
  37.   CloseHandle(hFile); 
  38.   // 運行 
  39.   WinExec(argv[1], SW_SHOW); 
  40.   getchar(); 
  41.   return 0; 

代碼給出了詳細的注釋,只需要把CrackMe文件拖放到文件補丁上或者在命令行下輸入命令即可,如圖1所示。

 

 

 

 

圖1 對CrackMe進行文件補丁

通常,在做文件補丁以前一定要對打算進行修改的位置進行比較,以免產(chǎn)生錯誤的修改。程序使用的方法是將要修改的部分讀出來,看是否與用OD調(diào)試時的值相同,如果相同則打補丁。由于這里只是介紹編程知識,針對的是一個CrackMe。如果對某個軟件進行了破解,自己做了一個文件補丁發(fā)布出去給別人使用,不進行相應的判斷就直接進行修改,很有可能導致軟件不能使用,因為對外發(fā)布以后不能確認別人所使用的軟件的版本等因素。因此,在進行文件補丁時最好判斷一下,或者是用CopyFile()對文件進行備份。

2. 內(nèi)存補丁

相對文件補丁來說,還有一種補丁是內(nèi)存補丁。這種補丁是把程序加載到內(nèi)存中以后對其進行修改,也就是說,本身是不對文件進行修改的。要將CrackMe載入內(nèi)存中,載入內(nèi)存可以調(diào)用CreateProcess()函數(shù)來完成,這個函數(shù)參數(shù)眾多,功能強大。使用CreateProcess()創(chuàng)建一個子進程,并且在創(chuàng)建的過程中將該子進程暫停,那么就可以安全地使用WriteProcessMemory()函數(shù)來對CrackMe進行修改了。整個過程也比較簡單,下面直接來閱讀源代碼:

  1. #include <Windows.h> 
  2. #include <stdio.h> 
  3. int main(int argc, char* argv[]) 
  4.   // VA = 004024D8 
  5.   DWORD dwVAddress = 0x00401EA8; 
  6.   BYTE bCode = 0; 
  7.   DWORD dwReadNum = 0; 
  8.   // 判斷參數(shù)數(shù)量 
  9.   if ( argc != 2 ) 
  10.   { 
  11.     printf("Please input two argument \r\n"); 
  12.     return -1; 
  13.   } 
  14.   STARTUPINFO si = { 0 }; 
  15.   si.cb = sizeof(STARTUPINFO); 
  16.   si.wShowWindow = SW_SHOW; 
  17.   si.dwFlags = STARTF_USESHOWWINDOW; 
  18.   PROCESS_INFORMATION pi = { 0 }; 
  19.   BOOL bRet = CreateProcess(argv[1], 
  20.     NULL,NULL,NULL,FALSE
  21.     CREATE_SUSPENDED, // 將子進程暫停 
  22.     NULL,NULL,&si,&pi); 
  23.   if ( bRet == FALSE ) 
  24.   { 
  25.     printf("CreateProcess Error ! \r\n"); 
  26.     return -1; 
  27.   } 
  28.   ReadProcessMemory(pi.hProcess, 
  29.     (LPVOID)dwVAddress,(LPVOID)&bCode, 
  30.     sizeof(BYTE),&dwReadNum); 
  31.   // 判斷是否為 JNZ 
  32.   if ( bCode != '\x75' ) 
  33.   { 
  34.     printf("%02X \r\n", bCode); 
  35.     CloseHandle(pi.hThread); 
  36.     CloseHandle(pi.hProcess); 
  37.     return -1; 
  38.   } 
  39.   // 將 JNZ 修改為 JZ 
  40.   bCode = '\x74'
  41.   WriteProcessMemory(pi.hProcess, 
  42.     (LPVOID)dwVAddress,(LPVOID)&bCode, 
  43.     sizeof(BYTE),&dwReadNum); 
  44.   ResumeThread(pi.hThread); 
  45.   CloseHandle(pi.hThread); 
  46.   CloseHandle(pi.hProcess); 
  47.   printf("Write JZ is Successfully ! \r\n"); 
  48.   getchar(); 
  49.   return 0; 

代碼中的注釋也比較詳細,代碼的關(guān)鍵是要進行比較,否則會造成程序的運行崩潰。在進行內(nèi)存補丁前需要將線程暫停,這樣做的好處是有些情況下可能沒有機會進行補丁就已經(jīng)執(zhí)行完需要打補丁的地方了。當打完補丁以后,再恢復線程繼續(xù)運行就可以了。

參考文獻:C++ 黑客編程揭秘與防范(第3版) 

 

責任編輯:龐桂玉 來源: 計算機與網(wǎng)絡(luò)安全
相關(guān)推薦

2017-11-30 14:28:01

2021-03-03 12:20:42

網(wǎng)絡(luò)安全DLL編程

2021-04-19 10:26:41

網(wǎng)絡(luò)安全PE文件

2010-01-18 17:32:03

2014-01-15 11:05:48

2021-03-05 13:46:56

網(wǎng)絡(luò)安全遠程線程

2021-01-26 13:45:03

網(wǎng)絡(luò)安全Winsock編程

2021-02-07 10:55:01

網(wǎng)絡(luò)安全文件API

2012-05-14 11:03:39

2010-05-10 16:01:54

2021-02-23 10:20:07

網(wǎng)絡(luò)安全進程代碼

2021-02-21 18:19:43

網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全編程創(chuàng)建進程

2016-10-10 00:18:27

2021-09-26 09:40:11

補丁流程實踐

2010-11-17 09:11:38

Linux內(nèi)核補丁

2013-03-18 16:34:08

2009-09-17 13:09:06

2021-03-19 10:23:45

網(wǎng)絡(luò)安全內(nèi)核文件

2014-03-11 09:53:26

Windows XP

2009-12-04 09:56:53

Windows 7“黑屏死機”
點贊
收藏

51CTO技術(shù)棧公眾號

久久久久久久免费视频| 成人福利免费观看| 69视频在线观看免费| 国产第一亚洲| 亚洲精品成a人| 久久五月天婷婷| 亚洲字幕av一区二区三区四区| 影音先锋日韩在线| 亚洲欧美国产va在线影院| 日本不卡一区二区在线观看| 丁香高清在线观看完整电影视频| 久久久www免费人成精品| 91精品中文在线| 成人免费看片98欧美| 欧美独立站高清久久| 精品国内片67194| 日本美女高潮视频| 成年网站在线视频网站| 国产精品每日更新| 久久国产精品久久| 国产美女三级无套内谢| 久久蜜桃精品| 午夜精品免费视频| 青青操在线播放| 欧美美乳视频| 亚洲а∨天堂久久精品喷水| 成年人三级黄色片| 欧美电影免费看| 亚洲综合视频在线观看| 亚洲欧美日本国产有色 | 欧美精品视频www在线观看| 自拍日韩亚洲一区在线| 亚洲制服国产| 中文字幕中文字幕一区| 日韩久久精品电影| 污网站在线免费| 中文字幕av一区二区三区佐山爱| 亚洲成人一区在线| 日产精品久久久久久久蜜臀| 五月天婷婷在线视频| 91免费在线视频观看| 成人看片视频| 国产成人av免费看| 九九热在线视频观看这里只有精品| 国产成人短视频| 亚洲GV成人无码久久精品| 夜夜精品视频| 26uuu久久噜噜噜噜| www.99re7.com| 国产精品大片免费观看| 欧美大尺度在线观看| 久久99久久99精品免费看小说| 成人羞羞动漫| 日韩中文字幕精品| 四虎地址8848| 91综合久久一区二区| 色一区av在线| 99精品中文字幕| 亚洲精品成人影院| 麻豆乱码国产一区二区三区| 99久久99久久精品国产| 91精品国产调教在线观看| 久久综合伊人77777| 男女性高潮免费网站| 欧美福利专区| 久久久久久国产免费| 国产精品不卡av| 伊人久久大香线蕉av超碰演员| 久久久久久久久久久国产| 香蕉视频一区二区| 久久久久久久欧美精品| 国产精品国产三级国产aⅴ9色 | 在线观看91精品国产麻豆| 欧美激情第一区| 亚洲一区二区三区中文字幕在线观看| 欧美一级久久久久久久大片| 国产综合内射日韩久| 天天躁日日躁狠狠躁欧美| 亚洲性生活视频| 成年人午夜剧场| 亚洲一区区二区| 国产精品天天狠天天看| 精品国产九九九| 91在线视频18| 亚洲一区二区三区涩| 日本一级理论片在线大全| 亚洲成人av一区二区| 色悠悠久久综合网| 婷婷视频一区二区三区| 亚洲欧美福利视频| 成熟的女同志hd| 99xxxx成人网| 91精品久久久久久久久久久久久久 | 91麻豆精品国产91久久综合| 91精品一区国产高清在线gif| 性金发美女69hd大尺寸| 中文字幕乱码人妻二区三区| 国产激情视频一区二区三区欧美| 久久综合毛片| 呦呦在线视频| 欧美在线观看一二区| 一区二区在线免费观看视频| 国产亚洲一区二区三区不卡| 久久国产精品亚洲| 精品人妻一区二区三区潮喷在线| 国产精品一区二区你懂的| 麻豆av一区二区三区| 在线xxxx| 欧美日韩高清一区二区| 欧美大片免费播放器| 亚洲色图二区| 国产精品高潮呻吟视频| 黄色av免费观看| 日本高清不卡一区二区三区视频| 精品一二线国产| 久久久久国产精品视频| 成人影院在线看| 在线日韩一区二区| av无码一区二区三区| 羞羞答答成人影院www| 国产成人啪精品视频免费网| 六月丁香综合网| **性色生活片久久毛片| 精品久久久久久中文字幕2017| 老司机精品视频在线播放| 久久成人免费视频| 中文字幕一区二区人妻| 久久久久久久久久电影| 欧美图片激情小说| 欧美中文高清| 久久久av免费| 国产精品无码粉嫩小泬| 久久香蕉国产线看观看99| www.xxx麻豆| 精品久久亚洲| xvideos成人免费中文版| 国产精品欧美综合| 久久久国产精品麻豆| www.浪潮av.com| 日韩三级毛片| 2025国产精品视频| 天堂a中文在线| 欧美日韩免费网站| 国产精品无码在线| 日韩一级大片| 欧美lavv| 欧美性xxx| 亚洲午夜未满十八勿入免费观看全集| 在线天堂中文字幕| 91久色porny| 99久久国产宗和精品1上映| 女同一区二区三区| 91精品国产免费久久久久久| 香蕉视频黄色片| 无码av免费一区二区三区试看 | 亚洲都市激情| 日韩av不卡电影| 国产三级在线观看| 欧美三级一区二区| 国产又粗又长又硬| 国产综合色精品一区二区三区| 亚洲精品偷拍视频| 日韩精品免费视频一区二区三区| 欧美久久久精品| 欧美视频一二区| 精品国产999| 播金莲一级淫片aaaaaaa| 久久一区国产| 致1999电视剧免费观看策驰影院| 国产美女精品视频免费播放软件| 欧美成在线视频| 手机在线不卡av| 欧洲色大大久久| 国产美女久久久久久| 福利91精品一区二区三区| 国产青青在线视频| 欧美美女一区| 91网免费观看| xx欧美视频| 日韩视频精品在线| 欧美 日韩 国产 在线| 疯狂蹂躏欧美一区二区精品| 亚洲av成人无码久久精品| 韩国一区二区在线观看| 97超碰人人澡| 日本久久黄色| 国产精品国产精品国产专区蜜臀ah| 欧美aa免费在线| 少妇高潮久久77777| 成人毛片视频免费看| 在线观看www91| 久久机热这里只有精品| 久久久久久久久97黄色工厂| 波多野结衣免费观看| 国产精品日本| 在线观看欧美一区| 欧美尿孔扩张虐视频| 国产啪精品视频| 高潮在线视频| 久久成年人免费电影| 青青草av免费在线观看| 91麻豆精品国产91久久久久 | 欧美性色黄大片人与善| 久久亚洲精精品中文字幕| 日本成熟性欧美| 久久久久黄久久免费漫画| 中文字幕免费精品一区| 日本精品久久久久久| 欧美精选午夜久久久乱码6080| 欧美a∨亚洲欧美亚洲| 成人欧美一区二区三区白人| 91av在线免费| 国产成人8x视频一区二区| 男女无套免费视频网站动漫| 国产日韩欧美| 中国丰满熟妇xxxx性| 久久久五月天| 日本不卡久久| 日韩欧美在线精品| 国产精品一区二区欧美| 日韩精品一区二区三区中文字幕 | 国产96在线亚洲| 成人乱人伦精品视频在线观看| 日韩欧美一区二区三区在线观看| 97婷婷大伊香蕉精品视频| 性国产高清在线观看| 久久精品91久久久久久再现| 成人免费在线电影| 亚洲欧美一区二区三区久久| 香蕉视频网站在线| 欧美精品一区二区在线播放| 99久久亚洲精品日本无码| 欧美日韩一区小说| 天天天天天天天干| 欧美自拍偷拍一区| 国产污视频网站| 91久久精品午夜一区二区| 久久中文字幕免费| 日韩欧美精品网站| 日本在线播放视频| 欧美性黄网官网| 伊人手机在线视频| 大伊人狠狠躁夜夜躁av一区| 国产成人在线播放视频| 亚洲成人1区2区| 日韩精品久久久久久久酒店| 亚洲一区影音先锋| 免费观看一级视频| 午夜久久久影院| 成人免费视频毛片| 日本道色综合久久| 中文区中文字幕免费看| 欧美视频一区在线观看| 一级α片免费看刺激高潮视频| 欧美日韩三级一区| 国产区精品在线| 日韩三级免费观看| 丰满肉嫩西川结衣av| 亚洲精品国精品久久99热 | 97超视频在线观看| 日韩丝袜情趣美女图片| 亚洲奶汁xxxx哺乳期| 日韩电影在线观看中文字幕| 美女做暖暖视频免费在线观看全部网址91 | 欧美激情欧美| 美女av免费观看| 欧美精品1区| 日韩欧美亚洲天堂| 日本91福利区| 国产又粗又长又爽又黄的视频| 国产精品资源在线观看| 在线天堂www在线国语对白| 久久综合给合久久狠狠狠97色69| 欧美成人另类视频| 亚洲黄色av一区| 国产一级做a爱片久久毛片a| 欧美撒尿777hd撒尿| 成 人片 黄 色 大 片| 亚洲精品国产拍免费91在线| av电影在线观看网址| 欧美精品制服第一页| 三级中文字幕在线观看| 国产精品视频精品| 99re91这里只有精品| 欧洲亚洲一区二区三区四区五区| 婷婷另类小说| 日韩免费一级视频| 久久99国产精品麻豆| 中文字幕一区二区三区乱码不卡| 国产色产综合产在线视频| 欧美第一页在线观看| 欧美日韩亚洲一区二区| 国产精品一区二区av白丝下载| 欧美精品一区二区久久久| 亚洲搞黄视频| 97视频免费在线看| 99视频这里有精品| 久久精品国产一区二区三区日韩| 国产高清一区二区| 亚洲不卡中文字幕无码| 蜜桃av一区二区在线观看| 亚洲精品第二页| 中文字幕欧美一区| av大全在线观看| 日韩欧美国产1| av电影在线观看| 欧美专区国产专区| 凹凸av导航大全精品| 一区二区三区欧美成人| 免费亚洲网站| av电影在线播放| 日韩美女视频19| 天堂а√在线中文在线新版| 日韩精品一区二区三区中文不卡| 丁香婷婷在线观看| 69av在线播放| ccyy激情综合| 精品国产一区二区三区在线| 青娱乐精品在线视频| 极品人妻一区二区三区| 亚洲一区欧美一区| 国产精品人妻一区二区三区| 亚洲性无码av在线| 户外露出一区二区三区| 狠狠色综合一区二区| 欧美日韩国产亚洲一区| 亚洲高清在线不卡| 国产精品美女久久久久高潮| 亚洲天堂五月天| 亚洲午夜精品久久久久久久久久久久| 日韩欧美一中文字暮专区| 粉嫩av四季av绯色av第一区| 亚洲字幕久久| 天天久久综合网| 中文字幕制服丝袜成人av| 亚洲第一区av| 中文字幕v亚洲ⅴv天堂| se69色成人网wwwsex| 水蜜桃亚洲精品| 久久综合九色综合欧美狠狠| 37p粉嫩大胆色噜噜噜| 狠狠色狠狠色综合日日小说| 天堂av中文字幕| 88xx成人精品| 亚州国产精品| 国产一级不卡毛片| 国产日产欧美一区| 中文字幕一区二区三区四区视频| 这里只有精品久久| 欧美一区二区三区婷婷| 中文字幕欧美日韩一区二区三区| 久久99九九99精品| 91日韩中文字幕| 日韩一级片网站| 69av成人| 日韩免费电影一区二区三区| 日本欧美一区二区| 黄色激情小视频| 欧美一区二区三区四区五区 | 国产精品久久久久久影院8一贰佰| 亚洲国产日韩欧美在线观看| 日韩美女视频一区二区| 亚洲精品久久久久avwww潮水| 午夜精品久久久久久久99热| 国产不卡一区| 亚洲精品免费一区亚洲精品免费精品一区| 亚洲色图欧洲色图婷婷| 蜜桃视频在线观看www| 538国产精品一区二区免费视频| 国产麻豆精品久久| 91女神在线观看| 一区二区三区日韩欧美| 三级黄视频在线观看| 国产精品影片在线观看| 午夜日韩激情| 无码一区二区三区在线| 欧美日韩成人在线| 欧美理论电影| 欧美激情第一页在线观看| 免费观看久久久4p| 毛片aaaaa| 国产一区二区免费| 网站一区二区| 国产又猛又黄的视频| 亚洲一区二区综合| 国产一二三区在线| 1卡2卡3卡精品视频| 老司机久久99久久精品播放免费| 懂色av粉嫩av蜜臀av一区二区三区| 欧美精品一区二区在线观看| 国产精品诱惑| 免费看黄在线看| 国产精品久久久久影院老司| 蜜桃久久一区二区三区| 国产精品揄拍500视频| 国产美女诱惑一区二区| 精品自拍偷拍视频| 一本色道久久综合亚洲精品小说 | 国产欧美日韩久久| 亚洲欧美另类一区|