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

網絡安全編程:PE結構的地址與地址的轉換

安全
程序在內存中與在文件中有著不同的地址形式,而且PE相關的地址不只有這兩種形式。與PE結構相關的地址形式有3種,且這3種地址形式可以進行轉換。

 [[394959]]

用OD調試器調試程序時看到的地址與使用C32Asm以十六進制形式查看程序時的地址形式有所差異。程序在內存中與在文件中有著不同的地址形式,而且PE相關的地址不只有這兩種形式。與PE結構相關的地址形式有3種,且這3種地址形式可以進行轉換。

1. 與PE結構相關的3種地址

與PE結構相關的3種地址是VA(虛擬地址)、RVA(相對虛擬地址)和FileOffset(文件偏移地址)。

VA(虛擬地址):PE 文件映射到內存后的地址。

RVA(相對虛擬地址):內存地址相對于映射基地址的偏移地址。

FileOffset(文件偏移地址):相對 PE 文件在磁盤上的文件開頭的偏移地址。

PE文件在磁盤上和在內存中的結構是一樣的。所不同的是,在磁盤上,文件是按照IMAGE_OPTIONAL_HEADER的FileAlignment值進行對齊的。而在內存中,映像文件是按照IMAGE_OPTIONAL_HEADER的SectionAlignment進行對齊的。FileAlignment是以磁盤上的扇區為單位的,也就是說,FileAlignment最小為512字節,十六進制的0x200字節。而SectionAlignment是以內存分頁為單位來對齊的,通常Win32平臺一個內存分頁為4KB,也就是十六進制的0x1000字節。一般情況下,FileAlignment的值會與SectionAlignment的值相同,這樣磁盤文件和內存映像的結構是完全一樣的。當FileAlignment的值和SectionAlignment的值不相同的時候,就存在一些細微的差異了,其主要區別在于,根據對齊的實際情況而多填充了很多0值。PE文件映射如圖1所示。

圖1  PE文件映射圖

除了文件對齊與內存對齊的差異以外,文件的起始地址從0地址開始,用C32Asm的十六進制模式查看PE文件時起始位置是0x00000000。而在內存中,它的起始地址為IMAGE_OPTIONAL_HEADER結構體的ImageBase字段(該說法只針對EXE文件,DLL文件的映射地址不一定固定,但是絕對不會是0x00000000地址)。

2. 3種地址的轉換

當FileAlignment和SectionAlignment的值不相同時,磁盤文件與內存映像的同一節表數據在磁盤和內存中的偏移也不相同,這樣兩個偏移就發生了一個需要轉換的問題。當知道某數據的RVA,想要在文件中讀取同樣的數據的時候,就必須將RVA轉換為FileOffset。反之,也是同樣的情況。

下面用一個例子來介紹如何進行轉換。一個用MessageBox()輸出“Hello World”的例子程序,用PEID打開它,查看它的節表情況,如圖2所示。

圖2  PEID顯示的節表內容

從圖2的標題欄可以看到,這里不叫“節表”,而叫“區段”。還有別的資料上稱之為“區塊”或“節區”,只是叫法不同,內容都是一樣的。

從圖2中可以看到,節表的第一個節區的節名稱為“.text”。通常情況下,第一個節表項都是代碼區,入口點也通常落在這個節表項。在早期殼不流行時,通過判斷入口點是否在第一個節區就可以判斷該程序是否被病毒感。如今,由于殼的流行,這種判斷方法就不可靠了。關鍵要看的是“R.偏移”,表明了該節區在文件中的起始位置。PE頭部包括DOS頭、PE頭和節表,通常不會超過512字節,也就是說,不會超過0x200的大小。如果這個“R.偏移”為0x00001000,那么通常情況下可以確定該文件的磁盤對齊大小為0x1000。測試驗證一下這個程序,看到“V.偏移”與“R.偏移”相同,則說明磁盤對齊與內存對齊是一樣的,這樣就沒辦法完成演示轉換的工作了。不過,可以人為地修改文件對齊大小。也可以通過工具來修改文件對齊的大小。這里借助LordPE來修改其文件對齊大小。修改方法很簡單,先將要修改的測試文件復制一份,以與修改后的文件做對比。打開LordPE,單擊“重建PE”按鈕,然后選擇剛才復制的那個測試文件,如圖3和圖4所示。

圖3  LordPE界面

圖4  重建PE功能結果

PE重建功能中有壓縮文件大小的功能,這里的壓縮也就是修改磁盤文件的對齊值,避免過多地因對齊而進行補0,使其少占用磁盤空間。用PEID查看這個進行重建的PE文件的節表,如圖5所示。

圖5  重建PE文件后的節表

現在可以看到“V.偏移”與“R.偏移”的值不相同了,它們的對齊值也不相同了,大家可以自己驗證一下FileAlignment和SectionAlignment的值是否相同。

現在有兩個功能完全一樣,而且PE結構也一樣的兩個文件了,唯一的不同就是其磁盤對齊大小不同。現在在這兩個程序中分別尋找一個節表中的數據,學習不同地址之間的轉換。

先用OD打開未進行重建PE結構的測試程序,找到反匯編中調用MessageBox()處要彈出對話框的兩個字符串參數的地址,如圖6和圖7所示。

圖6  MessageBox()函數中使用的字符串地址

圖7  兩個字符串的地址在數據窗口的顯示

從圖6和圖7中可以看到,字符串“hello world !”的地址為0x00406030,字符串“hello”的地址為0x00406040。這兩個地址都是虛擬地址,也就是VA。

將VA(虛擬地址)轉換為RVA(相對虛擬地址)是很容易的,RVA(相對虛擬地址)為VA(虛擬地址)減去IMAGE_OPTIONAL_HEADER結構體中的ImageBase(映像文件的裝載虛擬地址)字段的值,即RVA = VA – ImageBase = 0x00406030 – 0x00400000 = 0x0000 6030。由于IMAGE_OPTIONAL_HEADER中的SectionAlignment和FileAlignment的值相同,因此其FileOffset的值也為0x00006030。用C32Asm打開該文件查看文件偏移地址0x00006030處的內容,如圖8所示。

圖8  文件偏移0x00006030處的內容為“hello world!”字符串

從這個例子中可以看出,當SectionAlignment和FileAlignment相同時,同一節表項中數據的RVA(相對虛擬地址)和FileOffset(文件偏移地址)是相同的。RVA的值是用VA – ImageBase計算得到的。

再用OD打開“重建PE”后的測試程序,同樣找到反匯編中調用MessageBox()函數使用的那個字符串“hello world !”,看其虛擬地址是多少。它的虛擬地址仍然是0x00406030。同樣,用虛擬地址減去裝載地址,相對虛擬地址的值仍然為0x00006030。不過用C32Asm打開該文件查看的話會有所不同。用C32Asm看一下0x00006030地址處的內容,如圖9所示。

圖9  文件偏移0x00006030處沒有“hello world!”字符串

從圖9中可以看到,用C32Asm打開該文件后,文件偏移0x00006030處并沒有“hello world!”和“hello”字符串。這就是由文件對齊與內存對齊的差異所引起的。這時就要通過一些簡單的計算把RVA轉換為FileOffset。

把RVA轉換為FileOffset的方法很簡單,首先看一下當前的RVA或者是FileOffset屬于哪個節。0x00006030這個RVA屬于.data節。0x00006030這個RVA相對于該節的起始RVA地址0x00006000來說偏移0x30字節。再看.data節在文件中的起始位置為0x00004000,以.data節的文件起始偏移0x00004000加上0x30字節的值為0x00004030。用C32Asm看一下0x00004030地址處的內容,如圖10所示。

圖10  0x00004030文件偏移處的內容

從圖10中可以看出,該文件偏移處保存著“hello world !”字符串,也就是說,將RVA轉換為FileOffset是正確的。通過LordPE工具來驗證一下,如圖11所示。

圖11  用LordPE計算RVA為0x00006030的文件偏移

再來回顧一下這個過程。

某數據的文件偏移 = 該數據所在節的起始文件偏移 + (某數據的RVA –該數據所在節的起始RVA)。

除了上面的計算方法以外,還有一種計算方法,即用節的起始RVA值減去節的起始文件偏移值,得到一個差值,再用RVA減去這個得到的差值,就可以得到其所對應的FileOffset。可以使用例子程序進行手工計算,然后通過LordPE進行驗證。

知道如何通過RVA轉換為文件偏移,那么通過文件偏移轉換為RVA的方法也就不難了。這3種地址相互的轉換方法就介紹完了。如果沒有理解,就可以反復地按照公式進行學習和計算。只要在頭腦中建立關于磁盤文件和內存映像的結構,那么理解起來就不會太吃力。 

 

責任編輯:龐桂玉 來源: 計算機與網絡安全
相關推薦

2021-04-28 14:35:48

網絡安全PE編程代碼

2021-04-19 10:26:41

網絡安全PE文件

2021-04-25 21:25:09

網絡安全網絡安全編程PE編程

2021-04-30 18:50:44

網絡安全PE編程添加節區

2021-04-26 10:32:38

網絡安全PE編程工具

2021-03-01 11:38:15

網絡安全進程代碼

2021-03-03 12:20:42

網絡安全DLL編程

2022-01-09 17:36:26

網絡代碼安全

2021-03-05 13:46:56

網絡安全遠程線程

2021-01-26 13:45:03

網絡安全Winsock編程

2019-07-30 08:42:54

網絡訪問控制網絡地址轉換網絡

2021-02-21 18:19:43

網絡安全網絡安全編程創建進程

2021-06-11 13:40:17

網絡安全專殺工具病毒

2021-02-05 15:20:06

網絡安全套接字命令

2021-02-23 10:20:07

網絡安全進程代碼

2010-12-02 11:27:07

NAT網絡地址轉換

2011-03-24 11:47:24

網絡安全實名認證IP

2021-04-13 11:15:54

網絡安全C語言循環結構

2021-04-08 11:10:22

網絡安全C語言if…else…

2019-03-25 20:31:58

IP地址轉換數字
點贊
收藏

51CTO技術棧公眾號

色菇凉天天综合网| 99久久精品免费看| 欧美床上激情在线观看| 在线观看免费视频国产| 色综合一本到久久亚洲91| 国产精品进线69影院| 成人在线观看网址| 日本丰满少妇做爰爽爽| 综合激情网站| 亚洲午夜av久久乱码| 一级 黄 色 片一| 日韩精品美女| 日韩理论片网站| 看高清中日韩色视频| 国产视频一二三四区| 亚洲自啪免费| 久久99久久久久久久噜噜| 蜜桃传媒一区二区亚洲av| 亚洲一区有码| 色婷婷激情一区二区三区| 中文字幕在线乱| 黄色片在线播放| 国产+成+人+亚洲欧洲自线| 国产91免费看片| 久久午夜鲁丝片午夜精品| 日韩电影二区| 亚洲欧美国内爽妇网| youjizz.com日本| 99视频这里有精品| 欧美性大战久久| 精品国产一二三四区| av片在线观看免费| 国产精品久久三| 日韩欧美精品一区二区| 手机看片福利在线观看| 久草精品在线观看| 国产精品视频内| 天干夜夜爽爽日日日日| 一本一本久久| 国产+人+亚洲| 日本特黄特色aaa大片免费| 欧美一区不卡| 久久五月情影视| 亚洲女同二女同志奶水| 青青草91久久久久久久久| 亚洲日本中文字幕| 免费看污片网站| 欧美黑人巨大videos精品| 精品国产在天天线2019| 性生活一级大片| 国产精区一区二区| 在线成人免费视频| 想看黄色一级片| 国产高清精品二区| 在线不卡欧美精品一区二区三区| 欧美日韩亚洲自拍| 全球最大av网站久久| 在线免费不卡电影| 天堂av在线网站| 日韩电影精品| 制服丝袜av成人在线看| 香蕉视频xxx| 日韩中文字幕无砖| 精品美女在线观看| 国产精品久久久久久亚洲av| 极品一区美女高清| 日韩精品免费观看| 精品无人区无码乱码毛片国产| 曰本一区二区三区视频| 亚洲品质视频自拍网| 少妇无套高潮一二三区| 色一区二区三区四区| 久久最新资源网| 久久久久97国产| 国产精品久久久免费| 欧美孕妇孕交黑巨大网站| 岛国av中文字幕| 麻豆高清免费国产一区| 成人黄色在线观看| a天堂在线视频| 成人黄色在线网站| 日本一区二区三不卡| 日本在线看片免费人成视1000| 亚洲欧洲制服丝袜| 国产精品一区二区免费在线观看| 国产精品一区二区av影院萌芽| 欧美三级电影在线看| 亚洲成人av免费观看| 欧美黄色录像| y97精品国产97久久久久久| 国产在线视频你懂的| 久久蜜桃精品| 97av影视网在线观看| 视频福利在线| 亚洲日本一区二区三区| 91视频 -- 69xx| 亚洲青青一区| 日韩精品久久久久| 国产精品夜夜夜爽阿娇| 亚洲精品资源| 成人精品一区二区三区| 香蕉视频免费在线看| 中文字幕一区二区三区蜜月| 久久av综合网| 欧美日韩卡一| 日韩精品免费在线| 亚洲国产成人精品综合99| 校园春色综合网| 91久久在线播放| 男女污视频在线观看| 一区av在线播放| 成年人在线观看视频免费| 91久久精品无嫩草影院| 自拍偷拍亚洲一区| 日本在线播放视频| 国产盗摄女厕一区二区三区| 视频一区视频二区视频三区视频四区国产 | 川上优av中文字幕一区二区| 欧美三级电影在线看| 久久丫精品国产亚洲av不卡| 中文字幕av亚洲精品一部二部| 国产成人综合亚洲| 亚洲日本香蕉视频| 亚洲最新在线观看| 涩多多在线观看| 久久要要av| 国产精品久久久久久久久久久新郎 | 激情偷乱视频一区二区三区| 蜜桃日韩视频| 51漫画成人app入口| 欧美久久久久久久久中文字幕| 黄色免费看视频| 在线电影一区| 国产精品免费一区二区三区| fc2ppv国产精品久久| 精品视频在线免费观看| a级片在线观看| 国产精品久久国产愉拍| 狠狠色综合一区二区| 青青在线视频| 精品国产a毛片| 精品一区二区三区四| 岛国精品在线观看| 久久久国内精品| 97久久综合区小说区图片区 | 爱啪视频在线观看视频免费| 日韩欧美一区二区久久婷婷| 欧美三级黄色大片| 国产在线播放一区二区三区| 五月天色婷婷综合| 国产精品亚洲欧美日韩一区在线| xxxx欧美18另类的高清| 一区二区三区黄| 日韩一区在线免费观看| 肉色超薄丝袜脚交| 欧美成熟视频| 国产精品免费一区二区三区在线观看 | 久久精品一区八戒影视| 蜜臀久久99精品久久久酒店新书| 国产乱码精品一区二区亚洲 | 无码人妻精品一区二区蜜桃色欲 | 欧美mv日韩mv国产网站| 久久免费视频6| 99久久精品国产导航| 久久国产乱子伦免费精品| 精品国产成人| 成人网欧美在线视频| 中文av资源在线| 亚洲第一av网| 91久久国产综合久久91| 国产精品久久久久久一区二区三区 | 精品人人视频| 亚洲欧美综合另类中字| 在线观看免费视频a| 亚洲精品成人精品456| 日本不卡视频一区| 久久中文在线| 日韩人妻精品一区二区三区| 国产成人精品福利| 国产成人中文字幕| 高清免费电影在线观看| 亚洲国产另类 国产精品国产免费| 天天干天天干天天干天天| 中文字幕第一页久久| 美女被艹视频网站| 亚洲欧美成人| 欧美xxxx吸乳| 亚洲另类春色校园小说| 成人福利网站在线观看11| 波多野结衣乳巨码无在线观看| 亚洲丝袜av一区| 国产高中女学生第一次| 一本色道综合亚洲| 欧美日韩亚洲国产另类| 国产午夜三级一区二区三| 国产传媒免费观看| 久久综合中文| 高清无码视频直接看| 亚洲最好看的视频| 99久久久精品免费观看国产| 毛片无码国产| 欧美激情手机在线视频| 电影在线一区| 亚洲成人久久一区| 国产又粗又猛又黄又爽| 欧美日韩美女视频| 欧美三级免费看| 欧美韩国日本不卡| 少妇光屁股影院| 国产不卡在线一区| 天天干天天操天天玩| 日韩亚洲国产欧美| 一本色道久久88亚洲精品综合| 国产综合久久久| 精品日韩美女| 中文字幕一区二区三区日韩精品| 国产精品丝袜久久久久久不卡| av资源中文在线| 久久亚洲精品中文字幕冲田杏梨| 成人在线高清视频| 日韩黄色av网站| 亚洲精品久久久久久动漫器材一区| 欧美亚男人的天堂| 成人毛片在线播放| 亚洲 欧美综合在线网络| 最新一区二区三区| 亚洲欧洲性图库| 天天操天天干天天操天天干| ww亚洲ww在线观看国产| 亚洲av永久无码精品| 国产精品一区二区久久不卡| 97超碰成人在线| 蜜桃视频在线一区| 蜜臀av免费观看| 日韩电影免费在线看| 亚洲成熟丰满熟妇高潮xxxxx| 亚洲高清毛片| 久操网在线观看| 亚洲国产导航| 农民人伦一区二区三区| 好看不卡的中文字幕| 久久国产精品免费观看| 亚洲影视一区| 最新视频 - x88av| 欧美成人首页| 丁香六月激情婷婷| 亚洲激情精品| 欧美精品99久久| 亚洲欧美卡通另类91av| 国产l精品国产亚洲区久久| 99成人在线| 久久精品人人做人人爽| 中文字幕欧美视频| 亚洲综合不卡| 欧美少妇性生活视频| 久久一区中文字幕| 污污网站免费看| 国内成人自拍视频| 69亚洲乱人伦| 99久久国产综合精品女不卡 | 欧美激情一二三区| 国产wwwwxxxx| 一区二区三区四区在线播放| 久热精品在线观看| 欧美午夜影院在线视频| 成人av网站在线播放| 欧美日韩一级片网站| 一区二区三区日| 精品少妇一区二区三区在线视频| 丰满人妻一区二区| 亚洲嫩模很污视频| 欧美一级二级三级区| 欧美成人自拍视频| 男人久久天堂| 国产女精品视频网站免费| 日韩影片在线观看| 久久精品99久久| 日本一本不卡| wwwwww欧美| 久久激情视频| 在线观看日本www| 91美女精品福利| 日本少妇aaa| 亚洲国产精品一区二区久久| 日本一本在线观看| 日韩一区二区免费视频| 青青操在线视频| 美女精品视频一区| 欧美7777| www.成人三级视频| 久久爱www成人| 欧美在线观看黄| 日韩avvvv在线播放| 国产精品99久久久精品无码| 26uuu精品一区二区| 欧美视频www| 色噜噜久久综合| 欧美一级性视频| 色系列之999| 在线高清av| 97人人干人人| 青青草综合网| 熟女性饥渴一区二区三区| 国产最新精品免费| 鲁丝一区二区三区| 亚洲电影在线播放| 国产精品免费无遮挡| 亚洲欧洲日本专区| av在线小说| 亚洲一区精品电影| 精品高清在线| 精品人妻一区二区三区四区在线| 精久久久久久久久久久| 中文字幕在线看高清电影| 亚洲国产日韩a在线播放性色| 国产又粗又长又大视频| 中文字幕不卡在线视频极品| 日本不卡1234视频| 成人动漫在线视频| **女人18毛片一区二区| 三年中国国语在线播放免费| av一区二区不卡| 国产亚洲欧美久久久久| 欧美一二三四在线| 麻豆视频网站在线观看| 国产精品久久久精品| 久久99国产精品视频| 精品中文字幕av| 91影院在线观看| 日本一区二区网站| 亚洲第一国产精品| 国精一区二区三区| 成人黄色片视频网站| 在线国产一区| 亚洲在线观看网站| 亚洲人成网站影音先锋播放| 91福利在线观看视频| 视频在线一区二区| 国产精品美女午夜爽爽| 亚洲国产一区二区三区在线播| 视频一区二区三区入口| 西西444www无码大胆| 日本电影亚洲天堂一区| 裸体xxxx视频在线| 国产精品99导航| 精品美女久久久| av污在线观看| 国产精品嫩草影院com| 一级特黄aa大片| 久久精品亚洲热| 亚洲精品a区| 水蜜桃色314在线观看| 99国产精品久久| 高清乱码免费看污| 一本一本久久a久久精品牛牛影视| 色猫猫成人app| 五月天色婷婷综合| 国产成a人无v码亚洲福利| 影音先锋亚洲天堂| 亚洲欧美国产一区二区三区| jvid一区二区三区| 福利在线小视频| 国产精品白丝jk黑袜喷水| 国产精品18p| 亚洲欧美日韩一区二区三区在线| 视频在线日韩| 久久久成人精品一区二区三区| 国产福利91精品一区| 国产成人在线播放视频| 亚洲精品一区二区三区婷婷月| 日韩一区二区三区在线免费观看| 一本久久a久久精品vr综合| 国产成人午夜精品影院观看视频| 日本在线视频免费观看| 永久免费毛片在线播放不卡| 粉嫩av国产一区二区三区| 人妻激情另类乱人伦人妻| 久久丝袜美腿综合| 国产精品久久欧美久久一区| 欧美激情视频网| 成人情趣视频网站| 欧美丰满熟妇bbb久久久| 精品美女永久免费视频| 成人在线高清视频| 99久久一区三区四区免费| 亚洲一区图片| 顶臀精品视频www| 亚洲美女性视频| 国产一区二区三区视频在线| 国产精品裸体瑜伽视频| 欧美激情在线看| 欧日韩在线视频| 成人中文字幕+乱码+中文字幕| 亚洲国产导航| 2025国产精品自拍| 亚洲情综合五月天| gogo人体一区| 狠狠操狠狠干视频| 欧美性高潮床叫视频| 日韩影视在线|