Portál AbcLinuxu, 11. května 2025 16:43
Vývojáři programovacího jazyka PHP nedoporučují a varují před upgradem na poslední stabilní vydání PHP 5.3.7. To sice opravovalo bezpečnostní chyby, nicméně další vážnou chybu stejného druhu přineslo. Funkce crypt(), která se používá při hashování, selhává, když je jako argument použit MD5 salt. Výsledkem poté není hash řetězce, ale samotný salt.
Tiskni
Sdílej:
Nebo PDO :)Ktore ma celkom vtipne spravanie typu:
If your application does not catch the exception thrown from the PDO constructor, the default action taken by the zend engine is to terminate the script and display a back trace. This back trace will likely reveal the full database connection details, including the username and password.
>>>>>> strlcat(passwd, "$", 1); ------ strcat(passwd, "$"); <<<<<<
Koukněte se na unit testy, 201 selhání den před vydáním PHP 5.3.7. Koukněte se trochu podrobněji a test, který zkoumá crypt() s MD5 selhal.... Jen pro zajímavost :)
Vlákno bylo přesunuto do samostatné diskuse.
Na zrcadlech se začíná objevovat verze 5.3.8. Jsem ji zkusil a našel chybu v phpinfo(). Před vlastní tabulkou se zobrazuje znak ">". Chybu jsem našel v SVN:
PUTS("<...>"); -> PUTS("<... xmlns=\"http://www.w3.org/1999/xhtml\">>");
Informoval jsem komunitu a popis chyby se následně objevil v php-internals diskusním listu. Bude to opraveno před oficiálním oznámením?
crypt()
.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.