网络安全应用实现
最常用的网络命令的实现;
举例说明网络攻击是怎么实现的;
防火墙的简单实现;
OpenSSL的利用。
信息安全原理与应用 赵树升 2012
6.1 常用网络命令的实现
常用的网络命令有IpConfig(取IP地址)、Ping(验证远程计
算机的连接状况)、Tracert(路由跟踪)、Netstat(显示协议
统计和当前的TCP/IP 网络连接)、NET命令(管理网络环
境、服务、用户、登录等本地信息)、Telne实现远程登录
、Arp 显示和修改“地址解析协议” 。Ftp将文件传送到正在
运行Ftp 服务的远程计算机或从正在运行Ftp 服务的远程
计算机下载文件。Tftp将文件传输到正在运行Tftp 服务的
远程计算机或从正在运行Tftp服务的远程计算机接收文件
。还有很多其它命令。
信息安全原理与应用 赵树升 2012
1、实现Ping
Ping利用ICMP协议,向目的计算机发送自我构
造的ICMP数据报实现。ICMP是“Internet
Control Message Protocol” (Internet控制消息
协议)的缩写。它是TCP/IP协议族的一个子
协议,用于在IP主机、路由器之间传递控制消
息。控制消息是指网络通不通、主机是否可达
、路由是否可用等网络本身的消息。这些控制
消息虽然并不传输用户数据,但是对于用户数
据的传递起着重要的作用。
信息安全原理与应用 赵树升 2012
2、取本机IP地址
获取本机IP地址可以使用套接字函数实现。
#include "winsock2.h"
#pragma comment (lib , "ws2_32.lib") //必须
void CGetMyIPDlg::OnGetIP()
{
WORD wVersionRequested;
WSADATA wsaData;
char name[255];//定义用于存放获得的主机名的变量
PHOSTENT hostinfo;
wVersionRequested = MAKEWORD( 2, 0 );
//调用ws2_32.dll
WSAStartup( wVersionRequested, &wsaData );
//获取本地机器的名字到name
信息安全原理与应用 赵树升 2012
gethostname ( name, sizeof(name));
3、路由跟踪实现
路由跟踪的作用是测试数据报到达目的机器经过
的路由器。利用ICMP协议,向目的计算机发
送多个自我构造的ICMP数据报,而且每个数
据报含有不同TTL (Time To Live )值,然后
分析返回的数据报而实现的。
信息安全原理与应用 赵树升 2012
4、模拟NET命令建立用户
Net*系列的API 函数可以实现NET的功能,这里仅举例
建立用户。主要代码如下,结果如图6-1,6-2所示。
void CGetUsersDlg::OnCreateUser()
{
wchar_t user[100]; //要使用宽字符格式
wchar_t passcode[100];
memset(user,0,200);
memset(user,0,200);
int len1=m_user.GetLength();
int len2=m_password.GetLength();
信息安全原理与应用 赵树升 2012
6.2 从一个漏洞看网络攻击过程
UNICODE漏洞该漏洞于2000年10月17 日被公布,目前有该
漏洞的机器比较少。在当时很多的攻击都是利用了该漏洞
。UNICODE是一种国际标准编码,采用两个字节编码。
例如字符‘a’,若用ANSI格式,为数据0x61