• XSS.stack #1 – первый литературный журнал от юзеров форума

Functor - сервис упаковки ваших ЕХЕ

  • Автор темы basis
  • Дата начала

В этой теме можно использовать автоматический гарант!

basis

Гость
Здравствуйте.
Я бы хотел представить качественно новый сервис упаковки Ваших EXE.

методология работы:


1. Вы предоставляете файл;

2. На протяжении 4-х часов вы получаете на руки упаковщик;

3. Вы проверяете, устраивает ли Вас все параметры - размер сжатия, другие условия;

4. Если да, то на основании регулярной подписки, которая бывает двухнедельной и помесячной, Вы получаете обновления продукта ежесуточно;

5. Ценник формирует количество обновлений в сутки;

6. Мы принимаем к оплате Perfect Money;

7. Мы сделаем манибэк в случае системных проблем с нашей стороны;

8. Общение с поддержкой осуществляется как вживую, с 10 до 19 МСК, так и через тикетную систему в джаббере;

9. Каждое обновление содержит несколько уникальных сэмплов, которые не пересекаются между собой. Таким образом, если у Вас подписка на одно обновление, содержащее 5 сэмплов, Вы можете получить пять уникальных файлов, которые не вызывают между собой пересечений. Вы можете использовать их по очереди.


контакт: functor@default.rs
 
[mod][TrueMind:]
Проверка пройдена, ТС осуществляет заявленные услуги.

На проверку были выданы 3 ехе файла.
ЯП похож на c++ с модифицированными заголовками.
Версия инфо генерируется рандомная.
Код и WinApi генерируются рандомные:
Код:
0100BFB3  |.  FF75 D0       PUSH DWORD PTR SS:[EBP-30]              ; /hWnd
0100BFB6  |.  FF15 6CBD0001 CALL DWORD PTR DS:[<&USER32.GetDC>]    ; \GetDC
0100BFBC  |.  8B45 EC       MOV EAX,DWORD PTR SS:[EBP-14]
0100BFBF  |.  A3 F0E90001   MOV DWORD PTR DS:[100E9F0],EAX
0100BFC4  |.  8B1D ECEB0001 MOV EBX,DWORD PTR DS:[100EBEC]
0100BFCA  |.  895D E4       MOV DWORD PTR SS:[EBP-1C],EBX
0100BFCD  |.  FF75 E4       PUSH DWORD PTR SS:[EBP-1C]              ; /hWnd
0100BFD0  |.  FF15 6CBD0001 CALL DWORD PTR DS:[<&USER32.GetDC>]    ; \GetDC
0100BFD6  |.  68 94E00001   PUSH 01d0a5c2.0100E094                  ;  UNICODE "c:\LerabAqK\rYLeYqZav\qZdxmjbEuI\jepujhInuh\fddnx"
0100BFDB  |.  FF35 48E70001 PUSH DWORD PTR DS:[100E748]            ; /BufSize = 32 (50.)
0100BFE1  |.  68 54E00001   PUSH 01d0a5c2.0100E054                  ; |PathBuffer = 01d0a5c2.0100E054
0100BFE6  |.  FF35 1CE10001 PUSH DWORD PTR DS:[100E11C]            ; |/hDC = NULL
0100BFEC  |.  FF15 A4BC0001 CALL DWORD PTR DS:[<&GDI32.DeleteDC>]  ; |\DeleteDC
0100BFF2  |.  FF35 70E50001 PUSH DWORD PTR DS:[100E570]            ; |hModule = NULL
0100BFF8  |.  A1 78E90001   MOV EAX,DWORD PTR DS:[100E978]          ; |
0100BFFD  |.  A3 68EB0001   MOV DWORD PTR DS:[100EB68],EAX          ; |
0100C002  |.  FF35 5CE70001 PUSH DWORD PTR DS:[100E75C]            ; |/hDC = NULL
0100C008  |.  FF15 A4BC0001 CALL DWORD PTR DS:[<&GDI32.DeleteDC>]  ; |\DeleteDC
0100C00E  |.  A1 F8E90001   MOV EAX,DWORD PTR DS:[100E9F8]          ; |
0100C013  |.  8945 F8       MOV DWORD PTR SS:[EBP-8],EAX            ; |
0100C016  |.  FF75 F8       PUSH DWORD PTR SS:[EBP-8]              ; |/hDC
0100C019  |.  FF15 A4BC0001 CALL DWORD PTR DS:[<&GDI32.DeleteDC>]  ; |\DeleteDC
0100C01F  |.  A1 68EB0001   MOV EAX,DWORD PTR DS:[100EB68]          ; |
0100C024  |.  A3 A0E30001   MOV DWORD PTR DS:[100E3A0],EAX          ; |
0100C029  |.  68 F4EC0001   PUSH 01d0a5c2.0100ECF4                  ; |/pSystemTime = 01d0a5c2.0100ECF4
0100C02E  |.  FF15 FCBC0001 CALL DWORD PTR DS:[<&KERNEL32.GetSystemT>; |\GetSystemTime
0100C034  |.  FF35 A0E30001 PUSH DWORD PTR DS:[100E3A0]            ; |/hDC = NULL
0100C03A  |.  FF15 A4BC0001 CALL DWORD PTR DS:[<&GDI32.DeleteDC>]  ; |\DeleteDC
0100C040  |.  FF15 08BD0001 CALL DWORD PTR DS:[<&KERNEL32.GetModuleF>; \GetModuleFileNameA
0100C046  |.  68 54EA0001   PUSH 01d0a5c2.0100EA54                  ;  UNICODE " cr"
0100C04B  |.  FF35 F4E90001 PUSH DWORD PTR DS:[100E9F4]            ; /BufSize = 28 (40.)
0100C051  |.  68 B0E30001   PUSH 01d0a5c2.0100E3B0                  ; |PathBuffer = 01d0a5c2.0100E3B0
0100C056  |.  FF35 54E20001 PUSH DWORD PTR DS:[100E254]            ; |hModule = NULL
0100C05C  |.  FF15 08BD0001 CALL DWORD PTR DS:[<&KERNEL32.GetModuleF>; \GetModuleFileNameA
0100C062  |.  8B0D 00E90001 MOV ECX,DWORD PTR DS:[100E900]
0100C068  |.  51            PUSH ECX                                ; /hWnd => EB0FAA68
0100C069  |.  FF15 6CBD0001 CALL DWORD PTR DS:[<&USER32.GetDC>]    ; \GetDC
0100C06F  |.  68 30E50001   PUSH 01d0a5c2.0100E530                  ;  UNICODE "ygtLv"
0100C074  |.  A1 7CE80001   MOV EAX,DWORD PTR DS:[100E87C]
0100C079  |.  8945 E8       MOV DWORD PTR SS:[EBP-18],EAX
0100C07C  |.  68 E0E50001   PUSH 01d0a5c2.0100E5E0                  ; /pPerformanceCount = 01d0a5c2.0100E5E0
0100C081  |.  FF15 04BD0001 CALL DWORD PTR DS:[<&KERNEL32.QueryPerfo>; \QueryPerformanceCounter
0100C087  |.  8B45 E8       MOV EAX,DWORD PTR SS:[EBP-18]
0100C08A  |.  A3 40E20001   MOV DWORD PTR DS:[100E240],EAX
0100C08F  |.  FF35 40E20001 PUSH DWORD PTR DS:[100E240]            ; /hWnd = NULL
0100C095  |.  FF15 6CBD0001 CALL DWORD PTR DS:[<&USER32.GetDC>]    ; \GetDC
0100C09B  |.  FF15 DCBC0001 CALL DWORD PTR DS:[<&KERNEL32.AddConsole>;  kernel32.AddConsoleAliasW

Из потенциальных минусов:
Энтропия не выровнена у всех трех файлов, на выходе средняя ~ 7.5.
При генерации фейк импорта используются разнообразные библиотеки (я не буду утверждать, но возможна некоторая несовместимость с более ранними или позндними версиями Windows, нужно проверять).
Нестандартные заголовки в перспективе могут создать лишние проблемы с детектами.
При генерации мусорного кода и WinApi, используются WinApi для работы с консолью (например kernel32.AddConsoleAliasW), хотя Subsystem у приложения GUI.
[/mod]
 
> При генерации фейк импорта используются разнообразные библиотеки (я не буду утверждать, но возможна некоторая несовместимость с более ранними или позндними версиями Windows, нужно проверять).

для генерации импорта используется база, которая является пересечением доступных библиотек со всех поддерживаемых систем: начиная от WinXP, заканчивая Win8/Win10 beta, обеих разрядностей. дополнительно исключены библиотеки, которые могут спровоцировать запуск системного AppComat-кода и каких-либо предупреждений при запуске (например, устаревшие библиотеки DirectX), вручную убраны явно

> Нестандартные заголовки в перспективе могут создать лишние проблемы с детектами.

как показала наша практика, уход от правила "только стандартные поля/признаки" показывает себя скорее с хорошей стороны. семпл, который будут активно использовать, получит детект вне зависимости от наличия/отсутствия в нем распространенных "белых" признаков, на него просто повесят сигнатуру еще до момента выделения общих признаков в generic-детект. в то же время уход от этого правила позволяет получить большую вариативность и независимость двух соседних семплов из одного апдейта, меньшую вероятность пересечения детектов (задетектили один, а прицепом прибило несколько еще неиспользованных стабов).
 
Все не относящиеся напрямую к теме сообщения перенесены в отдельную тему, кто хочет пообсуждать, велком, а халявных апов не будет.
https://xss.pro/index.php?topic=25995
 


Напишите ответ...
Верх