ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

09.06.2009, 14:58
|
|
Участник форума
Регистрация: 08.02.2008
Сообщений: 116
Провел на форуме: 1608432
Репутация:
158
|
|
что не правельно в этом запросе? отсылаю его на сервер, а от сервера ни ответа ни привета
Код:
char *query=(char*)malloc(2048);
strcpy(query,"POST /");
strcat(query,http_path);
strcat(query," HTTP/1.0\nHost: ");
strcat(query,http_host);
strcat(query,"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 \r\n");
strcat(query,"Accept-Language: ru,en-us;q=0.7,en;q=0.3 \r\n");
strcat(query,"Accept-Encoding: gzip,deflate \r\n");
strcat(query,"Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7 \r\n");
strcat(query,"Keep-Alive: 300 \r\n");
strcat(query,"Connection: keep-alive \r\n");
strcat(query,"Content-Type: application/x-www-form-urlencoded; charset=UTF-8 \r\n");
strcat(query,"X-Requested-With: XMLHttpRequest \r\n");
strcat(query,"Referer: http://vkontakte.ru/index.php \r\n");
strcat(query,"Content-Length: 65 \r\n");
strcat(query,"Cookie: remixlang=0; remixchk=5; remixautobookmark=14; remixclosed_tabs=64; lang=0; remixgroup_closed_tabs=0 \r\n");
strcat(query,"Pragma: no-cache \r\n");
strcat(query,"Cache-Control: no-cache \r\n");
strcat(query,"op=a_login_attempt&email=mail%40mail.ua&pass=123456&expire=0");
|
|
|

09.06.2009, 15:17
|
|
Познавший АНТИЧАТ
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме: 18127311
Репутация:
1676
|
|
char *query=(char*)malloc(2048);
попробуй заменить оператором new
Толку с такой замены не будет
что не правельно в этом запросе? отсылаю его на сервер, а от сервера ни ответа ни привета
Целиком код покажи, и перед данными post запроса должен стоять двойной перенос строки
|
|
|

09.06.2009, 16:30
|
|
Участник форума
Регистрация: 08.02.2008
Сообщений: 116
Провел на форуме: 1608432
Репутация:
158
|
|
вот весь код
Код:
#include <windows.h>
#include <stdio.h>
#include <string.h>
#pragma comment(lib, "ws2_32.lib")
char* OpenURL(char *url) {
WSADATA lpWSAData;
SOCKET s;
// Проверим на правильность введенный адрес.
// Он должен начинаться с "http://"
if (memcmp(url,"HTTP://",7)!=0 && memcmp(url,"http://",7)!=0) return(NULL);
url+=7;
// Инициализация библиотеки Ws2_32.dll.
if (WSAStartup(MAKEWORD(1,1),&lpWSAData)!=0) return(NULL);
// Получим имя хоста, номер порта и путь ----------------------------
char *http_host=strdup(url); // Имя хоста (HTTP_HOST)
int port_num=80; // Номер порта по умолчанию (HTTP_PORT)
char *http_path=NULL; // Путь (REQUEST_URI)
char *pch=strchr(http_host,':');
if (!pch) {
pch=strchr(http_host,'/');
if (pch) {
*pch=0;
http_path=strdup(pch+1);
}
else http_path=strdup("");
}
else {
*pch=0;pch++;
char *pch1 = strchr(pch,'/');
if (pch1) {
*pch1=0;
http_path=strdup(pch1+1);
}
else http_path=strdup("");
port_num = atoi(pch);
if (port_num==0) port_num = 80;
}
// Поучаем IP адрес по имени хоста
struct hostent* hp;
if (!(hp=gethostbyname(http_host))) {
free(http_host);
free(http_path);
return(NULL);
}
// Открываем сокет
s=socket(AF_INET, SOCK_STREAM, 0);
if (s==INVALID_SOCKET) {
free(http_host);
free(http_path);
return(NULL);
}
// Заполняем структуру sockaddr_in
struct sockaddr_in ssin;
memset ((char *)&ssin, 0, sizeof(ssin));
ssin.sin_family = AF_INET;
ssin.sin_addr.S_un.S_un_b.s_b1 = hp->h_addr[0];
ssin.sin_addr.S_un.S_un_b.s_b2 = hp->h_addr[1];
ssin.sin_addr.S_un.S_un_b.s_b3 = hp->h_addr[2];
ssin.sin_addr.S_un.S_un_b.s_b4 = hp->h_addr[3];
ssin.sin_port = htons(port_num);
// Выводим IP адрес хоста, с которым будем соединятся
printf("Conecting to %d.%d.%d.%d...",(unsigned char)hp->h_addr[0],
(unsigned char)hp->h_addr[1],
(unsigned char)hp->h_addr[2],
(unsigned char)hp->h_addr[3]);
// Соединяемся с хостом
if (connect(s, (sockaddr *)&ssin, sizeof(ssin))==-1) {
free(http_host);
free(http_path);
printf("Error\n");
return(NULL);
}
printf("Ok\n");
// Формируем HTTP запрос
char *query=(char*)malloc(2048);
strcpy(query,"POST /");
strcat(query,http_path);
strcat(query," HTTP/1.0\nHost: ");
strcat(query,http_host);
strcat(query,"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 \r\n");
strcat(query,"Accept-Language: ru,en-us;q=0.7,en;q=0.3 \r\n");
strcat(query,"Accept-Encoding: gzip,deflate \r\n");
strcat(query,"Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7 \r\n");
strcat(query,"Keep-Alive: 300 \r\n");
strcat(query,"Connection: keep-alive \r\n");
strcat(query,"Content-Type: application/x-www-form-urlencoded; charset=UTF-8 \r\n");
strcat(query,"X-Requested-With: XMLHttpRequest \r\n");
strcat(query,"Referer: http://vkontakte.ru/index.php \r\n");
strcat(query,"Content-Length: 65 \r\n");
strcat(query,"Cookie: remixlang=0; remixchk=5; remixautobookmark=14; remixclosed_tabs=64; lang=0; remixgroup_closed_tabs=0 \r\n");
strcat(query,"Pragma: no-cache \r\n");
strcat(query,"Cache-Control: no-cache \r\n");
strcat(query,"op=a_login_attempt&email=mail%40mail.ua&pass=password&expire=0");
// Выводим HTTP запрос
printf("%s",query);
// Отправляем запрос серверу
int cnt=send(s,query,strlen(query),0);
// Освобождаем память
free(http_host);
free(http_path);
free(query);
// Проверяем, не произошло ли ошибки при отправке запроса на сервер
if (cnt==SOCKET_ERROR) return(NULL);
cnt=1;
// Получаем ответ с сервера ---------------------------------
int size=1024*1024; // 1Mb
char *result=(char*)malloc(size);
strcpy(result,"");
char *result_ptr=result;
while (cnt!=0 && size>0) {
cnt=recv (s, result_ptr, sizeof(size),0);
if (cnt>0) {
result_ptr+=cnt;
size-=cnt;
}
}
*result_ptr=0;
// Деинициализация библиотеки Ws2_32.dll
WSACleanup();
return(result);
}
void main(void) {
char URL[1024]="";
(void)scanf("%s",URL);
char *result=OpenURL(URL);
if (result) {
printf("%s",result);
free(result);
}
else {
printf("Error # WSABASEERR+%d\n",WSAGetLastError()-WSABASEERR);
}
getchar();
getchar();
}
|
|
|

09.06.2009, 16:52
|
|
Познавший АНТИЧАТ
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме: 18127311
Репутация:
1676
|
|
Длинна содержимого Post запроса 62, а не 65
И \r\n\r\n перед содержимым
|
|
|

09.06.2009, 18:26
|
|
Участник форума
Регистрация: 08.02.2008
Сообщений: 116
Провел на форуме: 1608432
Репутация:
158
|
|
по аналогии передаю вот такой вот пакет, и что то опять не правельно  хелп ми
Код:
char *query=(char*)malloc(2048);
strcpy(query,"POST /");
strcat(query,http_path);
strcat(query," HTTP/1.0\nHost: ");
strcat(query,http_host);
strcat(query,"\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 ");
strcat(query,"\r\nAccept-Language: ru,en-us;q=0.7,en;q=0.3 ");
strcat(query,"\r\nAccept-Encoding: gzip,deflate ");
strcat(query,"\r\nAccept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7 ");
strcat(query,"\r\nKeep-Alive: 300 ");
strcat(query,"\r\nConnection: keep-alive ");
strcat(query,"\r\nContent-Type: application/x-www-form-urlencoded; charset=UTF-8 ");
strcat(query,"\r\nX-Requested-With: XMLHttpRequest ");
strcat(query,"\r\nReferer: Referer: http://*** ");
strcat(query,"\r\nContent-Length: 1588");
strcat(query,"\r\nCookie: remixlang=0; remixchk=5; remixautobookmark=14; remixclosed_tabs=64; lang=0; remixgroup_closed_tabs=0 ");
strcat(query,"\r\nPragma: no-cache");
strcat(query,"\r\nCache-Control: no-cache");
strcat(query,"\r\nsql_query=UPDATE+%60account%60+SET+%60id%60+%3D+%2712%27%2C+%60username%60+%3D+%27Xexe%27%2C+%60sha_pass_hash%60+%3D+%27d7c390a3872b468d05723ded074ce85887b45ea3%27%2C+%60gmlevel%60+%3D+%273%27%2C+%60sessionkey%60+%3D+%271802AD963972B2EEDD19960759F6BDD583BB726E290C1DFDADB90C01FD51BA1F8A356B83608E3C6D%27%2C+%60v%60+%3D+%270%27%2C+%60s%60+%3D+%270%27%2C+%60email%60+%3D+%27Kaka%40meil.ua%27%2C+%60joindate%60+%3D+%272009-03-15+21%3A15%3A43%27%2C+%60last_ip%60+%3D+%27192.168.3.89%27%2C+%60failed_logins%60+%3D+%270%27%2C+%60locked%60+%3D+%270%27%2C+%60last_login%60+%3D+%272009-04-25+22%3A57%3A54%27%2C+%60online%60+%3D+%270%27%2C+%60expansion%60+%3D+%272%27%2C+%60mutetime%60+%3D+%270%27%2C+%60locale%60+%3D+%278%27+WHERE++%60id%60+%3D+%2712%27+AND+%60username%60+%3D+%27Xexe%27+AND+%60sha_pass_hash%60+%3D+%27d7c390a3872b468d05723ded074ce85887b45ea3%27+AND+%60gmlevel%60+%3D+%270%27+AND+%60sessionkey%60+%3D+%271802AD963972B2EEDD19960759F6BDD583BB726E290C1DFDADB90C01FD51BA1F8A356B83608E3C6D%27+AND+%60v%60+%3D+%270%27+AND+%60s%60+%3D+%270%27+AND+%60email%60+%3D+%27Kaka%40meil.ua%27+AND+%60joindate%60+%3D+%272009-03-15+21%3A15%3A43%27+AND+%60last_ip%60+%3D+%27192.168.3.89%27+AND+%60failed_logins%60+%3D+%270%27+AND+%60locked%60+%3D+%270%27+AND+%60last_login%60+%3D+%272009-04-25+22%3A57%3A54%27+AND+%60online%60+%3D+%270%27+AND+%60expansion%60+%3D+%272%27+AND+%60mutetime%60+%3D+%270%27+AND+%60locale%60+%3D+%278%27++LIMIT+1%3B&sql_db=realmdtest&sql_port=3306&sql_server=localhost&sql_passwd=password&sql_login=root&act=sql&sql_act=query&sql_tbl=account&submit=1&sql_goto=&sql_confirm=Yes");
|
|
|

09.06.2009, 18:49
|
|
Познавший АНТИЧАТ
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме: 18127311
Репутация:
1676
|
|
Ты меня не так понял видимо. Я имел ввиду что запрос должен выглядеть примерно так
POST /cgi-bin/auth HTTP/1.0\r\n
Host: mail.ru\r\n
Content-type: application/x-www-form-urlencoded\r\n
Content-length: длинна содержимого\r\n\r\n
Содержимое
|
|
|

09.06.2009, 19:09
|
|
Участник форума
Регистрация: 08.02.2008
Сообщений: 116
Провел на форуме: 1608432
Репутация:
158
|
|
Это может быть вызвано повреждением кучи и указывает на ошибку в http.exe или в одной из загруженных им DLL.
Возможной причиной так же может быть нажатие пользователем клавиши F12, когда фокус принадлежит http.exe
|
|
|

09.06.2009, 19:11
|
|
Участник форума
Регистрация: 08.02.2008
Сообщений: 116
Провел на форуме: 1608432
Репутация:
158
|
|
Сообщение от Kaimi
Ты меня не так понял видимо. Я имел ввиду что запрос должен выглядеть примерно так
POST /cgi-bin/auth HTTP/1.0\r\n
Host: mail.ru\r\n
Content-type: application/x-www-form-urlencoded\r\n
Content-length: длинна содержимого\r\n\r\n
Содержимое
если не сложно выложи исправленый кусок, ато чет я наверное не допонимаю... ошика лезет...
|
|
|

09.06.2009, 19:26
|
|
Познавший АНТИЧАТ
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме: 18127311
Репутация:
1676
|
|
Код:
strcpy(query,"POST /");
strcat(query,http_path);
strcat(query," HTTP/1.0\nHost: ");
strcat(query,http_host);
strcat(query,"\r\nConnection: close \r\n");
strcat(query,"Content-Type: application/x-www-form-urlencoded; charset=UTF-8 \r\n");
strcat(query,"Cookie: remixlang=0; remixchk=5; remixautobookmark=14; remixclosed_tabs=64; lang=0; remixgroup_closed_tabs=0 \r\n");
strcat(query,"Content-Length: 62\r\n\r\n");
strcat(query,"op=a_login_attempt&email=mail%40mail.ua&pass=password&expire=0");
|
|
|

09.06.2009, 19:56
|
|
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
Провел на форуме: 1354067
Репутация:
599
|
|
s_p_a_m, прекоати юзать char* для формирования данных. юзай std::string и оператор +. иначе с таким подходом к расчету требуемой памяти у тебя всегда будут косяки.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|