亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? scan.cpp

?? VC++寫的ping 的原碼。
?? CPP
字號:
//#include <stdafx.h>
#include <afxext.h>
#include <winsock.h>
//#include <winsock2.h>
// 編譯時需使用的庫
#pragma comment(lib,"wsock32.lib")
#pragma comment(lib,"imm32.lib")
// select()成員定義
#define ZERO (fd_set *)0

// 變量定義
int maxth, scanok, scannum,i;
int portip, hoststart, hoststop, startport, endport;
long searchnum, searched;

void usage(char *); // 定義顯示使用方法函數(shù)
void playx(int); // 定義狀態(tài)提示函數(shù)
void setip2(char *); // 定義設置IP函數(shù)
void customport(char *, char *, char *); // 定義自定義掃描端口函數(shù)
void portscannow(int); // 定義端口掃描掃描


// 主程序
int main(int argc, char *argv[])
{
WSADATA wsadata;

// 清屏
system("cls.exe");

// 顯示版本信息
printf("\r\n==================== HUC Command Line PortScanner V0.2 ====================");
printf("\r\n=============== By Lion, Welcome to http://www.cnhonker.net ===============\r\n\n");

// 檢查輸入
if ((argc < 3) ||(argc > 4))
{
// 顯示幫助提示
usage(argv[0]);
return -1;
}

// 檢測是否為port掃描
if(!(stricmp(strlwr(argv[1]), "-p") == 0))
{
usage(argv[0]);
return -1;
}

// 程序初始化
if (WSAStartup(MAKEWORD(1,1), &wsadata) != 0)
{
printf("\r\nWsatartup error");
return -1;
}

// 端口掃描參數(shù)轉(zhuǎn)換
// 如果參數(shù)為三個
if (argc == 3)
{
// 直接設置IP
setip2(argv[2]);
}
// 如果參數(shù)為四個
else
if (argc == 4)
{
// 進入定制端口掃描處理
customport(argv[0], argv[2], argv[3]);
}
// 參數(shù)過多顯示幫助
else
{
usage(argv[0]);
return -1;
}

// 掃描端口開始
portscannow(argc);

WSACleanup();
return 0;
}

// 幫助提示函數(shù)
void usage(char * prog)
{
printf("Usage: %s <Option>", prog);
printf("\r\n\n <Option>:");
printf("\r\n -p [ Port│StartPort-EndPort ] < HostName│IP│StartIP-EndIP >");
printf("\r\n\n Example: ");
printf("\r\n %s -p 192.168.0.1", prog);
printf("\r\n %s -p 192.168.0.1-192.168.0.254", prog);
printf("\r\n %s -p 21-80 192.168.0.1", prog);
printf("\r\n %s -p 21-80 192.168.0.1-192.168.0.254\r\n", prog);
return;
}

// 進度提示
void playx(int play = 0)
{
// 進度條
char *plays[12]=
{
" │ ",
" / ",
" - ",
" \\ ",
" │ ",
" / ",
" - ",
" \\ ",
" │ ",
" / ",
" - ",
" \\ ",
};

if (searchnum != 0)
{
for (int i = 0 ; i <= 3; i ++)
{
printf(" =%s= %d%s Completed. \r", plays , searched * 100 / (searchnum + 1), "%");
Sleep(5);
}
}
else
{
printf(" =%s=\r", plays[play]);
Sleep(10);
}
}

// 設置IP
void setip2(char *cp)
{
int host;
struct hostent *testhost;
char *startip = "", *endip = "";

// 判斷是否為 192.168.0.1-192.168.0.254 形式的輸入
if (strstr(cp, "-") && strlen(cp) > 15 && strlen(cp) < 32)
{
// 提取出結束IP
endip = strchr(cp, '-') + 1;
// 提取出開始IP
strncpy(startip, cp, strlen(cp) - strlen(strchr(cp, '-')));

// 給控制要掃描IP段的變量賦值
hoststart = ntohl(inet_addr(startip));
hoststop = ntohl(inet_addr(endip));
}
else
{
// 取得輸入的主機地址
testhost = gethostbyname(startip);

// 如果地址不存在
if(!testhost)
{
WSACleanup( );
printf("\r\nCan't get ip of: %s", cp);
exit(-1);
}
// 給控制要掃描IP段的變量賦值
memcpy(&host, testhost->h_addr, 4);
hoststop = hoststart = ntohl(host);
}
}

// 測試線程是否已滿
void TestThread(int thread = 200)
{
while(1)
{
playx();

// 測試線程是否已滿
if (maxth > thread)
Sleep(100);
else break;
}
return;
}

// 等待線程結束函數(shù)
void WaitThreadEnd()
{
// 延時
Sleep(6000);

// 顯示等待提示
printf("\r \r\n");
printf(" Wait ( %d )Thread end...\r\n", maxth);

while(1)
{
// 判斷所有線程是否已經(jīng)結束
if (maxth > 0)
{
// 延時等待線程序結束
Sleep(100);
playx();
continue;
}
else break;
}
printf("\r\n");
return;
}

// 定制端口掃描參數(shù)定義
void customport(char *cp, char *cp2, char *cp3)
{
int intport;
char *checker;

// 處理要掃描的端口
// 掃描開始端口變量賦值
startport = atoi(cp2);
// 掃描結束端口變量賦值
endport = atoi(cp2);

// 判斷是否 21-80 形式
if (strstr(cp2,"-"))
{
intport = atoi(checker = strchr(cp2, '-') + 1);
if (intport > 0 && intport < 65536)
// 掃描結束端口變量賦值
endport = intport;
}

// 端口大小判斷
if (startport < 0 || startport > 65536 || endport < 0 || endport > 65535)
{
usage(cp);
exit(-1);
}
// 處理ip地址
setip2(cp3);
}

// 端口掃描函數(shù)
UINT portscan(LPVOID port)
{
int addr = portip; // 取得要掃描的地址
int sock;
struct fd_set mask;
struct timeval timeout;
struct sockaddr_in server;
unsigned long flag = 1;

// 創(chuàng)建一個sock
sock = socket(AF_INET, SOCK_STREAM, 0);

// 創(chuàng)建sock失敗處理
if (sock == INVALID_SOCKET)
{
printf("\r\nSock Error:%s", WSAGetLastError());
maxth --;
return -1;
}

// 給sock成員賦值
server.sin_family=AF_INET;
server.sin_addr.s_addr = htonl(addr); // 要掃描的地址
server.sin_port = htons(short(port)); // 要掃描的端口

// 顯示進度
playx();

// 調(diào)用ioctlsocket()設置套接字為非阻塞模式
if (ioctlsocket(sock, FIONBIO, &flag) != 0)
{
// 設置失敗處理
printf("\r\nSock Error:%s", WSAGetLastError());
closesocket(sock);
maxth --;
return -1;
}

// 調(diào)用connect()連接遠程主機端口
connect(sock, (struct sockaddr*)&server, sizeof(server));

timeout.tv_sec = 18; // 超時限制為18秒
timeout.tv_usec = 0;
FD_ZERO(&mask); // 清空集合mask
FD_SET(sock, &mask); // 將sock放入集合mask中

// 用select() 處理掃描結果
switch(select(sock + 1, ZERO, &mask, ZERO, &timeout))
{
case -1:
{
printf("\r\nSelect() error");
maxth --;
return -1;
}

// sock超時處理
case 0:
{
maxth --;
closesocket(sock);
return -1;
}

default:
if(FD_ISSET(sock, &mask))
{
// 禁止sock發(fā)送和接受數(shù)據(jù)
shutdown(sock, 0);

// 設置輸出結果格式
printf(" [Found:] %s Port: %d open.\r\n", inet_ntoa(server.sin_addr), ntohs(server.sin_port));

// 關閉sock
closesocket(sock);
scanok ++;
maxth --;
return 1;
}
}
return 0;
}

// 掃描開始主函數(shù)
void portscannow(int xp)
{
int sport;
char *timenow, timebuf[32];

// 定義默認掃描的端口
char *ports[32]={
"21",
"22",
"23",
"25",
"53",
"79",
"80",
"110",
"111",
"113",
"123",
"135",
"139",
"143",
"443",
"512",
"513",
"514",
"515",
"540",
"1080",
"1433",
"1521",
"1524",
"3306",
"3389",
"5631",
"6000",
"6112",
"8000",
"8080",
"12345"
};

// 顯示掃描開始的時間
timenow = _strtime(timebuf);
printf("\r\nPortScan Start Time: %s\r\n\n",timenow);

// 計數(shù)器初始化.
maxth = 0;
scanok = 0;
scannum = 0;
searched = 0;

// 計算要掃描的端口數(shù)量
searchnum = hoststop - hoststart +1;
if(xp == 3)
searchnum = searchnum * 32;
if(xp == 4)
searchnum = searchnum * (endport - startport +1);

// 端口掃描開始
for (portip = hoststart; portip <= hoststop; portip ++, scannum ++)
{
// *.*.*.0和*.*.*.255 地址處理
if ((portip % 256) == 0 || (portip % 256) == 255)
{
if(xp == 3)
searchnum = searchnum - 32;
if(xp == 4)
searchnum = searchnum - (endport - startport +1);
scannum --;
playx();
continue;
}

if(i > 11) i = 0;
// 默認端口掃描
// scan 192.168.0.1
// scan 192.168.0.1-192.168.0.254
if (xp == 3)
{
for (sport = 0; sport < 32; sport ++, maxth ++, searched ++)
{
// 測試當前線程是否大于180
TestThread(180);
// 產(chǎn)生新的線程處理端口掃描
CWinThread * pthread = AfxBeginThread(portscan,LPVOID(atoi((char*)ports[sport])));
//延時
Sleep(120);
}
}

// 自定義端口掃描
// scan -p 21 192.168.0.1
// scan -p 21-80 192.168.0.1-192.168.0.254
if (xp == 4)
{ // 計算要掃描的端口
sport = endport - startport;
if(sport > 500 )
{
// 掃描自定義的端口
for(sport = startport; sport <= endport; sport ++, maxth ++, searched ++)
{
TestThread(2000);
// 產(chǎn)生新的線程處理端口掃描
CWinThread * pthread = AfxBeginThread(portscan, LPVOID(sport));
// 延時
Sleep(10);
}
}
else
{
// 掃描自定義的端口
for(sport = startport; sport <= endport; sport ++, maxth ++, searched ++)
{
// 測試當前線程是否大于250
TestThread(250);
// 產(chǎn)生新的線程處理端口掃描
CWinThread * pthread = AfxBeginThread(portscan, LPVOID(sport));
// 延時
Sleep(100);
playx();
}
}
}
}

// 等待所有的線程結束
WaitThreadEnd();

// 顯示端口掃描結束時間
timenow = _strtime(timebuf);
printf("\r\nPortScan End Time: %s", timenow);
printf("\r\nScan %d Hosts completed. Open %d Ports!\r\n", scannum, scanok);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕乱码一区二区免费| 国模套图日韩精品一区二区| 石原莉奈一区二区三区在线观看| 蜜桃一区二区三区四区| 国产成人av一区二区| 一本到三区不卡视频| 91精品国产91综合久久蜜臀| 国产三级精品在线| 亚洲国产综合人成综合网站| 极品少妇一区二区三区精品视频| 9i在线看片成人免费| 91麻豆精品国产自产在线| 久久夜色精品一区| 亚洲永久精品大片| 国产一区二区三区免费播放| 91麻豆蜜桃一区二区三区| 日韩一区二区精品在线观看| 中文字幕在线一区免费| 人人超碰91尤物精品国产| 成人国产视频在线观看| 欧美一区二区精品在线| 日韩一区在线播放| 久久精品国产99久久6| 色综合激情五月| 久久综合狠狠综合久久激情 | 国产凹凸在线观看一区二区| 91传媒视频在线播放| www日韩大片| 亚洲国产日韩a在线播放性色| 国产精品一区二区在线观看网站 | 亚洲欧洲国产专区| 精品一区二区三区香蕉蜜桃| 91国偷自产一区二区三区成为亚洲经典| 欧美成人a∨高清免费观看| 亚洲精品国产成人久久av盗摄 | 日韩视频在线观看一区二区| 日韩毛片高清在线播放| 国产精品一二三四区| 欧美精品少妇一区二区三区| 国产一区二区导航在线播放| 欧美色网站导航| 中文字幕亚洲不卡| 国内精品久久久久影院色| 69成人精品免费视频| 亚洲综合成人网| av一二三不卡影片| 久久精品亚洲乱码伦伦中文| 奇米色一区二区| 欧美日韩美少妇| 亚洲自拍欧美精品| 91欧美激情一区二区三区成人| 久久久99精品免费观看| 久久国产尿小便嘘嘘| 91麻豆精品国产自产在线观看一区 | 久久女同精品一区二区| 蜜桃av噜噜一区二区三区小说| 欧美三级蜜桃2在线观看| 亚洲女同女同女同女同女同69| 国产99一区视频免费| 日韩免费在线观看| 老司机免费视频一区二区三区| 欧美情侣在线播放| 午夜影院久久久| 欧美日韩一级片在线观看| 亚洲一区二区三区爽爽爽爽爽| 色视频一区二区| 一区二区三区在线免费播放| 99久久婷婷国产综合精品| 国产精品国产三级国产aⅴ原创 | 中文字幕av免费专区久久| 国产精品一区久久久久| 久久精品一区蜜桃臀影院| 国产一区二区美女诱惑| 久久久亚洲高清| 国产成人午夜99999| 国产欧美一区二区三区网站| 国产精品综合av一区二区国产馆| 精品入口麻豆88视频| 国产乱子轮精品视频| 狂野欧美性猛交blacked| 欧美精品在线观看播放| 免费日韩伦理电影| 欧美一二三区在线观看| 久久69国产一区二区蜜臀| 26uuu久久综合| 国产成人综合在线观看| 中文字幕在线免费不卡| 色综合色综合色综合色综合色综合| 亚洲精品中文字幕在线观看| 在线视频观看一区| 午夜激情一区二区三区| 91精品国产aⅴ一区二区| 老汉av免费一区二区三区| 久久蜜桃av一区精品变态类天堂| 国产精品 欧美精品| 日韩理论片在线| 欧美日韩综合色| 久久精品国产99久久6| 国产欧美日韩中文久久| 91免费精品国自产拍在线不卡| 亚洲午夜免费视频| 日韩视频中午一区| 成人午夜在线免费| 亚洲综合一区二区三区| 欧美一区二区日韩一区二区| 国产毛片精品国产一区二区三区| 国产精品久线观看视频| 欧美日韩亚洲国产综合| 精品一区精品二区高清| 中文字幕在线不卡一区| 欧美久久久久久蜜桃| 国产精品一区2区| 一区二区久久久久| 日韩精品一区二区三区在线观看| 成人午夜看片网址| 91成人国产精品| 日本麻豆一区二区三区视频| 国产亚洲精品7777| 欧美主播一区二区三区美女| 国内精品写真在线观看| 亚洲欧洲制服丝袜| www欧美成人18+| 欧美专区亚洲专区| 国产精品99久久久久久久女警| 一区二区三区四区激情| 久久蜜桃av一区二区天堂| 色婷婷久久久综合中文字幕| 久草热8精品视频在线观看| 亚洲欧美aⅴ...| 欧美精品一区二区三| 欧美在线观看一二区| 国产精品综合视频| 日日夜夜一区二区| 综合网在线视频| 久久奇米777| 在线播放一区二区三区| heyzo一本久久综合| 久久99精品国产麻豆不卡| 亚洲欧美韩国综合色| 精品国产一区二区三区不卡 | 亚洲综合色噜噜狠狠| 久久久久久亚洲综合| 欧美福利视频一区| 91在线观看高清| 国产精品影视网| 青青草精品视频| 一区二区三区四区不卡在线| 日本一区二区三区四区在线视频 | 亚洲国产精品影院| 中文字幕中文字幕一区二区| 精品国产成人系列| 欧美嫩在线观看| 91麻豆成人久久精品二区三区| 国产麻豆视频一区| 六月丁香综合在线视频| 五月激情综合色| 一卡二卡欧美日韩| 亚洲欧美激情插| 国产精品久久久久久久久快鸭| 久久亚区不卡日本| 日韩欧美国产精品| 欧美高清dvd| 欧美午夜片在线看| 色综合色综合色综合色综合色综合| 丰满少妇久久久久久久| 国产在线精品一区二区 | 久久久久久久久一| 日韩精品中文字幕在线不卡尤物 | 日韩vs国产vs欧美| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲日本护士毛茸茸| 国产精品久久久久影视| 欧美高清在线一区二区| 国产性做久久久久久| 国产亚洲污的网站| 国产亚洲一区字幕| 国产偷v国产偷v亚洲高清| 久久精品一区二区三区av| 精品福利一二区| 精品国产伦一区二区三区观看体验 | 久久精品国产77777蜜臀| 日韩主播视频在线| 青草av.久久免费一区| 日本中文字幕一区二区有限公司| 午夜精品在线看| 日日夜夜免费精品| 免费精品视频在线| 美日韩一级片在线观看| 久久91精品国产91久久小草| 激情久久五月天| 国产精品系列在线播放| 国产成人小视频| 91免费版在线看| 在线视频国产一区| 678五月天丁香亚洲综合网| 日韩一本二本av| 久久精品视频网| 国产精品国产三级国产普通话三级| ...xxx性欧美| 亚洲午夜免费视频|