Autor: .cCuMiNn. | 18.4.2011 |
Tyto zranitelnosti umožňují útočníkům spustit na straně webového serveru skript, který může přistupovat k ostatním uloženým skriptům a dokumentům dané webové aplikace. V případech, kdy jsou špatně nastavena oprávnění uživatelů (například proto, že se nejedná o server webhostingu), může útočník přistupovat dokonce i mimo root napadeného webu a tím může získat plnou kontrolu nad napadeným systémem.
Útočník může při útoku využít svých vlastních skriptů připravených k uploadu na server a k následné kompromitaci systému. Není-li to ale nezbytně nutné, může využít také některého z veřejně dostupných skriptů, kterým se říká shelly. Ty přes webové rozhraní zpřístupní uložené soubory, příkazový řádek OS, databázi, či jiné další možnosti podle funkcí, kterými konkrétní shell disponuje a práv, pod kterými je na serveru spuštěn.
Shelly nejčastěji tvoří jeden jediný soubor, napsaný v některém ze skriptovacích jazyků podporovaných webovými servery. Může tak jít například o Python, PHP, CGI, ASP, ASPX, aj. Mnoho těchto shellů je k dispozici ve zdejším downloadu. My se dnes podrobněji podíváme na jeden z nejlépe propracovaných ASPX shellů, který je dostupný pod názvem ASPXspy 2.0.
Tento shell po svém spuštění na serveru s běžícím Windows Serverem umožní útočníkovi pomocí File manageru procházet stromovou strukturou souborového systému, kde může číst nebo zapisovat jednotlivé soubory. Dále tento shell zpřístupňuje příkazůvý řádek operačního systému, Task manager pro správu běžících procesů nebo administraci služeb operačního systému. K dispozici je dále správa uživatelských účtů nebo registrů a detailní přehled informací o napadeném systému. Z databází tento shell podporuje MS Access a MS SQL server. K dispozici je také implementovaný portscanner nebo portmap, který umožní přesměrování portů na jiná zařízení.
Práce s ASPXspy 2.0 je jednoduchá a intuitivní. Díky mnoha funkcím, kterými disponuje jej považuji opravdu za jedničku mezi shelly pro ASPX. Pro úplnost přikládám ještě několik screenshotů.