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

隨筆-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 閱讀(3295) 評論(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>
            国产一区深夜福利| 亚洲在线成人精品| 亚洲综合日韩| 在线精品视频在线观看高清 | 国产亚洲人成a一在线v站| 欧美一区二区私人影院日本| 99re国产精品| 亚洲视频 欧洲视频| 一本久道久久综合狠狠爱| 午夜在线一区| 亚洲中无吗在线| 欧美一级黄色网| 亚洲一区久久| 一本大道久久a久久精品综合| 亚洲日本电影| 91久久视频| 亚洲少妇自拍| 久久久精品日韩| 欧美成人黑人xx视频免费观看| 美女主播一区| 欧美激情一区二区三区成人| 欧美精品在线一区二区三区| 欧美日韩国产一中文字不卡| 欧美色视频一区| 国产精品久久久久久久久果冻传媒| 国产精品国产亚洲精品看不卡15 | 久久精品最新地址| 欧美mv日韩mv国产网站app| 欧美激情一区二区三区| 欧美剧在线观看| 国产精品一二一区| 红杏aⅴ成人免费视频| 91久久香蕉国产日韩欧美9色| 一区二区欧美日韩| 久久av免费一区| 亚洲国产一区二区在线| 99在线观看免费视频精品观看| 亚洲一区二区黄| 欧美freesex8一10精品| 国产伦理一区| 亚洲国产国产亚洲一二三| 正在播放亚洲| 免费成人激情视频| 欧美激情在线播放| 亚洲一级黄色av| 久久在线免费| 久久亚洲一区| 久热re这里精品视频在线6| 欧美日韩综合在线| 亚洲第一在线综合在线| 性一交一乱一区二区洋洋av| 亚洲伦伦在线| 亚洲黄一区二区| 久久午夜精品一区二区| 黄色工厂这里只有精品| 久久九九久精品国产免费直播| 正在播放欧美视频| 国产精品护士白丝一区av| 亚洲午夜电影在线观看| 日韩亚洲在线观看| 欧美日韩大陆在线| 中日韩视频在线观看| 一本色道久久综合狠狠躁篇怎么玩| 欧美精品麻豆| 亚洲一区二区在线播放| 亚洲午夜激情网站| 国产欧美精品国产国产专区| 久久精品国产综合精品| 久久精品系列| 亚洲黄色精品| 日韩图片一区| 国产精品亚洲片夜色在线| 小处雏高清一区二区三区 | 在线精品视频一区二区| 欧美成人精品在线播放| 葵司免费一区二区三区四区五区| 亚洲韩国精品一区| 亚洲精品孕妇| 国产午夜精品福利| 欧美高清视频在线| 欧美日韩精品二区| 午夜久久黄色| 久久免费偷拍视频| 在线视频免费在线观看一区二区| 亚洲欧美日韩视频一区| 亚洲国产精品123| 一区二区三区高清不卡| 国产一区在线免费观看| 欧美高清一区| 国产精品成人一区二区网站软件| 久久激情五月丁香伊人| 欧美精品videossex性护士| 欧美一区二区视频免费观看| 久久综合色综合88| 亚洲一区三区视频在线观看| 欧美在线观看一区二区三区| 亚洲人体偷拍| 久久av在线看| 亚洲一区二区三区激情| 久久久久久黄| 亚洲欧美日韩国产中文在线| 老司机成人在线视频| 欧美一区二区三区四区在线观看地址| 蜜乳av另类精品一区二区| 欧美一区二区三区婷婷月色| 欧美国产成人精品| 久久综合亚洲社区| 国产精品尤物福利片在线观看| 欧美激情久久久久久| 国产亚洲网站| 亚洲永久免费精品| 亚洲视频欧美视频| 欧美老女人xx| 99综合在线| 久久久综合激的五月天| 亚洲欧美日韩在线| 欧美日韩影院| 亚洲精品一级| 一区二区欧美日韩视频| 欧美激情四色| 亚洲日本中文字幕| 亚洲日本中文| 欧美xx69| 亚洲国产精品一区二区第一页| 国产综合色产在线精品| 亚洲欧美日韩国产另类专区| 亚洲午夜电影网| 国产精品高潮呻吟久久av黑人 | 久久国产精品久久久久久电车 | 欧美在线影院在线视频| 欧美天天视频| 日韩网站在线看片你懂的| 亚洲国产精品黑人久久久| 久久人体大胆视频| 欧美国产高清| 亚洲免费观看高清完整版在线观看熊 | 在线亚洲免费视频| 一本久道综合久久精品| 欧美激情欧美狂野欧美精品| 亚洲国产精品黑人久久久| 亚洲国产合集| 欧美精品福利在线| 一区二区久久久久| 亚洲欧美日韩一区二区| 国产精品视频一二| 性欧美18~19sex高清播放| 久久裸体视频| 亚洲高清电影| 欧美丰满高潮xxxx喷水动漫| 亚洲伦理在线免费看| 亚洲视频久久| 国产午夜精品一区理论片飘花| 久久精品电影| 欧美寡妇偷汉性猛交| 日韩视频在线你懂得| 国产精品av免费在线观看| 亚洲综合色噜噜狠狠| 久久亚洲综合| 亚洲乱码视频| 国产精品视频一二三| 久久久久久高潮国产精品视| 欧美激情综合| 香蕉久久一区二区不卡无毒影院| 黄色成人av在线| 欧美经典一区二区三区| 亚洲影视在线| 欧美国产视频在线| 亚洲欧美综合一区| 亚洲丰满在线| 国产精品嫩草影院av蜜臀| 久久久噜噜噜久久中文字幕色伊伊 | 欧美国产日本韩| 亚洲图片激情小说| 国产性色一区二区| 欧美紧缚bdsm在线视频| 性做久久久久久免费观看欧美| 亚洲高清视频一区| 欧美一区二区在线视频| 亚洲麻豆一区| 国产综合色一区二区三区| 欧美日韩国产精品自在自线| 久久av资源网| 亚洲一区二区三区精品在线观看| 欧美国产1区2区| 久久精品国产久精国产爱| 一区二区成人精品| 精品1区2区| 国产精品免费一区二区三区在线观看| 蜜臀91精品一区二区三区| 午夜视频精品| 亚洲视频网站在线观看| 亚洲国产精品免费| 久久在线观看视频| 久久er精品视频| 欧美亚洲一级片| 亚洲综合欧美| 亚洲欧美日韩直播| 亚洲亚洲精品在线观看| 一本久久a久久免费精品不卡| 亚洲人成在线观看|