HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

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

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

  #1  
Старый 21.02.2009, 20:57
Assembler
Участник форума
Регистрация: 01.09.2007
Сообщений: 203
Провел на форуме:
812964

Репутация: 302
Отправить сообщение для Assembler с помощью ICQ
По умолчанию

Модераторы, если можно перенесите в раздел Кодинг Delphi ..
 
Ответить с цитированием

  #2  
Старый 21.02.2009, 22:25
А®ТеS
Участник форума
Регистрация: 25.11.2006
Сообщений: 291
Провел на форуме:
1537850

Репутация: 536
Отправить сообщение для А®ТеS с помощью ICQ
По умолчанию

Идея интересная, но будущего нет (ИМХО). Было бы интереснее, если реализовать в виде online-сервиса, написав, скажем, на PHP. А то при расширении функционала возникнут проблемы:
1. Не у всех широкий канал. Если добавть определение ТИЦ, ПР, отправку сообщений, то будет тратиться неоправданно много трафика.
2. При обновлении программы (а они, я думаю, будут довольно часто на первых порах) каждый раз придется выкачивать новую версию, а если будет сервисом, то просто один раз изменить код на сервере.
3. А так функционал программы можно расширять практически бесконечно: добавить автоподбор полей/таблиц, брутер слепых инъекций и т.п. Ведь было бы куда полезнее, чем просто выкладывать голую ссылку с минимумом системной информации.
В общем, удачи в кодинге .
 
Ответить с цитированием

  #3  
Старый 21.02.2009, 23:36
Assembler
Участник форума
Регистрация: 01.09.2007
Сообщений: 203
Провел на форуме:
812964

Репутация: 302
Отправить сообщение для Assembler с помощью ICQ
По умолчанию

Вобщем, решил начать с интерфйса, так как дизайнер я не зе бест, то хочу посоветоваться с вами, как лучше оформить программу. Вот так сказать мой вариант, жду ваших предложений..


ЗЫЖ Хочу на делфях, а дальше посмотрим =)

Последний раз редактировалось Assembler; 21.02.2009 в 23:43..
 
Ответить с цитированием

  #4  
Старый 21.02.2009, 23:40
eLWAux
Постоянный
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


Отправить сообщение для eLWAux с помощью ICQ
По умолчанию

Assembler, вот моя прога:
http://forum.antichat.ru/thread100240.html
там все в стиле ачата) +сорс и компонент TRegExpr в архиве
 
Ответить с цитированием

  #5  
Старый 22.02.2009, 01:13
Assembler
Участник форума
Регистрация: 01.09.2007
Сообщений: 203
Провел на форуме:
812964

Репутация: 302
Отправить сообщение для Assembler с помощью ICQ
По умолчанию

eLWAux, не пугай меня так =) Я уж думал она именно то делает что я хочу =) а вот за TregExpr спасиб =)
И такс, первый вопрос, хочу сделать так чтобы прога перед началом работы при нажатии кнопки загружала антибоян 1(раз перед началом работы) И потом уже внутри себя по нему проверяла сайты на боян... Подскажите каким путем это можно сделать, желательно понятным для меня языком, то есть не слишком замудренно...

Последний раз редактировалось Assembler; 22.02.2009 в 01:16..
 
Ответить с цитированием

  #6  
Старый 22.02.2009, 01:26
eLWAux
Постоянный
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


Отправить сообщение для eLWAux с помощью ICQ
По умолчанию

откуда загружать? из сайта или из файла?
--
загружаеш, например в listbox
и потом можно проверить:
if (listbox.items.indexof('сайт')>0) begin уже есть такой end;
 
Ответить с цитированием

  #7  
Старый 22.02.2009, 01:31
Assembler
Участник форума
Регистрация: 01.09.2007
Сообщений: 203
Провел на форуме:
812964

Репутация: 302
Отправить сообщение для Assembler с помощью ICQ
По умолчанию

Да с сайта.. хочу чтобы загружал данные в прогу, записывал их допустим в файлик и из него уже чекал.
 
Ответить с цитированием

  #8  
Старый 22.02.2009, 01:36
eLWAux
Постоянный
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


Отправить сообщение для eLWAux с помощью ICQ
По умолчанию

реализация через сокети:
Код:
uses ...,WinSock, ..;
const host = 'www.google.com'; //хост
....
var sock : TSocket;
....
function create_packet(url:string):string;
begin
 result := 'GET '+url+' HTTP/1.0' + #13#10 +
         'Host: ' + Host + #13#10 +
         'User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)' + #13#10 +
         'Accept: text/html' + #13#10 +
         'Keep-Alive: 300'+ #13#10 +
         'Referer: '+url+ #13#10 +
         'Connection: keep-alive' + #13#10#13#10;
end;


function GET(packet: string): string;
var
 wData : WSADATA;
 addr  : sockaddr_in;
 sock  : integer;
 error : integer;
 buf   : array [0..1023] of Char;
 str   : string;
 phe   : PHostEnt;
begin
 Result := '';
 WSAStartup($0101, wData);
 phe := gethostbyname(PChar(string(host)));
 if phe = nil then begin
    WSACleanup;
    exit;
 end;
 
 sock := socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
 if sock = INVALID_SOCKET then begin
    WSACleanup;
    exit;
 end;

 addr.sin_family := AF_INET;
 addr.sin_port   := htons(80);
 addr.sin_addr   := PInAddr(phe.h_addr_list^)^;
 error := connect(sock, addr, sizeof(addr));

 if error = SOCKET_ERROR then begin
    closesocket(sock);
    WSACleanup;
    exit;
 end;
 
 //str := 'GET '+url + ' HTTP/1.0'#13#10#13#10;
 str:=packet;
 send(sock, str[1], Length(str), 0);

 ZeroMemory(@buf, 1024);
 error := recv(sock, buf, 1024, 0);
 while error > 0 do begin
   Result := Result + Copy(buf, 0, error);
   error  := recv(sock, buf, 1024, 0);
 end;

 closesocket(sock);
 WSACleanup;
 if Result <> '' then Result:=Copy(Result, pos(#13#10#13#10, Result)+4,Length(Result));
end; 

var answ : string;
answ := get( create_packet('http://www.google.com/') );
сохранение в файл:
Код:
  AssignFile(myFile, 'file.txt');
   ReWrite(myFile);
   WriteLn(myFile, answ);
   CloseFile(myFile);
ну и прочитать в listbox стандартно:
Код:
listbox1.items.loadfromfile('file.txt');
 
Ответить с цитированием

  #9  
Старый 22.02.2009, 20:28
De-visible
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме:
4037638

Репутация: 1821


Отправить сообщение для De-visible с помощью ICQ
По умолчанию

Цитата:
Сообщение от eLWAux  
реализация через сокети:
Код:
uses ...,WinSock, ..;
const host = 'www.google.com'; //хост
....
var sock : TSocket;
....
function create_packet(url:string):string;
begin
 result := 'GET '+url+' HTTP/1.0' + #13#10 +
         'Host: ' + Host + #13#10 +
         'User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)' + #13#10 +
         'Accept: text/html' + #13#10 +
         'Keep-Alive: 300'+ #13#10 +
         'Referer: '+url+ #13#10 +
         'Connection: keep-alive' + #13#10#13#10;
end;


function GET(packet: string): string;
var
 wData : WSADATA;
 addr  : sockaddr_in;
 sock  : integer;
 error : integer;
 buf   : array [0..1023] of Char;
 str   : string;
 phe   : PHostEnt;
begin
 Result := '';
 WSAStartup($0101, wData);
 phe := gethostbyname(PChar(string(host)));
 if phe = nil then begin
    WSACleanup;
    exit;
 end;
 
 sock := socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
 if sock = INVALID_SOCKET then begin
    WSACleanup;
    exit;
 end;

 addr.sin_family := AF_INET;
 addr.sin_port   := htons(80);
 addr.sin_addr   := PInAddr(phe.h_addr_list^)^;
 error := connect(sock, addr, sizeof(addr));

 if error = SOCKET_ERROR then begin
    closesocket(sock);
    WSACleanup;
    exit;
 end;
 
 //str := 'GET '+url + ' HTTP/1.0'#13#10#13#10;
 str:=packet;
 send(sock, str[1], Length(str), 0);

 ZeroMemory(@buf, 1024);
 error := recv(sock, buf, 1024, 0);
 while error > 0 do begin
   Result := Result + Copy(buf, 0, error);
   error  := recv(sock, buf, 1024, 0);
 end;

 closesocket(sock);
 WSACleanup;
 if Result <> '' then Result:=Copy(Result, pos(#13#10#13#10, Result)+4,Length(Result));
end; 

var answ : string;
answ := get( create_packet('http://www.google.com/') );
сохранение в файл:
Код:
  AssignFile(myFile, 'file.txt');
   ReWrite(myFile);
   WriteLn(myFile, answ);
   CloseFile(myFile);
ну и прочитать в listbox стандартно:
Код:
listbox1.items.loadfromfile('file.txt');
Ну да да да, что бы получить ОДНУ СТРАНИЦУ, мы используем сокеты... показуха какая то...

Получаем страницу с помощью TidHTTP и парсим регуляркой...

Пользоваться сокетами нужно там где они действительно нужны...
 
Ответить с цитированием

  #10  
Старый 22.02.2009, 12:16
Assembler
Участник форума
Регистрация: 01.09.2007
Сообщений: 203
Провел на форуме:
812964

Репутация: 302
Отправить сообщение для Assembler с помощью ICQ
По умолчанию

eLWAux, спасибо огромное. =)

Есть еще один вопрос, можно ли сделать так чтобы когда копаешься на сайте, выделив определнный элемент (название таблицы) и щелкнув правой кнопой мыхи, появлялось контекстное меню, в котором было бы подменю с названием sql, при нажатии которого данные отправлялись в прогу, переделывались в sql hex и после этого записывались в буфер?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программы для работы с железом. Часть I – настройка видеокарт _GaLs_ "Железо" 2 20.12.2006 01:18



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


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




ANTICHAT.XYZ