Webový shell - Web shell

Web skořápka je shell-jako rozhraní , které umožňuje webový server , které mají být vzdáleně přistupovat, často za účelem kybernetickými útoky . Webový shell je jedinečný v tom, že se s ním používá webový prohlížeč .

Webový shell lze naprogramovat v libovolném programovacím jazyce, který je podporován na serveru. Webové skořápky jsou nejčastěji psány v programovacím jazyce PHP kvůli rozsáhlému používání PHP pro webové aplikace . Nicméně, ASP , ASP.NET , Python , Perl , Ruby , a Unix shell skripty jsou také používány, ačkoli tyto jazyky jsou méně běžně používaný.

Pomocí nástrojů pro monitorování sítě může útočník najít chyby zabezpečení, které mohou potenciálně umožnit doručení webového prostředí. Tyto chyby zabezpečení se často vyskytují v aplikacích spuštěných na webovém serveru.

Útočník může pomocí webového prostředí vydávat příkazy prostředí, provádět eskalaci oprávnění na webovém serveru a schopnost nahrávat , mazat , stahovat a spouštět soubory na webový server a z něj.

Obecné použití

Webové skořápky se používají při útocích hlavně proto, že jsou víceúčelové a obtížně detekovatelné.

Webové skořápky se běžně používají pro:

Dodávka webových mušlí

Webové skořápky se instalují prostřednictvím chyb zabezpečení ve webové aplikaci nebo slabé konfigurace zabezpečení serveru, včetně následujících:

Útočník může také upravit ( spoof ) Content-Typezáhlaví, které má být zasláno útočníkem, při nahrávání souboru, aby obešel nesprávné ověření souboru (ověření pomocí typu MIME zaslané klientem), což povede k úspěšnému nahrání shellu útočníka.

Příklad

Následuje jednoduchý příklad webového prostředí napsaného v PHP, které provádí a vydává výsledek příkazu prostředí:

<?=`$_GET[x]`?>

Předpokládejme, že název souboru je example.php, příklad, který by vydal obsah /etc/passwdsouboru, je uveden níže:

https://example.com/example.php?x=cat%20%2Fetc%2Fpasswd

Výše uvedený požadavek převezme hodnotu xparametru řetězce dotazu a odešle následující příkaz prostředí:

cat /etc/passwd

Tomu by bylo možné zabránit, kdyby byly funkce shellu v PHP deaktivovány, takže z PHP nelze provádět libovolné příkazy shellu.

Prevence a zmírňování

Webový shell se obvykle instaluje s využitím slabých míst v softwaru webového serveru. Proto je odstranění těchto zranitelností důležité, aby se zabránilo potenciálnímu riziku napadeného webového serveru.

Níže jsou uvedena bezpečnostní opatření zabraňující instalaci webového prostředí:

Detekce

Webové skořápky lze snadno upravit, takže není snadné detekovat webové skořápky a antivirový software často nedokáže webové skořápky detekovat.

Následují běžné indikátory, že je webový shell přítomný na webovém serveru:

  • Abnormální vysoké využití webového serveru (kvůli silnému stahování a nahrávání útočníkem);
  • Soubory s neobvyklým časovým razítkem (např. Novější než datum poslední úpravy);
  • Neznámé soubory na webovém serveru;
  • Soubory, které mají pochybné reference, například, cmd.exenebo eval;
  • Neznámá připojení v protokolech webového serveru

Například soubor generující podezřelý provoz (např. Soubor PNG vyžadující parametry POST ); Pochybné přihlašování ze serverů DMZ do interních podsítí a naopak.

Webové skořápky mohou také obsahovat přihlašovací formulář, který je často maskovaný jako chybová stránka .

Pomocí webových skořápek mohou protivníci upravit soubor .htaccess (na serverech, na nichž běží software Apache HTTP Server ) na webových serverech tak, aby přesměrovával požadavky vyhledávače na webovou stránku pomocí malwaru nebo spamu . Webové skořápky často detekují agenta uživatele a obsah prezentovaný pavouku vyhledávače se liší od obsahu prezentovaného v prohlížeči uživatele. K nalezení webového prostředí je obvykle nutná změna user-agent robota prohledávače. Jakmile je webový shell identifikován, lze jej snadno odstranit.

Analýza protokolu webového serveru by mohla určit přesné umístění webového prostředí. Legitimní uživatelé / návštěvníci mají obvykle různé uživatelské agenty a referery (referrery) , na druhou stranu webový shell obvykle navštěvuje pouze útočník, proto mají velmi málo variant řetězců user-agent.

Viz také

Reference