tcpconnctscan.cpp

来自「一个基于VC++开发的网络安全扫描程序!!!能够有效地发现网络安全漏洞」· C++ 代码 · 共 43 行

CPP
43
字号
#include "stdafx.h"
#include "TcpConnectScan.h"
#include "DataAndConst.h"
DWORD WINAPI TcpConnectScan(LPVOID pParame)
{
	ThreadSyn cSynEntry;
	ThreadParament *pThreadParament=(ThreadParament*) pParame;
	for(DWORD dwPort=pThreadParament->dwOriginalPort;dwPort<=pThreadParament->dwLastPort&&!bStop;dwPort++)
	{
		for(DWORD dwIP=pThreadParament->dwOriginalIP;dwIP<=pThreadParament->dwLastIP&&!bStop;dwIP++)
		{
			SOCKET Socket = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP) ;
            if (Socket == INVALID_SOCKET)
			{
				pMainWindow->MessageBox("Generate Socket Error!","Eror",MB_OK|MB_ICONERROR);
				continue;
			}
			if (SOCKET_ERROR == WSAAsyncSelect (Socket, pMainWindow->m_hWnd, WM_CONNECT_SCAN, FD_CONNECT))
            {
				pMainWindow->MessageBox("WSAAsyncSelect Socket Error!","Eror",MB_OK|MB_ICONERROR);
				continue;
			}
			sockaddr_in sa;
			sa.sin_family           = AF_INET ;

            sa.sin_port             = htons((WORD)dwPort) ; 
            sa.sin_addr.S_un.S_addr = htonl(dwIP) ;

			connect(Socket, (SOCKADDR *) &sa, sizeof (sa)) ;
			char  strLog[256];
			in_addr tmp;
			tmp.S_un.S_addr=sa.sin_addr.S_un.S_addr;
			sprintf(strLog,"Scaning Host %s, Port %u\n",inet_ntoa(tmp),dwPort);
			pMainWindow->SendMessage(WM_UPDATA_LOG,(WPARAM)strLog);
			while(bPause)
			{
				Sleep(100);
			}
		}
	}
	pMainWindow->SendMessage(WM_FINISH_SCAN);
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?