$p01nt
06.02.2009, 21:15
Ребят, помогите пожалуйста, в скрипте нужно перевести данные из text в hex (тут могу ошибаться) т.е. в формат который используется при mysql injection :)
Например
admin в 0x61646D696E
Стандартная функция hex почему то переводит не верно.
Например:
admin в 173.
Есть скрипт на PHP, может кому то поможет понять суть и помочь:
[QUOTE]<?
$fout=fopen('url_in_HEX.txt','a+');
$source_column2 = fopen('source.txt','r');
$source_column1 = fgets($source_column2);
fwrite ($fout,$source_column1 . "\r");
fclose($source_column2);
function ascii2hex($ascii) {
$hex = '';
for ($i = 0; $i < strlen($ascii); $i++) {
$byte = strtoupper(dechex(ord($ascii{$i})));
$byte = str_repeat('0', 2 - strlen($byte)).$byte;
$hex.=$byte." ";
}
return $hex;
}
$source_column2 = ascii2hex($source_column1);
$patterns[0] = "/ /";
$replacements[0] = "";
$source_column3 = preg_replace($patterns, $replacements, $source_column2);
$source_column3 = "0x$source_column3";
$patterns[0] = "/ /";
$replacements[0] = "%";
$source_column4 = preg_replace($patterns, $replacements, $source_column2);
$source_column4 = "%$source_column4";
echo "\n";
echo $source_column3;
echo "\n";
echo $source_column4;
echo "\n";
fwrite ($fout,$source_column3 . "\r");
fwrite ($fout,$source_column4 . "\r");
fclose($fout);
?>/QUOTE]
Волонтеру +++ гарантирован :)
Например
admin в 0x61646D696E
Стандартная функция hex почему то переводит не верно.
Например:
admin в 173.
Есть скрипт на PHP, может кому то поможет понять суть и помочь:
[QUOTE]<?
$fout=fopen('url_in_HEX.txt','a+');
$source_column2 = fopen('source.txt','r');
$source_column1 = fgets($source_column2);
fwrite ($fout,$source_column1 . "\r");
fclose($source_column2);
function ascii2hex($ascii) {
$hex = '';
for ($i = 0; $i < strlen($ascii); $i++) {
$byte = strtoupper(dechex(ord($ascii{$i})));
$byte = str_repeat('0', 2 - strlen($byte)).$byte;
$hex.=$byte." ";
}
return $hex;
}
$source_column2 = ascii2hex($source_column1);
$patterns[0] = "/ /";
$replacements[0] = "";
$source_column3 = preg_replace($patterns, $replacements, $source_column2);
$source_column3 = "0x$source_column3";
$patterns[0] = "/ /";
$replacements[0] = "%";
$source_column4 = preg_replace($patterns, $replacements, $source_column2);
$source_column4 = "%$source_column4";
echo "\n";
echo $source_column3;
echo "\n";
echo $source_column4;
echo "\n";
fwrite ($fout,$source_column3 . "\r");
fwrite ($fout,$source_column4 . "\r");
fclose($fout);
?>/QUOTE]
Волонтеру +++ гарантирован :)