ПОМОГИТЕ! IDC СМС Спамер...

Discussion in 'Электроника и Фрикинг' started by slesher, 16 Apr 2010.

  1. slesher

    slesher Banned

    Joined:
    29 Nov 2009
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Извените, может я не по адресу но всеже:

    Всем привет! У меня такой вопрос...
    Есть оператор мобильной связи IDC. Так же у них на серваке есть сайт для отправления СМС-Сообщений на телефоны подключенные к их компании... Вот ссылка: http://sms.idknet.com... Отсюда я и собираюсь отправлять СМС спам...
    Немного подумав как это проще сделать я нашел самый оптимальный вариант, и перешел к действиям...
    1) Снифером HTTP Analyzer 5.0 отсканировал post запрос, который отправляется на файлик отбработчика: http://sms.idknet.com/sms.php
    Оказалось, что при отправке в обработчик поступают следующие параметры:
    prefix - Код оператора
    txtAddr - Номер телефона
    sum - Оставшееся колличество символов
    txtSM - Текст СМС Сообщения
    code - Код Капчи
    Submit2.x - Абсцысса кнопки "Отправить" (Оставить по умолчанию 35)
    Submit2.y - Ордината кнопки "Отправить" (Оставить по умолчанию 15)
    Submit2 - Надпись на кнопке (Оставить по умолчанию Отправить)

    Если все это дело отправлять Get запросом, то выходит что то вроде такова: http://sms.idknet.com/sms.php?prefix=777&txtAddr=12345&sum=160&txtSM=%C2%E2%E5%E4%E8%F2%E5+%F1%EE%EE%E1%F9%E5%ED% E8%E5.+%C4%EB%E8%ED%E0+%F1%EE%EE%E1%F9%E5%ED%E8%FF +%ED%E5+%E4%EE%EB%E6%ED%E0+%EF%F0%E5%E2%FB%F8%E0%F 2%FC+160+%F1%E8%EC%E2%EE%EB%EE%E2.&code=&Submit2.x=35&Submit2.y=15&Submit2=%CE%F2%EF%F0%E0%E2%E8%F2%FC

    Но после нескольких эксперементов, убедился, что Get запросом тут не обойтись, пишет, что незаполнены поля...

    Я стал юзать Post...
    КОД:
    procedure TForm1.Button2Click(Sender: TObject);
    var data: tstringlist;
    ssylka,STR: string;
    begin
    idhttp1.HandleRedirects:=true;
    STR:=idhttp1.Get('http://sms.idknet.com');
    ssylka:='http://sms.idknet.com/sms.php';
    data:=tstringlist.Create;
    data.Add('code='+edit3.text);
    data.Add('prefix='+st);
    data.Add('Submit2=Отправить');
    data.Add('Submit2.x=27');
    data.Add('Submit2.y=6');
    data.Add('sum=160');
    data.Add('txtAddr='+edit1.text);
    data.Add('txtSM='+edit2.text);
    str:=idhttp1.Post(ssylka, data);
    showmessage(idhttp1.URL.URI);
    if pos('class="bad"', STR) <> 0 then
    label5.Caption:='Сообщение неотправленно!'
    else
    label5.Caption:='Сообщение отправленно!';
    end;

    И функция парса:
    function tform1.pars(T_, ForS, _T:string):string;
    var a, b: integer;
    begin
    Result:='';
    if (T_ = '') or (ForS='') or (_T = '') then
    exit;
    a:=pos(T_,ForS);
    if a = 0 then exit
    else
    a:=a+length(T_);
    fors:=copy(ForS, a, length(ForS) - a + 1);
    if b > 0 then
    result:=copy(ForS,1,b-1);
    end;

    Все вродебы не плохо, но осталась одна нерешенная проблема!...(( Что делать с капчей...
    Подумав, я не стал заморачиваться, и решил просто сделать так, чтобы капча выводилась в программу, и я сам ее каждый раз вводил...
    Код примерно такой:

    procedure TForm1.Label3Click(Sender: TObject);
    var _Captcha : TJPEGImage;
    F_body : TMemoryStream;
    id, a:string;
    MyIdHTTP : TIdHTTP;
    begin
    MyIdHTTP:=TIdHTTP.Create(Self);
    F_body := TMemoryStream.Create;
    _Captcha:=TJPEGImage.Create;
    try
    MyIdHTTP.Get('http://sms.idknet.com/code.php', F_body);
    F_body.Seek(0, soFromBeginning);
    _Captcha.LoadFromStream(F_body);
    Image1.Picture.Assign(_Captcha);
    Image1.Width:=_Captcha.Width;
    Image1.Height:=_Captcha.Height;
    finally
    F_body.Free;
    _Captcha.Free;
    end;
    end;

    Сама капча находится на главной страничке http://sms.idknet.com, но вытаскивается туда она со странички http://sms.idknet.com/code.php

    Все вроде бы замечательно, капчу программа в себя вытаскивает нормально, но когда я ее ввожу (и ввожу правильно) всеравно отправка не идет, и пишет что капча введена неверно!

    Сначала не мог понять в чем прикол, потом догнал... Капча та каждый раз при обновление меняется...
    Я получается вытаскиваю капчу одну, ввожу ее, а отом при Post запросе вытаскивается страница целиком вместе с капчей, следовательно и капча меняется...

    Что мне делать в таком случае? Подскажите пожалуйста!!!