Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
命令注入漏洞测试的专业技能和方法论
How to use
Zidentyfikuj w aplikacji funkcje, które mogą wykonywać polecenia systemowe – typowe punkty to ping, DNS lookup, operacje na plikach, wyświetlanie informacji systemowych, przeglądanie logów lub przywracanie kopii zapasowych.
Przetestuj podstawowe separatory poleceń, wstawiając je do pola wejściowego: średnik (;), ampersand (&), pipe (|), logiczne operatory (&&, ||) oraz backtick (`) lub $() dla podstawienia poleceń. Zacznij od prostych testów, np. "127.0.0.1; id" lub "127.0.0.1 && whoami".
Jeśli wynik polecenia nie jest widoczny w odpowiedzi, zastosuj techniki zaślepionego testowania – użyj opóźnień czasowych (sleep 5) lub wyślij dane na zewnętrzny serwer (curl, wget, nslookup z danymi w subdomain'ie).
Po potwierdzeniu podatności, przejdź do fazy eksploatacji – czytaj wrażliwe pliki (/etc/passwd, /var/log/apache2/access.log na Linuxie; C:\Windows\System32\config\sam na Windows), wypisuj informacje systemowe (id, whoami, uname, ipconfig).
W zaawansowanych scenariuszach utwórz reverse shell – dla Linuxa użyj bash'a lub netcat'a, dla Windows'a PowerShell'a – aby uzyskać interaktywny dostęp do systemu.
Dokumentuj wszystkie znalezione podatności i zaproponuj zabezpieczenia: walidację i sanityzację danych wejściowych, unikanie bezpośredniego przekazywania danych do poleceń systemowych oraz stosowanie białych list dozwolonych operacji.