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

隨筆-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 閱讀(3303) 評論(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的復位包。如此,后續進程無法進行。暈了好幾天了。  回復  更多評論
  

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲视频在线二区| 欧美不卡激情三级在线观看| 一区二区欧美在线观看| 老司机免费视频一区二区| 久久国产精品久久久久久电车| 欧美日韩一区二区三| 亚洲人成亚洲人成在线观看图片| 亚洲国产老妈| 麻豆成人在线播放| 欧美国产精品人人做人人爱| 国产欧美午夜| 午夜一区不卡| 久久久www成人免费精品| 国产精品视频99| 亚洲欧美日韩综合| 亚洲靠逼com| 欧美美女日韩| aa日韩免费精品视频一| 午夜国产精品影院在线观看| 国产精品综合久久久| 午夜欧美精品久久久久久久| 久久久久亚洲综合| 1000部国产精品成人观看| 蜜臀99久久精品久久久久久软件| 男人的天堂亚洲在线| 黄色成人片子| 久久免费偷拍视频| 欧美激情二区三区| 在线观看视频欧美| 欧美电影免费网站| 亚洲图片欧美日产| 久久亚洲私人国产精品va| 亚洲激情小视频| 欧美视频在线观看 亚洲欧| 亚洲一区三区在线观看| 欧美日韩精品不卡| 亚洲香蕉网站| 美女主播一区| 亚洲午夜国产成人av电影男同| 国产伦精品一区二区三区高清版| 久久精品亚洲一区二区| 亚洲大片免费看| 亚洲欧美在线磁力| 在线观看成人av电影| 欧美视频成人| 久久尤物视频| 一区二区日韩| 男人的天堂亚洲在线| 亚洲一区欧美二区| 国内精品美女av在线播放| 欧美精品尤物在线| 久久av免费一区| 日韩午夜在线| 美女精品在线| 午夜精品美女久久久久av福利| 亚洲成人在线网站| 国产精品久久久久一区二区| 麻豆成人av| 欧美亚洲专区| 一本一本久久a久久精品牛牛影视| 久久精品视频在线免费观看| 在线综合亚洲欧美在线视频| 悠悠资源网久久精品| 国产精品一区二区久久国产| 欧美1级日本1级| 欧美一区视频| 一本一本久久| 亚洲国产精品123| 久久久久久香蕉网| 午夜老司机精品| 日韩一级网站| 亚洲人成久久| 黄色精品一区二区| 国产精品一区二区三区久久久| 欧美 日韩 国产一区二区在线视频 | 久久久久一区二区三区| 亚洲欧洲视频在线| 嫩草影视亚洲| 久久久噜噜噜久噜久久| 午夜国产精品视频| 一区二区三区视频在线 | 国内免费精品永久在线视频| 欧美婷婷久久| 欧美日韩在线精品| 欧美福利影院| 美女在线一区二区| 欧美伊人久久久久久久久影院 | 狠狠色香婷婷久久亚洲精品| 国产精品一区二区三区成人| 欧美日韩中文字幕在线| 欧美精品情趣视频| 免费中文日韩| 六月天综合网| 久久免费视频网| 久久频这里精品99香蕉| 久久久精品国产免费观看同学| 欧美亚洲网站| 亚洲精选一区| 在线亚洲精品| 亚洲曰本av电影| 亚洲综合国产| 欧美一区激情视频在线观看| 欧美专区福利在线| 亚洲女人av| 欧美一级二区| 久久午夜国产精品| 免费人成精品欧美精品| 麻豆精品视频在线观看| 男人插女人欧美| 欧美精品一区二区三区视频 | 久久天天躁狠狠躁夜夜av| 久久久五月婷婷| 欧美成人一区在线| 欧美日韩国产色视频| 国产精品久久久久久久久久ktv | 欧美在线一二三四区| 久久精品国产亚洲一区二区| 久久综合给合久久狠狠狠97色69| 麻豆成人在线| 欧美色欧美亚洲另类二区| 国产精品嫩草99av在线| 国产综合色产| 亚洲精选成人| 99国产精品一区| 午夜伦欧美伦电影理论片| 久久久国产精品亚洲一区| 美日韩免费视频| 亚洲免费av观看| 欧美一区成人| 欧美风情在线| 欧美日韩视频免费播放| 国产欧美日韩精品丝袜高跟鞋| 精品成人国产| 日韩视频免费大全中文字幕| 午夜精品在线| 久热国产精品视频| 国产乱码精品一区二区三区av| 欧美日韩成人在线播放| 一区二区在线视频| 欧美一进一出视频| 日韩视频精品在线| 欧美成人精品影院| 激情综合自拍| 久久久久久精| 亚洲欧美国产高清va在线播| 欧美三级免费| 在线综合亚洲| 日韩亚洲欧美在线观看| 欧美成人嫩草网站| 亚洲国产成人av在线| 老鸭窝亚洲一区二区三区| 午夜精品婷婷| 国产欧美亚洲日本| 性伦欧美刺激片在线观看| 亚洲色诱最新| 国产精品第一页第二页第三页| 一区二区高清在线观看| 亚洲日韩欧美视频一区| 欧美韩国日本一区| 亚洲区在线播放| 亚洲国产精品一区在线观看不卡| 免费成人美女女| 亚洲精品综合久久中文字幕| 亚洲高清久久网| 欧美精品99| 亚洲午夜一区二区三区| 一本久久综合亚洲鲁鲁| 国产精品国产三级国产普通话蜜臀 | 亚洲区一区二区三区| 亚洲国产1区| 欧美激情中文字幕一区二区| 一本大道久久a久久精二百| 亚洲美女中出| 国产精品美女| 久久午夜精品| 女主播福利一区| 国产精品99久久久久久久vr| 一个色综合导航| 国产模特精品视频久久久久| 久久久久久电影| 男人天堂欧美日韩| 亚洲精品国产无天堂网2021| 亚洲美女在线国产| 国产精品揄拍一区二区| 久久亚洲私人国产精品va| 美女999久久久精品视频| 艳妇臀荡乳欲伦亚洲一区| 中文欧美日韩| 狠狠爱成人网| 最新国产成人在线观看| 国产精品免费一区二区三区在线观看 | 亚洲美女诱惑| 国产日产高清欧美一区二区三区| 久久久久9999亚洲精品| 老妇喷水一区二区三区| 在线亚洲高清视频| 欧美一区二区三区四区在线 | 美女网站久久| 欧美日韩国产精品专区| 欧美自拍偷拍|