Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 49598|Odpověď: 0

[Zdroj] (Security).NET/C# zabraňuje přístupu ke stažení napříč adresáři

[Kopírovat odkaz]
Zveřejněno 7. 4. 2021 11:57:38 | | | |
Scénář: Existuje API rozhraní, které přijímá parametry cesty, dokončuje cestu k souboru pomocí určitých pravidel a pak reaguje ke stažení uživateli.

Request:
ZÍSKAT /download_page?id=content.dat HTTP/1.1

Request:
GET /download_page?id=.. %2f.. %2fweb.config HTTP/1.1(Tím se stáhne web.config soubor serveru

Předpokládejme, že D:\storage\123 je kořenový adresář úložiště a všechny uložené soubory jsou v tomto adresáři, když uživatel přidá cestu do : . Symbol lze překřížit pod předchozím adresářem a parametr URL je předán vztahem: /.. / Snadný přístup k citlivým zdrojům a stahování.

řešení

Podívejme se nejdříve na vizualizace:



Kód je následující:







Předchozí:Webová stránka pro online dešifrování MD5 běžně používaná doma i v zahraničí
Další:Rozdíl mezi /bin/false a /sbin/nologin, který uživatelům zakazuje přihlášení
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com