HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 10.03.2009, 16:18
eLWAux
Постоянный
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


По умолчанию

скрипт загрузки изображений на radikal.ru

perl
PHP код:
#! /usr/bin/perl
use IO::Socket::INET;

# forming header's ..
$request1 "POST http://www.radikal.ru/action.aspx HTTP/1.1\r\n".
            
"Host: www.radikal.ru\r\n".
            
"User-Agent: Mozilla/5.0\r\n".
            
"Connection: close\r\n".
            
"Referer: http://www.radikal.ru\r\n".
            
"Content-Type: multipart/form-data; boundary=:boundary:\r\n".
            
"Content-Length: :length:\r\n\r\n";
$request2 "--:boundary:\r\n".
            
"Content-Disposition: form-data; name=\"upload\"\r\n".
            
"\r\nyes\r\n".
            
"--:boundary:\r\n".
            
"Content-Disposition: form-data; name=\"F\"; filename=\":name:\"\r\n".
            
"Content-Type: image/:type:\r\n\r\n";

# file name,type
    
$file shift or die "use: $0 <image>\n";
    
$fsize = -s $file;
    (
$fname) = $file =~ /([^\/]+)$/;
    (
$ftype) = $fname =~ /\.([^\.]+)$/;
    
unless($fname && $ftype) { die "[-] invalid filename\n"; }

# read file
    
open FID$file or die "[-] failed to open $file!\n";
    
sysread(FID$data$fsize);
    
close FID;

    
$boundry '---------------------------2132365407679';

    
$request2 =~ s/:boundary:/$boundry/;
    
$request2 =~ s/:boundary:/$boundry/;
    
$request2 =~ s/:name:/$fname/;
    
$request2 =~ s/:type:/$ftype/;
    
$request2 .= $data."\r\n--$boundry--\r\n";
    
$length length($request2);
    
$request1 =~ s/:boundary:/$boundry/;
    
$request1 =~ s/:length:/$length/;
    
$request1 .= $request2;


 
# create socket
*SOCK IO::Socket::INET->new(
    
PeerAddr => "radikal.ru",
    
PeerPort => 80,
    
Proto    => 'tcp',
    
Type     => SOCK_STREAM)
 or die(
"[-] connection failed!\n");

 
# read sock answer
 
$buff "";
 print 
SOCK $request1;
 while(
$line = <SOCK>){
    
$buff .= $line;
    if (
$line=~/<\/html>/) {last;}
 }
 
close SOCK;

 
# parce
 
$buff =~ /<a href="http:\/\/(.*)" target="_blank">/;
 print 
'Link: http://'.$1."\n"
 
Ответить с цитированием
 





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


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




ANTICHAT ™ © 2001- Antichat Kft.