資源簡介
入侵檢測實驗源碼.rar

代碼片段和文件信息
//?port_scanner.cpp?:?Defines?the?entry?point?for?the?console?application.
//
#include?
#include?
#include?
#pragma?comment(lib“ws2_32.lib“)
//define?global?variable
long?MaxThread=2000;
HANDLE?hSemaphore;
long?PreviousCount=0;
int?TargetIP;
DWORD?WINAPI?portscan(LPVOID?lp);
int?main(int?argc?char?**argv)
{
HANDLE?hThread=NULL;
WSADATA?wsd;
int?i;
DWORD?dwThreadID;
if(argc!=4)
{
printf(“\n%s?port?scanner?by?helen\n“
“usage:%s???\n“argv[0]argv[0]);
return?1;
}
__try
{
//load?winsock?library
if(WSAStartup(MAKEWORD(22)&wsd)!=0)
{
printf(“Failed?to?load?winsock?library!Error?%d\n“GetLastError());
__leave;
}
//create?semaphore
hSemaphore=CreateSemaphore(NULLMaxThreadMaxThreadNULL);
if(hSemaphore==NULL)
{
printf(“Failed?to?create?semaphore!Error?%d\n“GetLastError());
????__leave;
}
//get?target?IP?and?target?port?range
TargetIP=inet_addr(argv[1]);
int?TargetHost=ntohl(TargetIP);
int?StartPort=atoi(argv[2]);
int?StopPort=atoi(argv[3]);
//create?thread?to?scan
for(i=StartPort;i<=StopPort;i++)
{
hThread=CreateThread(NULL?0?portscan?(LPVOID)i??0?&dwThreadID);
if(hThread==NULL)
{
printf(“Faile?to?create?thread!Error?%d\n“GetLastError());
break;
}
Sleep(10);
CloseHandle(hThread);
WaitForSingleobject(hSemaphore?INFINITE);
}
//wait?for?all?thread?done
while(1)
{
WaitForSingleobject(hSemaphore?INFINITE);
if(!ReleaseSemaphore(hSemaphore?1?&PreviousCount))
{
printf(“\nmain()?ReleaseSemaphore?failed:%d“GetLastError());
Sleep(5000);
break;
}
if(PreviousCount=(MaxThread-1))
{
printf(“\n?scan?finished!\n“);
break;
}
Sleep(500);
}
}//try?end
__finally
{
CloseHandle(hSemaphore);
WSACleanup();
}
return?0;
}
DWORD?WINAPI?portscan(LPVOID?lp)
{
????struct?sockaddr_in?server;
????SOCKET?s?=?INVALID_SOCKET;
????int?iPort?=?(int)lp;
????s?=?socket(AF_INET?SOCK_STREAM?IPPROTO_TCP);
????if(s==INVALID_SOCKET)
{
????????printf(“Faile?to?create?socket!Error?%d\n“GetLastError());
????????ExitProcess(1);
}
????server.sin_family=AF_INET;
????server.sin_addr.S_un.S_addr=TargetIP;
????server.sin_port=htons(iPort);
__try
{
//connect?to?target
if(connect(s?(struct?sockaddr?*)&server?sizeof(server))!=0)
__leave;
else
printf(“?port?TCP?%d?is?open!\n“ntohs(server.sin_port));
}//try?end
__finally
{
Sleep(500);
if(!ReleaseSemaphore(hSemaphore1?NULL))?
printf(“\nThread?ReleaseSemaphore?Failed:%d\n“GetLastError());
closesocket(s);
}
return?0;?
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????101888??2013-04-28?21:18??入侵檢測實驗源碼\試驗4:防火墻的調用\實驗報告要點提示_Windows?XP的ICF調用.doc
?????文件??????25600??2013-04-28?21:18??入侵檢測實驗源碼\試驗4:防火墻的調用\實驗指導書_Windows?XP的ICF調用.doc
?????文件???????7113??2013-04-28?21:18??入侵檢測實驗源碼\試驗4:防火墻的調用\代碼\ICFCall.cpp
?????文件??????84992??2013-04-28?21:18??入侵檢測實驗源碼\試驗4:防火墻的調用\代碼\ICFCall.ncb
?????文件????????903??2013-04-28?21:18??入侵檢測實驗源碼\試驗4:防火墻的調用\代碼\ICFCall.sln
????..A..H.??????8192??2013-04-28?21:18??入侵檢測實驗源碼\試驗4:防火墻的調用\代碼\ICFCall.suo
?????文件???????3829??2013-04-28?21:18??入侵檢測實驗源碼\試驗4:防火墻的調用\代碼\ICFCall.vcproj
?????文件????????211??2013-04-28?21:18??入侵檢測實驗源碼\試驗4:防火墻的調用\代碼\stdafx.cpp
?????文件????????263??2013-04-28?21:18??入侵檢測實驗源碼\試驗4:防火墻的調用\代碼\stdafx.h
?????文件?????125440??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\實驗報告要點提示_簡單入侵檢測系統的實現.doc
?????文件??????23040??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\實驗指導書_簡單入侵檢測系統的實現.doc
?????文件??????17040??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Analysis.cpp
?????文件???????2346??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Analysis.h
?????文件???????8640??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Capture.cpp
?????文件???????1535??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Capture.h
?????文件?????????72??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\filea.txt
?????文件????????811??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\MiniIDS.cpp
?????文件????????676??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\MiniIDS.cpp.bak
?????文件???????4626??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\MiniIDS.dsp
?????文件????????539??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\MiniIDS.dsw
?????文件??????????0??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\MiniIDS.h
?????文件??????66560??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\MiniIDS.ncb
?????文件??????53760??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\MiniIDS.opt
?????文件????????248??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\MiniIDS.plg
?????文件????3701164??2013-04-28?21:16??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Debug\MiniIDS.pch
?????文件??????33098??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Debug\Analysis.obj
?????文件??????26297??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Debug\Capture.obj
?????文件?????204893??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Debug\MiniIDS.exe
?????文件?????238172??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Debug\MiniIDS.ilk
?????文件??????13644??2013-04-28?21:18??入侵檢測實驗源碼\試驗3:簡單入侵檢測系統實現\代碼\Debug\MiniIDS.obj
............此處省略54個文件信息
- 上一篇:SDN技術白皮書
- 下一篇:編譯原理_清華_呂映芝
評論
共有 條評論