青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-9  評論-6  文章-5  trackbacks-0
包已經發出,但是偽造IP,無法實現3次握手,在服務器端,包將被丟棄。繼續研究。

//?stdafx.h?:?標準系統包含文件的包含文件,
//?或是經常使用但不常更改的
//?特定于項目的包含文件
//

#pragma?once

#include?
"targetver.h"

#include?
<stdio.h>
#include?
<tchar.h>
#include?
<iostream>?

using?namespace?std;

typedef?unsigned?
short?USHORT;
typedef?unsigned?
char?UCHAR;

#define?URG?0x20?
#define?ACK?0x10?
#define?PSH?0x08?
#define?RST?0x04?
#define?SYN?0x02?
#define?FIN?0x01?

typedef?
struct?ip_hdr?//定義IP首部?
{?
????unsigned?
char?h_verlen;?//4位首部長度,4位IP版本號?
????unsigned?char?tos;?//8位服務類型TOS?
????unsigned?short?total_len;?//16位總長度(字節)?
????unsigned?short?ident;?//16位標識?
????unsigned?short?frag_and_flags;?//3位標志位?
????unsigned?char?ttl;?//8位生存時間?TTL?
????unsigned?char?proto;?//8位協議?(TCP,?UDP?或其他)?
????unsigned?short?checksum;?//16位IP首部校驗和?
????unsigned?int?sourceIP;?//32位源IP地址?
????unsigned?int?destIP;?//32位目的IP地址?
}IPHEADER;?

typedef?
struct?tsd_hdr?//定義TCP偽首部?
{?
????unsigned?
long?saddr;?//源地址?
????unsigned?long?daddr;?//目的地址?
????char?mbz;?
????
char?ptcl;?//協議類型?
????unsigned?short?tcpl;?//TCP長度?
}PSDHEADER;?

typedef?
struct?tcp_hdr?//定義TCP首部?
{?
????USHORT?th_sport;?
//16位源端口?
????USHORT?th_dport;?//16位目的端口?
????unsigned?int?th_seq;?//32位序列號?
????unsigned?int?th_ack;?//32位確認號?
????unsigned?char?th_lenres;?//4位首部長度/6位保留字?
????unsigned?char?th_flag;?//6位標志位?
????USHORT?th_win;?//16位窗口大小?
????USHORT?th_sum;?//16位校驗和?
????USHORT?th_urp;?//16位緊急數據偏移量?
}TCPHEADER;?





//?TODO:?在此處引用程序需要的其他頭文件

#include?"StdAfx.h"
#include?
"HttpWeb.h"

#include?
<winsock2.h>?
#include?
<ws2tcpip.h>?
#pragma?comment(lib,
"ws2_32.lib")??
#define?winsock_version?0x0101

//CheckSum:計算校驗和的子函數?
USHORT?HttpWeb::checksum(USHORT?*buffer,?int?size)?
{?
????unsigned?
long?cksum=0;?
????
while(size?>1)?
????{?
????????cksum?
+=?*buffer++;?
????????size?
-=?sizeof(USHORT);?
????}?
????
if(size)?
????{?
????????cksum?
+=?*(UCHAR*)buffer;?
????}?

????cksum?
=?(cksum?>>?16)?+?(cksum?&?0xffff);?
????cksum?
+=?(cksum?>>16);?
????
return?(USHORT)(~cksum);?
};

HttpWeb::HttpWeb(
void)
{
}

HttpWeb::
~HttpWeb(void)
{
}

void?UseAge()
{
????printf(
"********************************************************************\n");?
????printf(
"Vote?For?yeshj\n");?
????printf(
"\t?Written?by?yurow\n");?
????printf(
"\t?Email:?yurow@163.com\n");?
????printf(
"\t?Blog:?birdshover.cnblogs.com\n");?
????printf(
"Useage:?sniffer?ip?to?vote\n");?
????printf(
"********************************************************************\n");?
}

bool?HttpWeb::Post(char?host[],?char?path[],?char?parms[],int?port)
{
????UseAge();

????WSADATA?WSAData;?
????SOCKET?sock;
????SOCKADDR_IN?addr_in;?
????IPHEADER?ipHeader;?
????TCPHEADER?tcpHeader;?
????PSDHEADER?psdHeader;?

????
char?szSendBuf[4000]?=?{0};?
????BOOL?flag;
????
int?rect,nTimeOver;?
????
if?(WSAStartup(MAKEWORD(2,2),?&WSAData)!=0)?
????{
????????printf(
"WSAStartup?Error!\n");?
????????
return?false;?
????}

????
if?((sock?=?WSASocket(AF_INET,SOCK_RAW,IPPROTO_RAW,NULL,0,WSA_FLAG_OVERLAPPED))?==?INVALID_SOCKET)?
????{
????????printf(
"Socket?Setup?Error!\n");?
????????
return?false;?
????}

????flag
=true;?
????
if?(setsockopt(sock,IPPROTO_IP,?IP_HDRINCL,(char?*)&flag,sizeof(flag))?==?SOCKET_ERROR)?
????{?
????????printf(
"setsockopt?IP_HDRINCL?error!\n");?
????????
return?false;?
????}?

????nTimeOver
=1000;?
????
if?(setsockopt(sock,?SOL_SOCKET,?SO_SNDTIMEO,?(char*)&nTimeOver,?sizeof(nTimeOver))?==?SOCKET_ERROR)?
????{?
????????printf(
"setsockopt?SO_SNDTIMEO?error!\n");?
????????
return?false;?
????}?

????
char?requestString[4000]?=?{0};
????
if(strlen(parms)?>?0)
????????strcat(requestString,
"POST?");
????
else
????????strcat(requestString,
"GET?");
????strcat(requestString,path);
????strcat(requestString,
"?HTTP/1.1\r\n");
????strcat(requestString,
"Host:?");
????strcat(requestString,host);
????strcat(requestString,
"\r\nAccept:?*/*\r\n");
????strcat(requestString,
"Accept-Language:?zh-cn\r\n");
????strcat(requestString,
"User-Agent:?Mozilla/4.0?(compatible;?MSIE?7.0;?Windows?NT?5.2;?Trident/4.0;)\r\n");
????strcat(requestString,
"Accept-Encoding:?gzip,?deflate\r\n");
????strcat(requestString,
"Connection:?Keep-Alive\r\n");
????
????
if(strlen(parms)?>?0){
????????strcat(requestString,
"Content-Type:?application/x-www-form-urlencoded\r\n");
????????strcat(requestString,
"Content-Length:?");
????????
char?*?p?=?new?char[4];
????????itoa(strlen(parms),p,
10);???
????????strcat(requestString,p);
????????strcat(requestString,
"\r\n\r\n");
????????strcat(requestString,parms);
????????strcat(requestString,
"\r\n\r\n");
????}
????cout?
<<?requestString;

????
int?postDataLength?=?strlen(requestString);
????LPHOSTENT?lphostent?
=?gethostbyname(host);
????
????
????addr_in.sin_family?
=?AF_INET;?
????addr_in.sin_port?
=?htons(port);?
????
//addr_in.sin_addr=?*((LPIN_ADDR)*lphostent->h_addr_list);?
????addr_in.sin_addr?=?*(in_addr?*)lphostent->h_addr_list[0];?
????
//填充IP首部?
????ipHeader.h_verlen=(?4<<4?|?sizeof(ipHeader)/sizeof(unsigned?long));?
????
//ipHeader.tos=0;?
????ipHeader.total_len?=?htons(sizeof(ipHeader)?+?sizeof(tcpHeader));?
????ipHeader.ident
=1;?
????ipHeader.frag_and_flags
=0;?
????ipHeader.ttl?
=?128;?
????ipHeader.proto?
=?IPPROTO_TCP;?
????ipHeader.checksum?
=?0;?
????ipHeader.sourceIP?
=?inet_addr("192.168.19.1");?
????ipHeader.destIP?
=?addr_in.sin_addr.S_un.S_addr;

????
//填充TCP首部?
????tcpHeader.th_dport?=?htons(port);??//目標端口
????tcpHeader.th_sport=htons(4000);?//源端口號?
????tcpHeader.th_seq?=?htonl(0x12345678);?
????tcpHeader.th_ack
=0;?
????tcpHeader.th_lenres?
=?(sizeof(tcpHeader)?/?4?<<4|?0);?
????tcpHeader.th_flag?
=?2;?//修改這里來實現不同的標志位探測,2是SYN,1是FIN,16是ACK探測?等等?
????tcpHeader.th_win=?htons(512);?
????tcpHeader.th_urp
=0;?
????tcpHeader.th_sum
=0;?

????psdHeader.saddr?
=?ipHeader.sourceIP;?
????psdHeader.daddr?
=?ipHeader.destIP;?
????psdHeader.mbz?
=?0;?
????psdHeader.ptcl?
=?IPPROTO_TCP;?
????psdHeader.tcpl?
=?htons(sizeof(tcpHeader));?


????
//計算校驗和?
????memcpy(szSendBuf,?&psdHeader,?sizeof(psdHeader));?
????memcpy(szSendBuf
+sizeof(psdHeader),?&tcpHeader,?sizeof(tcpHeader));?
????tcpHeader.th_sum
=checksum((USHORT?*)szSendBuf,sizeof(psdHeader)+sizeof(tcpHeader));?

????memcpy(szSendBuf,?
&ipHeader,?sizeof(ipHeader));?
????memcpy(szSendBuf
+sizeof(ipHeader),?&tcpHeader,?sizeof(tcpHeader));?
????memset(szSendBuf
+sizeof(ipHeader)+sizeof(tcpHeader),?0,?4);?
????ipHeader.checksum
=checksum((USHORT?*)szSendBuf,?sizeof(ipHeader)+sizeof(tcpHeader));?

????memcpy(szSendBuf,?
&ipHeader,?sizeof(ipHeader));?

????memcpy(szSendBuf?
+?sizeof(ipHeader)+sizeof(tcpHeader),requestString,postDataLength);

????cout?
<<?szSendBuf?<<?endl;

????rect
=sendto(sock,?szSendBuf,?sizeof(ipHeader)+sizeof(tcpHeader)?+?postDataLength,?0,?(struct?sockaddr*)&addr_in,?sizeof(addr_in));?
????
????cout?
<<?rect?<<?"\t"?<<?sizeof(ipHeader)?+?sizeof(tcpHeader)?+?postDataLength?<<?endl;
????
????
if?(rect?==?SOCKET_ERROR?||?rect?>?10000L)?
????{?
????????printf(
"send?error!:%d\n",WSAGetLastError());?
????????
return?false;?
????}?
????
else?
????????printf(
"send?ok!\n");?

????closesocket(sock);?
????WSACleanup();?

????
return?false;
}

posted on 2008-11-10 16:43 BirdsHover 閱讀(3290) 評論(2)  編輯 收藏 引用

評論:
# re: Raw Socket 之HTTP,效果不理想 2008-11-12 17:27 | smildlzj@hotmail.com
我以前也試過,如果在同一個局域網就可以.
通過mac地址,從鏈路層驗證的  回復  更多評論
  
# re: Raw Socket 之HTTP,效果不理想 2008-11-22 13:43 | lxsd@21cn.com
我也剛弄了個,是用C#,想模擬正常HTTP連接。
TCPFlags設為0x2,用EndReceive接收服務器返回的正確握手信息,但在客戶端在調用BeginReceive再次偵聽后,向服務器端回發了一個flags為0x4的復位包。如此,后續進程無法進行。暈了好幾天了。  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久黄色小说| 免费亚洲一区二区| 亚洲国产精品一区二区第四页av | 在线精品在线| 在线免费观看视频一区| 在线观看视频一区二区| 亚洲人成网站999久久久综合| 亚洲精品久久久久久久久久久久久 | 亚洲激情另类| 亚洲国产精品热久久| 亚洲日韩欧美一区二区在线| 一区二区欧美在线| 午夜欧美电影在线观看| 老鸭窝91久久精品色噜噜导演| 欧美丰满高潮xxxx喷水动漫| 欧美日韩综合视频| 鲁大师影院一区二区三区| 亚洲黄色在线观看| 亚洲国产你懂的| 亚洲一区欧美二区| 久久亚洲精品伦理| 亚洲全部视频| 午夜激情一区| 美国三级日本三级久久99| 欧美日韩在线另类| 国内精品视频在线观看| 9久re热视频在线精品| 欧美在线一区二区| 亚洲狠狠婷婷| 久久精品视频免费播放| 国产精品超碰97尤物18| 亚洲欧洲日韩女同| 久久久www免费人成黑人精品 | 好吊成人免视频| 9久re热视频在线精品| 久久躁狠狠躁夜夜爽| 日韩视频一区二区在线观看 | 亚洲欧洲综合另类| 欧美一区二区久久久| 欧美理论在线| 亚洲国内高清视频| 久久久久久999| 国产精品99久久久久久www| 美女视频一区免费观看| 国产一区二区在线观看免费| 亚洲伊人观看| 亚洲免费观看高清在线观看| 免费日韩av电影| 一区在线影院| 久久久久久久精| 亚洲欧美久久久| 国产精品久久久久aaaa九色| 亚洲最新色图| 亚洲精品日本| 欧美日韩网站| 亚洲一区二区视频在线观看| 亚洲第一中文字幕在线观看| 老司机免费视频一区二区| 国产在线精品成人一区二区三区 | 欧美高清在线精品一区| 久久国产一区二区三区| 国产亚洲第一区| 久久精品道一区二区三区| 亚洲无毛电影| 日韩系列在线| 欧美色网在线| 午夜影院日韩| 亚洲欧美日韩国产一区| 国产午夜亚洲精品理论片色戒| 亚洲欧美日韩视频二区| 亚洲欧美成人| 黄色资源网久久资源365| 久久午夜精品一区二区| 久久在线播放| 亚洲精品一区二区三| 亚洲精品久久嫩草网站秘色 | 久久人人精品| 亚洲精品日韩久久| 99re8这里有精品热视频免费 | 国产精品日本精品| 久久精品国产免费| 久久精品网址| 亚洲精品自在久久| 99国产精品久久久| 欧美日韩在线播放三区四区| 欧美在线播放一区二区| 久久久久久久久蜜桃| 亚洲精品国产拍免费91在线| 99ri日韩精品视频| 国产午夜精品久久久久久免费视| 久久综合精品国产一区二区三区| 美女主播视频一区| 亚洲欧美日韩爽爽影院| 久久综合久久88| 亚洲免费视频观看| 久久这里有精品15一区二区三区| 亚洲午夜91| 久久免费精品视频| 亚洲午夜av电影| 老司机久久99久久精品播放免费| 亚洲一区尤物| 你懂的国产精品| 午夜视黄欧洲亚洲| 欧美成人日韩| 久久九九99| 欧美午夜精品久久久| 麻豆精品国产91久久久久久| 欧美日韩成人一区| 麻豆乱码国产一区二区三区| 国产精品福利在线观看网址| 欧美高清一区二区| 国产亚洲福利一区| 一区二区三区成人| 亚洲精品久久在线| 久久精品视频99| 亚洲男女自偷自拍| 久久综合色播五月| 久久精品国产99| 欧美激情bt| 欧美高清视频一区| 一区二区在线看| 一区二区日韩欧美| 久久久久久免费| 午夜精品久久久久久久久 | 国产视频精品va久久久久久| 亚洲精品中文字幕有码专区| 亚洲韩国日本中文字幕| 久久精品毛片| 久久久久久久久蜜桃| 国产精品永久免费视频| 夜夜嗨网站十八久久| 99人久久精品视频最新地址| 美女露胸一区二区三区| 欧美成人精品影院| 亚洲国产乱码最新视频| 久久久视频精品| 免费看的黄色欧美网站| 曰韩精品一区二区| 老司机免费视频久久| 欧美黑人一区二区三区| 亚洲国产欧美另类丝袜| 美国成人毛片| 亚洲欧洲在线观看| 亚洲无毛电影| 国产精品日日摸夜夜摸av| 亚洲自拍16p| 久久精品国内一区二区三区| 国产揄拍国内精品对白| 老司机67194精品线观看| 亚洲福利小视频| 夜色激情一区二区| 国产精品高清免费在线观看| 亚洲制服丝袜在线| 久久久精品国产99久久精品芒果| 永久免费毛片在线播放不卡| 美女精品自拍一二三四| 亚洲乱码国产乱码精品精可以看 | 久久偷看各类wc女厕嘘嘘偷窃| 免费h精品视频在线播放| 在线看日韩欧美| 欧美精品一区二区三区在线看午夜| 亚洲免费观看视频| 欧美一区91| 亚洲电影自拍| 欧美视频中文一区二区三区在线观看 | 国产欧美二区| 老巨人导航500精品| 日韩特黄影片| 久久免费国产精品1| 日韩一区二区电影网| 国产精品爽黄69| 久久影院午夜论| 亚洲天堂黄色| 欧美国产三区| 久久爱另类一区二区小说| 亚洲激情视频| 国产伦精品一区二区三区照片91 | 久久亚洲春色中文字幕| 亚洲精品视频二区| 国产精品丝袜xxxxxxx| 国产欧美日韩高清| 午夜影视日本亚洲欧洲精品| 欧美freesex交免费视频| 亚洲一二三级电影| 在线观看不卡| 国产农村妇女精品一区二区| 欧美精品18+| 久久久国产一区二区| 亚洲视频第一页| 91久久精品国产91久久| 久久一区二区三区国产精品| 中文久久乱码一区二区| 在线日韩精品视频| 国产精品自拍三区| 欧美日韩在线三区| 欧美理论在线播放| 欧美风情在线| 欧美成人a视频| 美乳少妇欧美精品| 久久久国产精品亚洲一区 |