uses
winsock;
function GetComputerName(IP:string):string;
var
HostEnt:PHostEnt;
WSAData:TWSADATA;
Addr:DWORD;
begin
WSAStartup($101, WSAData);
Addr:=inet_addr(PChar(IP));
HostEnt:=gethostbyaddr(@Addr,sizeof(Addr),PF_INET);
Result:=HostEnt.h_name;
WSACleanup();
end;
winsock;
function GetComputerName(IP:string):string;
var
HostEnt:PHostEnt;
WSAData:TWSADATA;
Addr:DWORD;
begin
WSAStartup($101, WSAData);
Addr:=inet_addr(PChar(IP));
HostEnt:=gethostbyaddr(@Addr,sizeof(Addr),PF_INET);
Result:=HostEnt.h_name;
WSACleanup();
end;
我建议z_x_b同志去黑客网站上去问问:)
但是具体我也不知道
如果你有答案的话
EMAIL TO ME
TKS
[email protected]
1.利用用FIN探测:通过向目标机发送一个FIN的包(或者是任何没有ACK或SYN标记的包)到目标主机的一个开放的端口然后等待回应。许多系统如MS-WINDOWS,BSDI,CISCO, HP/UX,MVS和IRIX会返回一个RESET(复位标记)。利用BOGUS标记探测:通过发送一个SYN包,它含有没有定义的TCP标记的TCP头。那么在LINUX系统的回应任就会包含这个没有定义的标记,而在一些别的系统则会在收到SYN+BOGU包之后关闭连接。利用这些特性,可以区分一些操作系统。
2.利用TCPISN采样:这是利用寻找初始化序列规定长度与特定的操作系统相匹配的方法。利用它可以对许多系统分类,如较早的UNIX系统是64K长度。一些新的UNIX系统则是随机增长的长度(Solaris,IRIX,FreeBSD,DigitalUnix,Cray等)使用Don"tFragment位:许多操作系统在发送的包里使用这个位,由此可以确定操作系统的类型。
3.利用TCP的初始化窗口:在这里只是简单地检查返回包里包含的窗口长度。这项技术根据各个操作系统的不同的初始化窗口大小来唯一确定它们。 用DELPHI来写没试过
begin
Result := '';
case Win32Platform of
VER_PLATFORM_WIN32_WINDOWS: Result := 'Windows 95/98';
VER_PLATFORM_WIN32_NT: Result := 'Windows NT';
else
Result := 'Windows32';
end;
end;
大侠们的意见是扫描攻击,
你认为呢?
www.2600.com
谁知道,我将用测试通过的原码交换!
^_^