Вверх ↑
Этот топик читают: Гость
Ответов: 1528
Рейтинг: 57
#31: 2011-02-22 12:27:12 ЛС | профиль | цитата
Roma писал(а):
с точностью до пикселя

мда..
исходников на работе нет, вот повторил меньше чем за 2 минуты эту "точность до пикселя"

карма: 0

0
Ответов: 1321
Рейтинг: 37
#32: 2011-02-22 12:45:00 ЛС | профиль | цитата
Ну да в принципе,подобрать 30 размер шрифта ,и быстро расположить текст,наверное возможно,за какое время ты это сделал?
карма: 0

0
Ответов: 397
Рейтинг: 34
#33: 2011-02-22 14:04:22 ЛС | профиль | цитата
hitman249, да не компилировал я твою программу а распаковал... Если хочешь проверить - сделай такую же программу но текст пускай будет в Memory, дашь мне только начало фразы, а я тебе ее конец
карма: 0

0
Ответов: 1321
Рейтинг: 37
#34: 2011-02-22 14:08:03 ЛС | профиль | цитата
hitman249 а как ты кодируешь программу?
карма: 0

0
Ответов: 1528
Рейтинг: 57
#35: 2011-02-22 19:04:01 ЛС | профиль | цитата
Black-Light, вот файл для теста, распакуешь поверю
карма: 0

0
Ответов: 1321
Рейтинг: 37
#36: 2011-02-22 20:15:05 ЛС | профиль | цитата

А что там какойто секретный текст зашифрован?
------------ Дoбавленo в 20.14:
[flood]Что-то Black-Light кудато запропостился[/flood]
карма: 0

0
Ответов: 397
Рейтинг: 34
#37: 2011-02-22 21:08:35 ЛС | профиль | цитата
[flood]
Roma писал(а):
Что-то Black-Light кудато запропостился

Я просто еще на работе , как дома буду попробую[/flood]
hitman249,
Хотя, скачал что мне было нужно и вот результат:
test_unpack.rar
ps: посмотри разработчика в "О программе"
карма: 0

0
файлы: 1test_unpack.rar [79.7KB] [56]
Ответов: 373
Рейтинг: 108
#38: 2011-02-22 21:53:27 ЛС | профиль | цитата
hitman249 писал(а):
Vlad.-, попробуй распакуй

зачем
------------ Дoбавленo в 21.53:
hitman249 писал(а):
распакуешь поверю

в то, что слоны не летают?
карма: 0

0
Ответов: 1528
Рейтинг: 57
#39: 2011-02-22 21:58:23 ЛС | профиль | цитата
Black-Light, любой редактор ресурсов такое может
снова размер в 2 раза больше оригинала, это случайно не реверс? попробуй теперь убедись что всё правильно работает и получи дополнительный кеш при дизассемблировании)
------------ Дoбавленo в 21.58:
Vlad.- писал(а):
в то, что слоны не летают?

тролль? или показалось ? ;)
карма: 0

0
Ответов: 373
Рейтинг: 108
#40: 2011-02-22 22:34:44 ЛС | профиль | цитата
[flood]
hitman249 писал(а):
Vlad.- писал(а)
в то, что слоны не летают?

тролль? или показалось ? ;)

показалось.[/flood]
upx есть upx. затирание имён секций не дало результата. а dll внедрён? чего-то я его не заметил.
------------ Дoбавленo в 22.34:
hitman249 писал(а):
и получи дополнительный кеш при дизассемблировании

это что за кеш такой?
карма: 0

0
Ответов: 1528
Рейтинг: 57
#41: 2011-02-22 22:35:09 ЛС | профиль | цитата
В последнем использовался этот тип защиты

Защита с паролем
Принцип: Изменение определенного количества байтов начиная с заданного. Изменяемые области в формате "смещение - длина": 1F8 - 4, 220 - 4. Кодирование 37 байтов начиная с 3ВB (включительно).
Поведение UPX при декомпрессии Ошибка "CantUnpackException: file is modified/hacked/protected; take care!!!".
Cнятие защиты Возможно в UpxVis при наличии пароля, без пароля затруднительна.

О способе
В этом способе, так же как в защите затиранием убираются по четыре байта начиная со смещений 1F8 и 220 чтобы при поверхностном взгляде не было видно следов работы UPX. Уникальная область же (37 байтов начиная со смещения 3DB), кодируется при помощи введенного пользователем пароля. Без ее восстановления декомпрессия не может быть произведена.

Уникальная область заголовка файла file1.exe (простое сжатие).
000003D0 00 00 00 00 00 00 00 00 00 00 00 31 2E 32 34 00 ...........1.24.
000003E0 55 50 58 21 0C 09 05 07 A8 09 45 A6 BF 37 AF 89 UPX!......E..7..
000003F0 C4 08 07 00 00 8E 02 00 00 9E 06 00 26 16 00 4C ............&..L

Закодированная уникальная область заголовка файла file1.exe (сжатие и защита с паролем).
000003D0 00 00 00 00 00 00 00 00 00 00 00 9E 97 A5 62 68 ..............bh
000003E0 86 81 86 93 81 6A 72 70 6A 36 FE 8F 6B 59 FA 85 .....jrpj6..kY..
000003F0 25 75 70 73 25 F5 33 31 2E 10 7B 61 93 7F 73 96 %ups%.31..{a..s.

С учетом того, что закодированные байты содержат информацию о первоначальной уникальной области, эта защита менее надежна защиты затиранием, хотя ее снятие также маловероятно. Защита может быть снята при использовании метода перебора паролей (brute-force). Время взлома этим методом зависит от длины пароля и симлов, из которых он состоит. Чтобы увеличить время предпологаемого взлома, надо использовать длинные пароли (имеет смысл длина пароля до 37 символов, состоящие из маленьких и больших кирилических и латинских букв и специальных символов. При снятии защиты добавляются 4 стертых байта на смещениях 1F8 и 220, а также декодируется уникальная область.


В предпоследнем
Защита затиранием
Принцип: Изменение определенного количества байтов начиная с заданного. Изменяемые области в формате "смещение - длина": 1F8 - 4, 220 - 4, 3DB - 37.
Поведение UPX при декомпрессии Ошибка "CantUnpackException: file is modified/hacked/protected; take care!!!".
Cнятие защиты Весьма затруднительно, средствами UpxVis и других программ невозможно.

Данный способ заключен в затирании нулевыми байтами трех областей в заголовке файла. Для того, чтобы файл с виду не казался сжатым UPX затираются по 4 байта начиная со смещения 1F8 и смещения 220 (байт, находящийся на указанном смещении является первым байтом области). Затем затирается область в 37 байтов, начиная со смещения 3DB (включая данный байт). Сложность снятия этой защиты заключается в том, что последняя область является уникальной, т.е. в разных файлах эта область разная.

карма: 0

0
Ответов: 373
Рейтинг: 108
#42: 2011-02-22 23:04:26 ЛС | профиль | цитата
hitman249, всё распаковалось автоматически, без всяких паролей и брутфорсов и прекрасно работает и качает.
карма: 0

0
Ответов: 1528
Рейтинг: 57
#43: 2011-02-22 23:17:46 ЛС | профиль | цитата
Vlad.-, ты уверен что оно действительно распаковалось ?
карма: 0

0
Ответов: 373
Рейтинг: 108
#44: 2011-02-23 00:38:36 ЛС | профиль | цитата
hitman249 писал(а):
ты уверен что оно действительно распаковалось ?

ну да.
распакованный

00427F60 >/$ 55 PUSH EBP
00427F61 |. 8BEC MOV EBP,ESP
00427F63 |. 83C4 F0 ADD ESP,-10
00427F66 |. 33C0 XOR EAX,EAX
00427F68 |. 8945 F0 MOV DWORD PTR SS:[EBP-10],EAX
00427F6B |. B8 A07C4200 MOV EAX,test_exe.00427CA0
00427F70 |. E8 57CCFDFF CALL test_exe.00404BCC
00427F75 |. 33C0 XOR EAX,EAX
00427F77 |. 55 PUSH EBP
00427F78 |. 68 08804200 PUSH test_exe.00428008
00427F7D |. 64:FF30 PUSH DWORD PTR FS:[EAX]
00427F80 |. 64:8920 MOV DWORD PTR FS:[EAX],ESP
00427F83 |. 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10]
00427F86 |. B8 01000000 MOV EAX,1
00427F8B |. E8 5CEBFDFF CALL test_exe.00406AEC
00427F90 |. 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10]
00427F93 |. BA 1C804200 MOV EDX,test_exe.0042801C ; ASCII "/ih"
00427F98 |. E8 6FB3FDFF CALL test_exe.0040330C
00427F9D |. 75 18 JNZ SHORT test_exe.00427FB7
00427F9F |. 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
00427FA1 |. 68 20804200 PUSH test_exe.00428020 ; |Title = "HiAsm Info"
00427FA6 |. 68 2C804200 PUSH test_exe.0042802C ; |Text = "Сделано в HiAsm."
00427FAB |. 6A 00 PUSH 0 ; |hOwner = NULL
00427FAD |. E8 C6D0FDFF CALL <JMP.&USER32.MessageBoxA> ; MessageBoxA
00427FB2 |. E8 8DAFFDFF CALL test_exe.00402F44
00427FB7 |> B2 01 MOV DL,1
00427FB9 |. A1 DCFC4100 MOV EAX,DWORD PTR DS:[41FCDC]
00427FBE |. E8 7D7DFFFF CALL test_exe.0041FD40
00427FC3 |. 8B15 0C994200 MOV EDX,DWORD PTR DS:[42990C] ; test_exe.0042A674
00427FC9 |. 8902 MOV DWORD PTR DS:[EDX],EAX
00427FCB |. A1 0C994200 MOV EAX,DWORD PTR DS:[42990C]
00427FD0 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
00427FD2 |. 8B40 08 MOV EAX,DWORD PTR DS:[EAX+8]
00427FD5 |. E8 8280FEFF CALL test_exe.0041005C
00427FDA |. A1 34994200 MOV EAX,DWORD PTR DS:[429934]
00427FDF |. E8 0CD9FDFF CALL test_exe.004058F0
00427FE4 |. A1 0C994200 MOV EAX,DWORD PTR DS:[42990C]
00427FE9 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
00427FEB |. B2 01 MOV DL,1
00427FED |. 8B08 MOV ECX,DWORD PTR DS:[EAX]
00427FEF |. FF51 FC CALL DWORD PTR DS:[ECX-4]
00427FF2 |. 33C0 XOR EAX,EAX
00427FF4 |. 5A POP EDX
00427FF5 |. 59 POP ECX
00427FF6 |. 59 POP ECX
00427FF7 |. 64:8910 MOV DWORD PTR FS:[EAX],EDX
00427FFA |. 68 0F804200 PUSH test_exe.0042800F
00427FFF |> 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
00428002 |. E8 89B0FDFF CALL test_exe.00403090
00428007 . C3 RETN


упакованный

00436FD0 > $ 60 PUSHAD
00436FD1 . BE 00104200 MOV ESI,test.00421000
00436FD6 . 8DBE 0000FEFF LEA EDI,DWORD PTR DS:[ESI+FFFE0000]
00436FDC . C787 C8940200>MOV DWORD PTR DS:[EDI+294C8],40D0FEA0
00436FE6 . 57 PUSH EDI
00436FE7 . 83CD FF OR EBP,FFFFFFFF
00436FEA . EB 0E JMP SHORT test.00436FFA
00436FEC 90 NOP
00436FED 90 NOP
00436FEE 90 NOP
00436FEF 90 NOP
00436FF0 > 8A06 MOV AL,BYTE PTR DS:[ESI]
00436FF2 . 46 INC ESI
00436FF3 . 8807 MOV BYTE PTR DS:[EDI],AL
00436FF5 . 47 INC EDI
00436FF6 > 01DB ADD EBX,EBX
00436FF8 . 75 07 JNZ SHORT test.00437001
00436FFA > 8B1E MOV EBX,DWORD PTR DS:[ESI]
00436FFC . 83EE FC SUB ESI,-4
00436FFF . 11DB ADC EBX,EBX
00437001 >^ 72 ED JB SHORT test.00436FF0
00437003 . B8 01000000 MOV EAX,1
00437008 > 01DB ADD EBX,EBX
0043700A . 75 07 JNZ SHORT test.00437013
0043700C . 8B1E MOV EBX,DWORD PTR DS:[ESI]
0043700E . 83EE FC SUB ESI,-4
00437011 . 11DB ADC EBX,EBX
00437013 > 11C0 ADC EAX,EAX
00437015 . 01DB ADD EBX,EBX
00437017 .^ 73 EF JNB SHORT test.00437008
00437019 . 75 09 JNZ SHORT test.00437024
0043701B . 8B1E MOV EBX,DWORD PTR DS:[ESI]
0043701D . 83EE FC SUB ESI,-4
00437020 > 11DB ADC EBX,EBX
00437022 .^ 73 E4 JNB SHORT test.00437008
00437024 > 31C9 XOR ECX,ECX
00437026 . 83E8 03 SUB EAX,3
00437029 . 72 0D JB SHORT test.00437038
0043702B . C1E0 08 SHL EAX,8
0043702E . 8A06 MOV AL,BYTE PTR DS:[ESI]
00437030 . 46 INC ESI
00437031 . 83F0 FF XOR EAX,FFFFFFFF
00437034 . 74 74 JE SHORT test.004370AA
00437036 . 89C5 MOV EBP,EAX
00437038 > 01DB ADD EBX,EBX
0043703A . 75 07 JNZ SHORT test.00437043
0043703C . 8B1E MOV EBX,DWORD PTR DS:[ESI]
0043703E . 83EE FC SUB ESI,-4
00437041 . 11DB ADC EBX,EBX
00437043 > 11C9 ADC ECX,ECX
00437045 . 01DB ADD EBX,EBX
00437047 . 75 07 JNZ SHORT test.00437050
00437049 . 8B1E MOV EBX,DWORD PTR DS:[ESI]
0043704B . 83EE FC SUB ESI,-4
0043704E . 11DB ADC EBX,EBX
00437050 > 11C9 ADC ECX,ECX
00437052 . 75 20 JNZ SHORT test.00437074
00437054 . 41 INC ECX
00437055 > 01DB ADD EBX,EBX
00437057 . 75 07 JNZ SHORT test.00437060
00437059 . 8B1E MOV EBX,DWORD PTR DS:[ESI]
0043705B . 83EE FC SUB ESI,-4

------------ Дoбавленo в 23.35:
hitman249, а ты уверен что в упакованном трой не сидит?
у меня avira взбесилась. на распакованный не кидается.
------------ Дoбавленo в 00.23:
hitman249 писал(а):
С учетом того, что закодированные байты содержат информацию о первоначальной уникальной области, эта защита менее надежна защиты затиранием, хотя ее снятие также маловероятно.
тебе не кажется это бредом?
------------ Дoбавленo в 00.38:
hitman249 писал(а):
Защита может быть снята при использовании метода перебора паролей (brute-force).

защита может быть снята трассировкой до OEP с последующим дампом и (может и не понадобится) восстановлением импорта , ну и мусор подчистить можно.
карма: 0

0
Ответов: 1528
Рейтинг: 57
#45: 2011-02-23 11:32:10 ЛС | профиль | цитата
Vlad.-, и как от этого можно защититься ?
------------ Дoбавленo в 11.32:
Vlad.- писал(а):
у меня avira взбесилась.

nod молчит, возможно авира просто параноик...
карма: 0

0
45
Сообщение
...
Прикрепленные файлы
(файлы не залиты)