ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #7031  
Старый 18.12.2008, 00:32
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
С нами: 9223466

Репутация: 3171


По умолчанию

Чтото странно. Собственно,решил попробывать написть скрипт,брут хешей,но со всеми типами хешей,с солью,мускул и т.д
Взял за основу скрипт от фазы:
PHP код:
<?
set_time_limit
(0);
if (!isset(
$_POST['crack'])) {
echo 
"<i>World-List</i>: <input type='text' name='list'><br>";
echo 
"<i>MD5 Hash</i>: <input type='text' name='hash'><br>";
echo 
"<i>Salt</i>: <input type='text' name='salt'><br>";
echo 
"<input type='submit' name='submit' value='Crack The Salt!'>";
$list = $_POST['list'];
$hash = $_POST['hash'];
$salt = $_POST['salt'];
}else{
 
foreach(
file($list) as $line){
$line = str_replace("\n","",$line);
$cracked = md5(md5($line).$salt);
if(
$hash = $cracked){
die(
"Salt Broken...<br>
    [+]Password = 
$line<br>");
 
}
}else{
echo 
"Sorry mate, no payoff today, try another list!";
}
?>
Ладно,то что в нем у меня находит ошибку в последней строке,чтото там с $end.
ноя никогда не работак с foreach. Почитал на php.net что ето за функция,быстро разобрался как действует.И на пробу набросал скрипт, брут обычного md5. Имеенно его кусок я выкладывал.
Но он чтото не катит,даже не то что не кактит,он мне сразу выписывает,причем на всю страницу,много тыщ раз,о том что хеш сбручен.
Я понимаю помоему почиму,ведь обе переменные,используемые для сравнения, $brute = $hash изначально пустые,но там есть и еще несколько ошибок в фореач.Собственно вот.Хотелось бы раз и навсегда уяснить,как происходит сравнение (хорошее),и что сначало нужно обозначить.Собственно сам срипт.
В таком варианте,я вижу тысячи надпесей...
PHP код:
<?
echo '<form method = "POST">';
echo 
'<input type = "text" name = "hash" value = "">';
echo 
'<input type = "submit" value = "Crack">';
echo 
'</form>';
$hash = $_POST['hash'];
$world = file('world.txt');
foreach(
$world as $list){
    
$brute = md5($list);
if(
$brute == $hash){
        echo 
"Hash cracked!";
            echo 
"Password $line";
            exit();
            }else{
                echo 
"Hash то cracked";
            }
}
?>
А в таком,я вижу ошибку "Parse error: syntax error, unexpected T_FOREACH in D:\WebServer\htdocs\md5\md5.php on line 8"
Привожу только измененную часть кода:
PHP код:
......
$world = file_get_contents('world.txt');
foreach(
$world as $list){
    
$brute = md5($list);
..... 
 
Ответить с цитированием

  #7032  
Старый 18.12.2008, 00:48
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
С нами: 9497186

Репутация: 1304


По умолчанию

m0Hze
http://php.net/file/
http://php.net/file_get_contents/
 
Ответить с цитированием

  #7033  
Старый 18.12.2008, 00:50
geforce
Постоянный
Регистрация: 21.08.2008
Сообщений: 302
С нами: 9326973

Репутация: -25
Wink

нашел ответ на вопрос кому интересно смотрите!

http://forum.antichat.ru/threadnav40896-703-10.html

#7029

При выводе функцией imagejpeg(); в коде не должн присутствовать html код так как в третьей строчке html документа идёт пояснение о том что страница будет передовать html/text контент! вобщем код выглядит вот так!

PHP код:
<?php include("db.php");
header('Content-type: image/jpeg');
if (isset(
$_POST['vibor'])) { $vibor = $_POST['vibor'];} 
if (isset(
$_POST['load'])) { $adres = $_POST['load'];} 
$result1 = mysql_query("SELECT * FROM data WHERE id='$vibor'",$db);
if (!
$result1)
{
exit(
mysql_error());
}
if (
mysql_num_rows($result1) > 0)
{
$myrow1 = mysql_fetch_array($result1);

$width = 275;
$heigth = 750;
$adres1 = "admin/".$myrow1['url'];
$im = imagecreatetruecolor($width, $heigth); 

$im1 = imagecreatefromjpeg($adres);
$im2 = imagecreatefromjpeg('logo.jpg');
$im3 = imagecreatefromjpeg($adres1);
 
imagecopy($im, $im1, 0, 0, 0, 0, 25, 25);
imagecopy($im, $im2, 25, 0, 0, 0, 25, 25);
imagecopy($im, $im3, 0, 25, 0, 0, 25, 25);

imagejpeg($im);
imagedestroy($im);
}
else
{
exit();
}
?>
 
Ответить с цитированием

  #7034  
Старый 18.12.2008, 00:58
geforce
Постоянный
Регистрация: 21.08.2008
Сообщений: 302
С нами: 9326973

Репутация: -25
Question

Вопрос???

вот скрипт загруски!

PHP код:
<?php 

// Подключаемься к базе данных 

include ("db.php"); 

//================Настройки============= // 
$maxwidth = "300px"; // максимальная ширина картинок на превью 
$fotos_dir = "fotos/"; // Директория для фотографий товаров 
$foto_name = $fotos_dir.time()."_".basename($_FILES['myfile']['name']); // Полное имя файла вместе с путем 
$foto_light_name = time()."_".basename($_FILES['myfile']['name']); // Имя файла исключая путь 
$foto_tag = "<img src=\"$foto_name\" border=\"0\">"; // Готовый тэг для вставки картинки на страницу 
$foto_tag_preview = "<img src=\"$foto_name\" border=\"0\" width=\"$maxwidth\">"; // Тот же тэг, но для превью 

// Текст ошибок 
$error_by_mysql = "<span style=\"font: bold 15px tahoma; color: red;\">Ошибка при добавлении данных в базу</span>"; 
$error_by_file = "<span style=\"font: bold 15px tahoma; color: red;\">Невозможно загрузить файл в директорию. Возможно её не существует</span>"; 



// Начало 
if(isset($_FILES["myfile"])) 
{ 
$myfile = $_FILES["myfile"]["tmp_name"]; 
$myfile_name = $_FILES["myfile"]["name"]; 
$myfile_size = $_FILES["myfile"]["size"]; 
$myfile_type = $_FILES["myfile"]["type"]; 
$error_flag = $_FILES["myfile"]["error"]; 

// Если ошибок не было 
if($error_flag == 0) 
{ 
         
     
$DOCUMENT_ROOT = $_SERVER['DOCMENT_ROOT']; 
$upfile = getcwd()."\\fotos\\" . time()."_".basename($_FILES["myfile"]["name"]); 
if (
$_FILES['myfile']['tmp_name']) 
{ 

   
//Если не удалось загрузить файл 

if (!move_uploaded_file($_FILES['myfile']['tmp_name'], $upfile))  
{ 
echo 
"$error_by_file"; 
exit; 
} 

} 
else 
{ 
    echo 
'Проблема: возможна атака через загрузку файла. '; 
    echo 
$_FILES['myfile']['name']; 
    exit; 
} 


// Заносим путь картинки в базу данных 
$q = "INSERT INTO foto (url,name) VALUES ('$foto_name','$foto_light_name')"; 
$query = mysql_query($q); 

// Загрузка с базы


$result = mysql_query("SELECT * FROM foto WHERE name='$foto_light_name'",$db);

if (!
$result)
{
echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору admin@ruseller.com. <br> <strong>Код ошибки:</strong></p>";
exit(
mysql_error());
}

if (
mysql_num_rows($result) > 0)

{
$myrow = mysql_fetch_array($result);
printf ("<img src='%s'/>",$myrow['url']);

$adres = $myrow['url'];
}

else
{
echo 
"<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
// Данные успешно внесены в базу данных, выводим сообщение 
if ($query == 'true') { 
echo 
"<br /><b>Данные успешно внесены в базу</b>"; 
} 

// В противном случае, выводим ошибку при добавлении в базу данных 
else { 
echo 
"$error_by_mysql"; 

} 

        } 
  
 elseif (
$myfile_size == 0) { 
 echo 
"Пустая форма!"; 
 }  
     

}
?>
<form action="end.php" method="post" name="end">
<?
// Вывод базы картинок
$result1 = mysql_query("SELECT * FROM data",$db);

if (!
$result1)
{
echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору admin@ruseller.com. <br> <strong>Код ошибки:</strong></p>";
exit(
mysql_error());
}

if (
mysql_num_rows($result1) > 0)

{
$myrow1 = mysql_fetch_array($result1); 
do 
{
printf ("<br><br><img src='admin/%s'><input name='vibor' type='radio' value='%s'><label>%s</label><br>",$myrow1["url"],$myrow1["id"],$myrow1["name"]); 
}
while (
$myrow1 = mysql_fetch_array($result1));
 

}

else
{
echo 
"<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
?>
<input name="load" type="hidden" value="<? echo $adres; ?>" />
<input name="sub" type="submit" value="далее" />

</form>
как зделать чтобы загружаемая катинка загружалась с шириной 215px и сохроняла пропорции?
 
Ответить с цитированием

  #7035  
Старый 18.12.2008, 01:01
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами: 11278406

Репутация: 818


По умолчанию

Цитата:
Ладно,то что в нем у меня находит ошибку в последней строке,чтото там с $end.
Ето значит гдето цикл не закрыт, вот пример банального сравнения мд5 с словариком
PHP код:
<?php
$hash 
= '202cb962ac59075b964b07152d234b70';
$pass = array('12','21','321','123');
for (
$i=0, $count=count($pass); $i<$count; $i++) {
if(
$hash == md5($pass[$i]))
{
    echo 
"hash - $hash == $pass[$i]";die;
}
}
?>
ЗЫ когда работаеш со словарями из файлов, юзай trim() дабы обрезать символы перевода каретки "\r\n"

Последний раз редактировалось b3; 18.12.2008 в 02:09..
 
Ответить с цитированием

  #7036  
Старый 18.12.2008, 01:05
ss88
Участник форума
Регистрация: 27.11.2008
Сообщений: 161
С нами: 9185589

Репутация: 128
По умолчанию

Цитата:
Сообщение от geforce  
Вопрос???

вот скрипт загруски!

PHP код:
//труляля куча всего веселого 
как зделать чтобы загружаемая катинка загружалась с шириной 215px и сохроняла пропорции?
Не знаю, как другие, а я всегда меняю размеры и пропорции уже на сервере средствами GD2
Код привести или такое не устраивает?
И почему ты так наплевал на переделанную версию этого твоего загрузочного скрипта?
 
Ответить с цитированием

  #7037  
Старый 18.12.2008, 01:09
geforce
Постоянный
Регистрация: 21.08.2008
Сообщений: 302
С нами: 9326973

Репутация: -25
Wink

Цитата:
Сообщение от ss88  
Не знаю, как другие, а я всегда меняю размеры и пропорции уже на сервере средствами GD2
Код привести или такое не устраивает?
И почему ты так наплевал на переделанную версию этого твоего загрузочного скрипта?
Да я не напливал друг! Ты извения я просто ламал голову над ошибкой которая была в другой странице я нашёл ответ выше описал! Если не трудно могешь мне набросать как ты хотел только так чтоб суть скрипта не менялася!???
 
Ответить с цитированием

  #7038  
Старый 18.12.2008, 01:10
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
С нами: 9223466

Репутация: 3171


По умолчанию

Хм,решил проблему с выводом лишних строк проверкой перемееной в начале скрипта на существование.Но, брут как не хотел идти так и не идет.Все время пишет что Ноу кракед =(
Чтото никак =)
 
Ответить с цитированием

  #7039  
Старый 18.12.2008, 01:19
geforce
Постоянный
Регистрация: 21.08.2008
Сообщений: 302
С нами: 9326973

Репутация: -25
По умолчанию

m0Hze

PHP код:
echo '<form method = "POST">'; 
echo 
'<input type = "text" name = "hash" value = "">'; 
echo 
'<input type = "submit" value = "Crack">'; 
echo 
'</form>'; 
Ты забыл action="" в первой строчке!
 
Ответить с цитированием

  #7040  
Старый 18.12.2008, 01:22
ss88
Участник форума
Регистрация: 27.11.2008
Сообщений: 161
С нами: 9185589

Репутация: 128
По умолчанию

Цитата:
Сообщение от geforce  
Да я не напливал друг! Ты извения я просто ламал голову над ошибкой которая была в другой странице я нашёл ответ выше описал! Если не трудно могешь мне набросать как ты хотел только так чтоб суть скрипта не менялася!???
Я тебе щаз опять приведу тот код, что я уже писал, но я оттуда выкинул неиспользуемые вещи...например, я так и не понял, почему ты не проверял успешность добавления, а потом зачем-то еще и делал выборку того, что только что добавил...
PHP код:
<?php
// Подключаемься к базе данных  
include ("db.php");
//================Настройки============= // 
// максимальная ширина картинок на превью   
$maxwidth = "300px";
// Директория для фотографий товаров 
$fotos_dir = "fotos/";
// Полное имя файла вместе с путем
$foto_name = $fotos_dir . time() . "_" . $_FILES['myfile']['name'];
// Готовый тэг для вставки картинки на страницу  
$foto_tag = "<img src='{$foto_name}' border='0'>";
// Тот же тэг, но для превью
$foto_tag_preview = "<img src='{$foto_name}' border='0' width='{$maxwidth}'>";
// Текст ошибок  
$error_by_mysql = "<span style='font: bold 15px tahoma; color: red'>Ошибка при добавлении данных в базу</span>";
$error_by_file = "<span style='font: bold 15px tahoma; color: red'>Невозможно загрузить файл в директорию. Возможно её не существует</span>";
// Начало  
if (isset($_FILES["myfile"])) {
    
// Если ошибок не было  
    
if (($_FILES["myfile"]["error"] == 0) && (in_array(strtolower(substr($_FILES['myfile']['name'], - 4)), array(".jpg" , ".gif" , ".png")))) {
        
$upfile = getcwd() . "/fotos/" . time() . "_" . basename($_FILES["myfile"]["name"]);
        if (
$_FILES['myfile']['tmp_name']){
            
//Если не удалось загрузить файл  
            
if (! move_uploaded_file($_FILES['myfile']['tmp_name'], $upfile))
                exit(
$error_by_file);
        }
        else
            exit (
"Проблема: возможна атака через загрузку файла хотя проверяется это не так, а, наверное, просто нам подсовывают файл не с тем расширением {$_FILES ['myfile'] ['name']}");
        
// Заносим путь картинки в базу данных  
        
$query = mysql_query("INSERT INTO foto (url,name) VALUES ('{$foto_name}','{$fotos_dir}{$foto_name}')", $db);
        if (
$query)
            echo 
"{$foto_tag}Ъ<br /><b>Данные успешно внесены в базу</b>";
        else
            exit(
"<p>Ошибка сохранения данных.</p>" . mysql_error());
    } else 
//Если возникла ошибка при передаче или левое расширение файла
        
exit("Ошибка обработки данных либо вы пытаетесь подсунуть нам свинью");
}
?>
Теперь про изменение размеров
PHP код:
class PictureItem
    
{
    function 
__construct($FileName)
        {
        switch(
substr($FileName,-4))
            {
            case 
".gif":
                {
                
$this->Res=imagecreatefromgif($FileName);
                
$this->Ext=($this->Res)?".gif":"";
                break;
                }
            case 
".jpg":
                {
                
$this->Res=imagecreatefromjpeg($FileName);
                
$this->Ext=($this->Res)?".jpg":"";
                break;
                }
            }
        if(
$this->Res)
            {
            
$this->Width=imagesx($this->Res);
            
$this->Height=imagesy($this->Res);
            
$this->FileName=$FileName;
            }
        }
//Изменение размера открытого изображения
//Если указаны оба параметра, то изображение будет принудительно растянуто
//Если задан только первый параметр, то изображение будет пропорционально изменено
    
function Resize($nWidth,$nHeight=-1)
        {
        if(
$this->Width!=-1)
            {
            
$Koef=($nWidth/$this->Width);
            if(
$nHeight==-1)
                {
                
$nHeight=(int)($Koef*$this->Height);
                }
            
$nRes=imagecreatetruecolor($nWidth,$nHeight);
            if(!
imagecopyresampled($nRes,$this->Res,0,0,0,0,$nWidth,$nHeight,$this->Width,$this->Height))
                return 
FALSE;
            
$this->Res=$nRes;
            
$this->Width=$nWidth;
            
$this->Height=$nHeight;
            return 
TRUE;
            }
        else
            {
            return 
FALSE;
            }
        }
//------много чего еще было
private  $FileName="",$Res,$Ext,$Width=-1,$Height=-1;
} 
Это неполный код одного небольшого класса когда-то мною написанного, очень давно, но зато довольно просто, хоть и страшно

Последний раз редактировалось ss88; 18.12.2008 в 01:36..
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 3 (пользователей: 0 , гостей: 3)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.