| |
|
|
| Noch ein Goldstück aus der TNT-Schatzkammer: Wir starten TNT und schauen uns einmal die USER32.DLL im TNT Prozess an - vorher bitte aber im Menu Erweiterte Exportfunktionssuche auswählen. Jetzt mittels Rechtsklick auf Gefundene Exportfunktionen: die Exportfunktionen in die Zwischenablage kopieren und in irgendein Word-Dokument zwischenspeichern. Danach die Ladeadresse des Moduls im Prozess, die e Einsprungsadresse des Moduls im Prozess und die Adresse der Exportsektion ebenfalls kopieren und dort einfügen. Bei mir kommt das heraus (Windows2000): [box:0cfc1d18f2] 1. Funktion Name: ActivateKeyboardLayout 1. Funktion Adresse im Prozess: 2011245688 1. Funktion Adresse ab Offset des Moduls: 76920
2. Funktion Name: AdjustWindowRect 2. Funktion Adresse im Prozess: 2011254280 2. Funktion Adresse ab Offset des Moduls: 85512
3. Funktion Name: AdjustWindowRectEx 3. Funktion Adresse im Prozess: 2011197974 3. Funktion Adresse ab Offset des Moduls: 29206
4. Funktion Name: AlignRects 4. Funktion Adresse im Prozess: 2011493835 4. Funktion Adresse ab Offset des Moduls: 325067
5. Funktion Name: AllowSetForegroundWindow 5. Funktion Adresse im Prozess: 2011234139 5. Funktion Adresse ab Offset des Moduls: 65371
6. Funktion Name: AnimateWindow 6. Funktion Adresse im Prozess: 2011308835 6. Funktion Adresse ab Offset des Moduls: 140067
7. Funktion Name: AnyPopup 7. Funktion Adresse im Prozess: 2011480293 7. Funktion Adresse ab Offset des Moduls: 311525
8. Funktion Name: AppendMenuA 8. Funktion Adresse im Prozess: 2011247766 8. Funktion Adresse ab Offset des Moduls: 78998
9. Funktion Name: AppendMenuW 9. Funktion Adresse im Prozess: 2011327550 9. Funktion Adresse ab Offset des Moduls: 158782
10. Funktion Name: ArrangeIconicWindows 10. Funktion Adresse im Prozess: 2011418844 10. Funktion Adresse ab Offset des Moduls: 250076
11. Funktion Name: AttachThreadInput 11. Funktion Adresse im Prozess: 2011285863 11. Funktion Adresse ab Offset des Moduls: 117095
12. Funktion Name: BeginDeferWindowPos 12. Funktion Adresse im Prozess: 2011199137 12. Funktion Adresse ab Offset des Moduls: 30369
13. Funktion Name: BeginPaint 13. Funktion Adresse im Prozess: 2011184489 13. Funktion Adresse ab Offset des Moduls: 15721
14. Funktion Name: BlockInput 14. Funktion Adresse im Prozess: 2011491773 14. Funktion Adresse ab Offset des Moduls: 323005
15. Funktion Name: BringWindowToTop 15. Funktion Adresse im Prozess: 2011198909 15. Funktion Adresse ab Offset des Moduls: 30141
16. Funktion Name: BroadcastSystemMessage 16. Funktion Adresse im Prozess: 2011484994 16. Funktion Adresse ab Offset des Moduls: 316226
17. Funktion Name: BroadcastSystemMessageA 17. Funktion Adresse im Prozess: 2011484994 17. Funktion Adresse ab Offset des Moduls: 316226
18. Funktion Name: BroadcastSystemMessageW 18. Funktion Adresse im Prozess: 2011315291 18. Funktion Adresse ab Offset des Moduls: 146523
19. Funktion Name: CallMsgFilter 19. Funktion Adresse im Prozess: 2011315745 19. Funktion Adresse ab Offset des Moduls: 146977
20. Funktion Name: CallMsgFilterA 20. Funktion Adresse im Prozess: 2011315745 20. Funktion Adresse ab Offset des Moduls: 146977
21. Funktion Name: CallMsgFilterW 21. Funktion Adresse im Prozess: 2011208178 21. Funktion Adresse ab Offset des Moduls: 39410
22. Funktion Name: CallNextHookEx 22. Funktion Adresse im Prozess: 2011252324 22. Funktion Adresse ab Offset des Moduls: 83556
23. Funktion Name: CallWindowProcA 23. Funktion Adresse im Prozess: 2011196117 23. Funktion Adresse ab Offset des Moduls: 27349
24. Funktion Name: CallWindowProcW 24. Funktion Adresse im Prozess: 2011196146 24. Funktion Adresse ab Offset des Moduls: 27378
25. Funktion Name: CascadeChildWindows 25. Funktion Adresse im Prozess: 2011418858 25. Funktion Adresse ab Offset des Moduls: 250090
26. Funktion Name: CascadeWindows 26. Funktion Adresse im Prozess: 2011465153 26. Funktion Adresse ab Offset des Moduls: 296385
27. Funktion Name: ChangeClipboardChain 27. Funktion Adresse im Prozess: 2011256424 27. Funktion Adresse ab Offset des Moduls: 87656
28. Funktion Name: ChangeDisplaySettingsA 28. Funktion Adresse im Prozess: 2011485843 28. Funktion Adresse ab Offset des Moduls: 317075
29. Funktion Name: ChangeDisplaySettingsExA 29. Funktion Adresse im Prozess: 2011485873 29. Funktion Adresse ab Offset des Moduls: 317105
30. Funktion Name: ChangeDisplaySettingsExW 30. Funktion Adresse im Prozess: 2011429049 30. Funktion Adresse ab Offset des Moduls: 260281
31. Funktion Name: ChangeDisplaySettingsW 31. Funktion Adresse im Prozess: 2011429019 31. Funktion Adresse ab Offset des Moduls: 260251
32. Funktion Name: ChangeMenuA 32. Funktion Adresse im Prozess: 2011376593 32. Funktion Adresse ab Offset des Moduls: 207825
33. Funktion Name: ChangeMenuW 33. Funktion Adresse im Prozess: 2011465321 33. Funktion Adresse ab Offset des Moduls: 296553
34. Funktion Name: CharLowerA 34. Funktion Adresse im Prozess: 2011210584 34. Funktion Adresse ab Offset des Moduls: 41816
35. Funktion Name: CharLowerBuffA 35. Funktion Adresse im Prozess: 2011210723 35. Funktion Adresse ab Offset des Moduls: 41955
36. Funktion Name: CharLowerBuffW 36. Funktion Adresse im Prozess: 2011190487 36. Funktion Adresse ab Offset des Moduls: 21719
37. Funktion Name: CharLowerW 37. Funktion Adresse im Prozess: 2011190540 37. Funktion Adresse ab Offset des Moduls: 21772
38. Funktion Name: CharNextA 38. Funktion Adresse im Prozess: 2011188676 38. Funktion Adresse ab Offset des Moduls: 19908
39. Funktion Name: CharNextExA 39. Funktion Adresse im Prozess: 2011479374 39. Funktion Adresse ab Offset des Moduls: 310606
40. Funktion Name: CharNextW 40. Funktion Adresse im Prozess: 2011190249 40. Funktion Adresse ab Offset des Moduls: 21481
41. Funktion Name: CharPrevA 41. Funktion Adresse im Prozess: 2011253369 41. Funktion Adresse ab Offset des Moduls: 84601
42. Funktion Name: CharPrevExA 42. Funktion Adresse im Prozess: 2011479419 42. Funktion Adresse ab Offset des Moduls: 310651
43. Funktion Name: CharPrevW 43. Funktion Adresse im Prozess: 2011190310 43. Funktion Adresse ab Offset des Moduls: 21542
44. Funktion Name: CharToOemA 44. Funktion Adresse im Prozess: 2011182664 44. Funktion Adresse ab Offset des Moduls: 13896
45. Funktion Name: CharToOemBuffA 45. Funktion Adresse im Prozess: 2011341958 45. Funktion Adresse ab Offset des Moduls: 173190
46. Funktion Name: CharToOemBuffW 46. Funktion Adresse im Prozess: 2011472284 46. Funktion Adresse ab Offset des Moduls: 303516
47. Funktion Name: CharToOemW 47. Funktion Adresse im Prozess: 2011472215 47. Funktion Adresse ab Offset des Moduls: 303447
48. Funktion Name: CharUpperA 48. Funktion Adresse im Prozess: 2011184843 48. Funktion Adresse ab Offset des Moduls: 16075
49. Funktion Name: CharUpperBuffA 49. Funktion Adresse im Prozess: 2011245428 49. Funktion Adresse ab Offset des Moduls: 76660
50. Funktion Name: CharUpperBuffW 50. Funktion Adresse im Prozess: 2011184982 50. Funktion Adresse ab Offset des Moduls: 16214
51. Funktion Name: CharUpperW 51. Funktion Adresse im Prozess: 2011185035 51. Funktion Adresse ab Offset des Moduls: 16267
52. Funktion Name: CheckDlgButton 52. Funktion Adresse im Prozess: 2011285959 52. Funktion Adresse ab Offset des Moduls: 117191
53. Funktion Name: CheckMenuItem 53. Funktion Adresse im Prozess: 2011328763 53. Funktion Adresse ab Offset des Moduls: 159995
54. Funktion Name: CheckMenuRadioItem 54. Funktion Adresse im Prozess: 2011340619 54. Funktion Adresse ab Offset des Moduls: 171851
55. Funktion Name: CheckRadioButton 55. Funktion Adresse im Prozess: 2011283379 55. Funktion Adresse ab Offset des Moduls: 114611
56. Funktion Name: ChildWindowFromPoint 56. Funktion Adresse im Prozess: 2011340410 56. Funktion Adresse ab Offset des Moduls: 171642
57. Funktion Name: ChildWindowFromPointEx 57. Funktion Adresse im Prozess: 2011281464 57. Funktion Adresse ab Offset des Moduls: 112696
58. Funktion Name: CliImmSetHotKey 58. Funktion Adresse im Prozess: 2011410204 58. Funktion Adresse ab Offset des Moduls: 241436
59. Funktion Name: ClientThreadSetup 59. Funktion Adresse im Prozess: 2011242778 59. Funktion Adresse ab Offset des Moduls: 74010
60. Funktion Name: ClientToScreen 60. Funktion Adresse im Prozess: 2011192742 60. Funktion Adresse ab Offset des Moduls: 23974
61. Funktion Name: ClipCursor 61. Funktion Adresse im Prozess: 2011491815 61. Funktion Adresse ab Offset des Moduls: 323047
62. Funktion Name: CloseClipboard 62. Funktion Adresse im Prozess: 2011249839 62. Funktion Adresse ab Offset des Moduls: 81071
63. Funktion Name: CloseDesktop 63. Funktion Adresse im Prozess: 2011244941 63. Funktion Adresse ab Offset des Moduls: 76173
64. Funktion Name: CloseWindow 64. Funktion Adresse im Prozess: 2011418882 64. Funktion Adresse ab Offset des Moduls: 250114
65. Funktion Name: CloseWindowStation 65. Funktion Adresse im Prozess: 2011244913 65. Funktion Adresse ab Offset des Moduls: 76145
66. Funktion Name: CopyAcceleratorTableA 66. Funktion Adresse im Prozess: 2011332075 66. Funktion Adresse ab Offset des Moduls: 163307
67. Funktion Name: CopyAcceleratorTableW 67. Funktion Adresse im Prozess: 2011234153 67. Funktion Adresse ab Offset des Moduls: 65385
68. Funktion Name: CopyIcon 68. Funktion Adresse im Prozess: 2011328654 68. Funktion Adresse ab Offset des Moduls: 159886
69. Funktion Name: CopyImage 69. Funktion Adresse im Prozess: 2011232406 69. Funktion Adresse ab Offset des Moduls: 63638
70. Funktion Name: CopyRect 70. Funktion Adresse im Prozess: 2011194030 70. Funktion Adresse ab Offset des Moduls: 25262
71. Funktion Name: CountClipboardFormats 71. Funktion Adresse im Prozess: 2011250066 71. Funktion Adresse ab Offset des Moduls: 81298
72. Funktion Name: CreateAcceleratorTableA 72. Funktion Adresse im Prozess: 2011325429 72. Funktion Adresse ab Offset des Moduls: 156661
73. Funktion Name: CreateAcceleratorTableW 73. Funktion Adresse im Prozess: 2011327988 73. Funktion Adresse ab Offset des Moduls: 159220
74. Funktion Name: CreateCaret 74. Funktion Adresse im Prozess: 2011196313 74. Funktion Adresse ab Offset des Moduls: 27545
75. Funktion Name: CreateCursor 75. Funktion Adresse im Prozess: 2011422321 75. Funktion Adresse ab Offset des Moduls: 253553
76. Funktion Name: CreateDesktopA 76. Funktion Adresse im Prozess: 2011418576 76. Funktion Adresse ab Offset des Moduls: 249808
77. Funktion Name: CreateDesktopW 77. Funktion Adresse im Prozess: 2011176813 77. Funktion Adresse ab Offset des Moduls: 8045
78. Funktion Name: CreateDialogIndirectParamA 78. Funktion Adresse im Prozess: 2011255720 78. Funktion Adresse ab Offset des Moduls: 86952
79. Funktion Name: CreateDialogIndirectParamAorW 79. Funktion Adresse im Prozess: 2011225486 79. Funktion Adresse ab Offset des Moduls: 56718
80. Funktion Name: CreateDialogIndirectParamW 80. Funktion Adresse im Prozess: 2011207945 80. Funktion Adresse ab Offset des Moduls: 39177
81. Funktion Name: CreateDialogParamA 81. Funktion Adresse im Prozess: 2011214621 81. Funktion Adresse ab Offset des Moduls: 45853
82. Funktion Name: CreateDialogParamW 82. Funktion Adresse im Prozess: 2011304876 82. Funktion Adresse ab Offset des Moduls: 136108
83. Funktion Name: CreateIcon 83. Funktion Adresse im Prozess: 2011356336 83. Funktion Adresse ab Offset des Moduls: 187568
84. Funktion Name: CreateIconFromResource 84. Funktion Adresse im Prozess: 2011422515 84. Funktion Adresse ab Offset des Moduls: 253747
85. Funktion Name: CreateIconFromResourceEx 85. Funktion Adresse im Prozess: 2011327204 85. Funktion Adresse ab Offset des Moduls: 158436
86. Funktion Name: CreateIconIndirect 86. Funktion Adresse im Prozess: 2011328274 86. Funktion Adresse ab Offset des Moduls: 159506
87. Funktion Name: CreateMDIWindowA 87. Funktion Adresse im Prozess: 2011295918 87. Funktion Adresse ab Offset des Moduls: 127150
88. Funktion Name: CreateMDIWindowW 88. Funktion Adresse im Prozess: 2011357207 88. Funktion Adresse ab Offset des Moduls: 188439
89. Funktion Name: CreateMenu 89. Funktion Adresse im Prozess: 2011247347 89. Funktion Adresse ab Offset des Moduls: 78579
90. Funktion Name: CreatePopupMenu 90. Funktion Adresse im Prozess: 2011249717 90. Funktion Adresse ab Offset des Moduls: 80949
91. Funktion Name: CreateWindowExA 91. Funktion Adresse im Prozess: 2011204611 91. Funktion Adresse ab Offset des Moduls: 35843
92. Funktion Name: CreateWindowExW 92. Funktion Adresse im Prozess: 2011204561 92. Funktion Adresse ab Offset des Moduls: 35793
93. Funktion Name: CreateWindowStationA 93. Funktion Adresse im Prozess: 2011418446 93. Funktion Adresse ab Offset des Moduls: 249678
94. Funktion Name: CreateWindowStationW 94. Funktion Adresse im Prozess: 2011175119 94. Funktion Adresse ab Offset des Moduls: 6351
95. Funktion Name: CtxInitUser32 95. Funktion Adresse im Prozess: 2011420512 95. Funktion Adresse ab Offset des Moduls: 251744
96. Funktion Name: DdeAbandonTransaction 96. Funktion Adresse im Prozess: 2011483635 96. Funktion Adresse ab Offset des Moduls: 314867
97. Funktion Name: DdeAccessData 97. Funktion Adresse im Prozess: 2011351713 97. Funktion Adresse ab Offset des Moduls: 182945
98. Funktion Name: DdeAddData 98. Funktion Adresse im Prozess: 2011451656 98. Funktion Adresse ab Offset des Moduls: 282888
99. Funktion Name: DdeClientTransaction 99. Funktion Adresse im Prozess: 2011348707 99. Funktion Adresse ab Offset des Moduls: 179939
100. Funktion Name: DdeCmpStringHandles 100. Funktion Adresse im Prozess: 2011340578 100. Funktion Adresse ab Offset des Moduls: 171810
101. Funktion Name: DdeConnect 101. Funktion Adresse im Prozess: 2011347316 101. Funktion Adresse ab Offset des Moduls: 178548
102. Funktion Name: DdeConnectList 102. Funktion Adresse im Prozess: 2011423602 102. Funktion Adresse ab Offset des Moduls: 254834
103. Funktion Name: DdeCreateDataHandle 103. Funktion Adresse im Prozess: 2011351079 103. Funktion Adresse ab Offset des Moduls: 182311
104. Funktion Name: DdeCreateStringHandleA 104. Funktion Adresse im Prozess: 2011322392 104. Funktion Adresse ab Offset des Moduls: 153624
105. Funktion Name: DdeCreateStringHandleW 105. Funktion Adresse im Prozess: 2011357030 105. Funktion Adresse ab Offset des Moduls: 188262
106. Funktion Name: DdeDisconnect 106. Funktion Adresse im Prozess: 2011349894 106. Funktion Adresse ab Offset des Moduls: 181126
107. Funktion Name: DdeDisconnectList 107. Funktion Adresse im Prozess: 2011425358 107. Funktion Adresse ab Offset des Moduls: 256590
108. Funktion Name: DdeEnableCallback 108. Funktion Adresse im Prozess: 2011414428 108. Funktion Adresse ab Offset des Moduls: 245660
109. Funktion Name: DdeFreeDataHandle 109. Funktion Adresse im Prozess: 2011351231 109. Funktion Adresse ab Offset des Moduls: 182463
110. Funktion Name: DdeFreeStringHandle 110. Funktion Adresse im Prozess: 2011320857 110. Funktion Adresse ab Offset des Moduls: 152089
111. Funktion Name: DdeGetData 111. Funktion Adresse im Prozess: 2011347045 111. Funktion Adresse ab Offset des Moduls: 178277
112. Funktion Name: DdeGetLastError 112. Funktion Adresse im Prozess: 2011430418 112. Funktion Adresse ab Offset des Moduls: 261650
113. Funktion Name: DdeGetQualityOfService 113. Funktion Adresse im Prozess: 2011344527 113. Funktion Adresse ab Offset des Moduls: 175759
114. Funktion Name: DdeImpersonateClient 114. Funktion Adresse im Prozess: 2011430473 114. Funktion Adresse ab Offset des Moduls: 261705
115. Funktion Name: DdeInitializeA 115. Funktion Adresse im Prozess: 2011322915 115. Funktion Adresse ab Offset des Moduls: 154147
116. Funktion Name: DdeInitializeW 116. Funktion Adresse im Prozess: 2011356997 116. Funktion Adresse ab Offset des Moduls: 188229
117. Funktion Name: DdeKeepStringHandle 117. Funktion Adresse im Prozess: 2011454257 117. Funktion Adresse ab Offset des Moduls: 285489
118. Funktion Name: DdeNameService 118. Funktion Adresse im Prozess: 2011321288 118. Funktion Adresse ab Offset des Moduls: 152520
119. Funktion Name: DdePostAdvise 119. Funktion Adresse im Prozess: 2011483967 119. Funktion Adresse ab Offset des Moduls: 315199
120. Funktion Name: DdeQueryConvInfo 120. Funktion Adresse im Prozess: 2011346404 120. Funktion Adresse ab Offset des Moduls: 177636
121. Funktion Name: DdeQueryNextServer 121. Funktion Adresse im Prozess: 2011425022 121. Funktion Adresse ab Offset des Moduls: 256254
122. Funktion Name: DdeQueryStringA 122. Funktion Adresse im Prozess: 2011341318 122. Funktion Adresse ab Offset des Moduls: 172550
123. Funktion Name: DdeQueryStringW 123. Funktion Adresse im Prozess: 2011454034 123. Funktion Adresse ab Offset des Moduls: 285266
124. Funktion Name: DdeReconnect 124. Funktion Adresse im Prozess: 2011424141 124. Funktion Adresse ab Offset des Moduls: 255373
125. Funktion Name: DdeSetQualityOfService 125. Funktion Adresse im Prozess: 2011348461 125. Funktion Adresse ab Offset des Moduls: 179693
126. Funktion Name: DdeSetUserHandle 126. Funktion Adresse im Prozess: 2011483468 126. Funktion Adresse ab Offset des Moduls: 314700
127. Funktion Name: DdeUnaccessData 127. Funktion Adresse im Prozess: 2011351814 127. Funktion Adresse ab Offset des Moduls: 183046
128. Funktion Name: DdeUninitialize 128. Funktion Adresse im Prozess: 2011323502 128. Funktion Adresse ab Offset des Moduls: 154734
129. Funktion Name: DefDlgProcA 129. Funktion Adresse im Prozess: 2011198284 129. Funktion Adresse ab Offset des Moduls: 29516
130. Funktion Name: DefDlgProcW 130. Funktion Adresse im Prozess: 2011198454 130. Funktion Adresse ab Offset des Moduls: 29686
131. Funktion Name: DefFrameProcA 131. Funktion Adresse im Prozess: 2011257045 131. Funktion Adresse ab Offset des Moduls: 88277
132. Funktion Name: DefFrameProcW 132. Funktion Adresse im Prozess: 2011207854 132. Funktion Adresse ab Offset des Moduls: 39086
133. Funktion Name: DefMDIChildProcA 133. Funktion Adresse im Prozess: 2011258475 133. Funktion Adresse ab Offset des Moduls: 89707
134. Funktion Name: DefMDIChildProcW 134. Funktion Adresse im Prozess: 2011207919 134. Funktion Adresse ab Offset des Moduls: 39151
135. Funktion Name: DefWindowProcA 135. Funktion Adresse im Prozess: 2011188942 135. Funktion Adresse ab Offset des Moduls: 20174
136. Funktion Name: DefWindowProcW 136. Funktion Adresse im Prozess: 2011187057 136. Funktion Adresse ab Offset des Moduls: 18289
137. Funktion Name: DeferWindowPos 137. Funktion Adresse im Prozess: 2011199190 137. Funktion Adresse ab Offset des Moduls: 30422
138. Funktion Name: DeleteMenu 138. Funktion Adresse im Prozess: 2011206297 138. Funktion Adresse ab Offset des Moduls: 37529
139. Funktion Name: DeregisterShellHookWindow 139. Funktion Adresse im Prozess: 2011419417 139. Funktion Adresse ab Offset des Moduls: 250649
140. Funktion Name: DestroyAcceleratorTable 140. Funktion Adresse im Prozess: 2011332532 140. Funktion Adresse ab Offset des Moduls: 163764
141. Funktion Name: DestroyCaret 141. Funktion Adresse im Prozess: 2011199247 141. Funktion Adresse ab Offset des Moduls: 30479
142. Funktion Name: DestroyCursor 142. Funktion Adresse im Prozess: 2011198584 142. Funktion Adresse ab Offset des Moduls: 29816
143. Funktion Name: DestroyIcon 143. Funktion Adresse im Prozess: 2011198584 143. Funktion Adresse ab Offset des Moduls: 29816
144. Funktion Name: DestroyMenu 144. Funktion Adresse im Prozess: 2011249703 144. Funktion Adresse ab Offset des Moduls: 80935
145. Funktion Name: DestroyWindow 145. Funktion Adresse im Prozess: 2011192281 145. Funktion Adresse ab Offset des Moduls: 23513
146. Funktion Name: DeviceEventWorker 146. Funktion Adresse im Prozess: 2011177929 146. Funktion Adresse ab Offset des Moduls: 9161 ... [/box:0cfc1d18f2] Jetzt klicken wir im Treeview mal zurück auf den Prozess Tasks and Token und lassen uns mal mittels Rechtsklick ins Treeview mal 4000 Bytes des Prozessspeichers von TNT als dezimale Doublewords auslesen. Als Startadresse nehmen wir hier die Ladeadresse der USER32.DLL (bei mir 2011168768). Bei mir kommt das heraus: [box:0cfc1d18f2] X1=9460301 X2=3 X3=4 X4=65535 X5=184 X6=0 X7=64 X8=0 X9=0 X10=0 X11=0 X12=0 X13=0 X14=0 X15=0 X16=216 X17=247078670 X18=-855002112 X19=1275181089 X20=1750344141 X21=1881174889 X22=1919381362 X23=1663069537 X24=1869508193 X25=1700929652 X26=1853190688 X27=544106784 X28=542330692 X29=1701080941 X30=168627502 X31=36 X32=0 X33=-858161991 X34=-1615389187 X35=-1615389187 X36=-1615389187 X37=-1615454723 X38=-1615389481 X39=-1616626012 X40=-1615389195 X41=-1615784533 X42=-1615389188 X43=-1615249935 X44=-1615389185 X45=-1615389187 X46=-1615389308 X47=1751345490 X48=-1615389187 X49=0 X50=0 X51=0 X52=0 X53=0 X54=0 X55=17744 X56=262476 X57=989012787 X58=0 X59=0 X60=588120288 X61=201654539 X62=356352 X63=45056 X64=0 X65=130686 X66=4096 X67=339968 X68=2011168768 X69=4096 X70=512 X71=5 X72=5 X73=4 X74=0 X75=409600 X76=1024 X77=447213 X78=2 X79=262144 X80=4096 X81=1048576 X82=4096 X83=0 X84=16 X85=335248 X86=18213 X87=353461 X88=114 X89=364544 X90=30788 X91=0 X92=0 X93=0 X94=0 X95=397312 X96=10944 X97=360102 X98=28 X99=0 X100=0 X101=0 X102=0 X103=0 X104=0 X105=0 X106=0 X107=624 X108=76 X109=4096 X110=1200 X111=0 X112=0 X113=0 X114=0 X115=0 X116=0 X117=2019914798 X118=116 X119=356202 X120=4096 X121=356352 X122=1024 X123=0 X124=0 X125=0 X126=1610612768 X127=1952539694 X128=97 X129=3712 X130=360448 X131=2560 X132=357376 X133=0 X134=0 X135=0 X136=-1073741760 X137=1920168494 X138=99 X139=32768 X140=364544 X141=31232 X142=359936 X143=0 X144=0 X145=0 X146=1073741888 X147=1818587694 X148=25455 X149=10944 X150=397312 X151=11264 X152=391168 X153=0 X154=0 X155=0 X156=1107296320 X157=989012787 X158=40 X159=989012787 X160=65586 X161=989012787 X162=40 X163=989012787 X164=63 X165=0 X166=0 X167=1279546446 X168=1279536716 X169=1162543180 X170=1279610450 X171=1143878195 X172=1191201868 X173=842221892 X174=1280066606 X175=0 X176=0 ... [/box:0cfc1d18f2] Jetzt suchen wir mal die Zahl 17744 - bei mir ist das das Doubleword mit der Kennumer X55. Jetzt gehen wir ab diesem Doubleword 13 Doublewords weiter (bei mir X68) => voila, die Ladeadresse des Moduls, bei mir die schon bekannte Zahl 2011168768! Jetzt brauchen wir den Windows Taschenrechner und ziehen von der Einsprungsadresse (bei mir 2011299454) die Ladeadresse (2011168768) ab: 2011299454-2011168768=130686 Mmmh - geht man also wieder 3 Doublewords zurück, findet man hier die Adresse der Einsprungsfunktion der DLL - hier aber als Adresse ab Offset des Moduls. Würde man nun nach weiteren Adressen von Exportfunktionen innerhalb des Moduls suchen, würde man auch hier immer wieder nicht die Absoluten Adressen vorfinden, sondern die Offsetadressen ab Modulstart. Warum ist das so wichtig??? Mal angenommen man würde ein Modul nicht mittels Loadlibrary-API oder Profan @UseDll() laden, sondern es einfach in den Speicher eines fremden Prozesses kopieren - was wäre unter anderem da zu ändern? Diese Adresse!
Wer sich fragt, wie ich auf solche Sachen komme => so etwas fällt mir in der Regel bei meiner Nachtschicht ein... |
|
|
| |
|
|
|
| Und ware noch zu ändern? Mal schauen... |
|
|
| |
|
|
|
| je, jne, jmp, jl, jle, ja, jae, jnl, jng und call evtl? Verweist dies auf absolute Adresse? Mal TNT rausholen... |
|
|
| |
|
|
|
| Das heißt - wenn ich mich von meiner Nachtschicht erholt habe , kräftig diassemblen
|
|
|
| |
|
|
|
Michael Wodrich | Und womit disassemblest Du? Welches Programm? |
|
|
| Programmieren, das spannendste Detektivspiel der Welt. | 25.08.2006 ▲ |
|
|
|
|
| Mit W32 DASM und vergleiche ziehen mit TNT und umrechnen über den Windows Taschenrechner - etwas schwer zu erklären im Augenblick... |
|
|
| |
|
|
|
| Was habe ich vor: Ich möchte eine User32.dll eines älteren Betriebsystems in ein neueres laden und bestimmte APIs darin ansprechen können. Laden: Kein Problem (siehe oben) Doch irgendwo stimmen die Adressen für Sprünge noch nicht und ich lande wieder beim Ansprechen der API in der alten User32. Wie gesagt, mal schauen wo verkehrt gehopst wird . |
|
|
| |
|
|
|
Michael Wodrich | Ich hatte wohl immer an der falschen Stelle gesucht. Brauche den für meine ASM-Programme. Danke
Schöne Grüße Michael Wodrich |
|
|
| Programmieren, das spannendste Detektivspiel der Welt. | 25.08.2006 ▲ |
|
|
|
|
| So, die Sprungreferenzen innerhalb des Quellcodes verweisen scheinbar alle auf relative Adresse - das könnte also so bleiben, solange diese nicht auf Adresen außerhalb der DLL verweisen.
Bei den Importfunktionen und deren Adressen sieht das aber anders aus, die müßten auf jeden Fall angepaßt werden.. Wie man (mit[...] ) an die kommt und diese in einer geladenen DLL ändert, werde ich hier noch zeigen. |
|
|
| |
|
|