Meterpreter to payload w ataku z wykorzystaniem narzędzia Metasploit, który zapewnia interaktywną powłokę, z której atakujący może zbadać maszynę docelową i wykonać kod. Meterpreter jest wdrażany przy użyciu iniekcji DLL w pamięci. W rezultacie Meterpreter znajduje się całkowicie w pamięci i nic nie zapisuje na dysku. Nie są tworzone żadne nowe procesy, ponieważ Meterpreter wstrzykuje się do atakowanego procesu, z którego może migrować do innych uruchomionych procesów. W rezultacie ślad po ataku jest bardzo ograniczony.
Meterpreter został zaprojektowany tak, aby obejść wady korzystania z określonych payloadów, jednocześnie umożliwiając pisanie poleceń i zapewniając szyfrowaną komunikację. Wadą korzystania z określonych payloadów jest to, że mogą być wyzwalane alerty, gdy w systemie docelowym tworzy się nowy proces.
W idealnym przypadku payload powinien unikać tworzenia nowego procesu zawierającego całą aktywność w zakresie samego payloadu. Powinien umożliwiać pisanie skryptów, ale bez tworzenia nowych plików na dysku, ponieważ mogłoby to uruchomić oprogramowanie antywirusowe.
Metepreter został pierwotnie napisany dla Metasploit 2.x przez Skape, pseudonim hakerski używany przez Matta Millera. Wspólne rozszerzenia zostały scalone dla wersji 3.x i obecnie przechodzi przegląd dla Metasploit 3.3.
METERPRETER – POWŁOKA REVERSE_TCP
Meterpreter używa powłoki reverse_tcp, co oznacza, że łączy się z listenerem TCP na komputerze atakującego. Istnieją dwa popularne rodzaje powłok shell: bind i reverse. Bind shell otwiera nową usługę na maszynie docelowej i wymaga od atakującego połączenia się z nią w celu rozpoczęcia sesji. Reverse shell (znana również jako połączenie zwrotne) wymaga, aby atakujący najpierw skonfigurował listener, z którym może się połączyć maszyna docelowa.
CO OZNACZA PAYLOAD – CZYM JEST?
Jest to moduł exploita, jeden z trzech typów (singles, stagers, stages) wykorzystywanych przez framework Metasploit.