版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、网络安全专题网络安全专题1网络安全定义网络安全定义l网络安全(网络安全(Network Security)是一门涉及)是一门涉及计算机科学、网络技术、通信技术、密码技术、计算机科学、网络技术、通信技术、密码技术、信息安全技术、应用数学、数论、信息论等多信息安全技术、应用数学、数论、信息论等多种学科的综合性科学。从总体上,网络安全可种学科的综合性科学。从总体上,网络安全可以分成两大方面:网络攻击技术和网络防御技以分成两大方面:网络攻击技术和网络防御技术,只有全面把握两方面的内容,才能真正掌术,只有全面把握两方面的内容,才能真正掌握计算机网络安全技术。握计算机网络安全技术。 三方面内容三方面内容l
2、TCP/IP协议组、网络服务、操作系统安全配置、密码协议组、网络服务、操作系统安全配置、密码学、防火墙、入侵检测技术和网络安全学、防火墙、入侵检测技术和网络安全l网络安全工具:暴力破解工具、网络扫描工具、木马网络安全工具:暴力破解工具、网络扫描工具、木马工具、跳板工具、隐身工具、监听工具、恢复工具、工具、跳板工具、隐身工具、监听工具、恢复工具、防火墙工具和入侵检测工具等等。防火墙工具和入侵检测工具等等。l(3)网络安全编程:利用)网络安全编程:利用C/C+语言编写程序,并语言编写程序,并在在VC+6.0环境调试通过。介绍安全编程核心技术:环境调试通过。介绍安全编程核心技术:多线程编程、驻留编程
3、、注册表编程、多线程编程、驻留编程、注册表编程、Socket编程、编程、Shell编程、定时器编程以及入侵检测编程等等。编程、定时器编程以及入侵检测编程等等。网络安全的攻防体系网络安全的攻防体系 网络安全攻击防御体系攻击技术网络扫描网络监听网络入侵网络后门与网络隐身防御技术操作系统安全配置技术加密技术防火墙技术入侵检测技术网络安全物理基础操作系统:Unix/Linux/Windows网络协议:TCP/IP/UDP/SMTP/POP/FTP/HTTP网络安全的实施工具软件: Sniffer/X-Scan/防火墙软件/入侵检测软件/加密软件 等等编程语言:C/C+/Perl攻击技术(五个方面)攻击
4、技术(五个方面)1、网络监听:自己不主动去攻击别人,在计算机上设、网络监听:自己不主动去攻击别人,在计算机上设置一个程序去监听目标计算机与其他计算机通信的数置一个程序去监听目标计算机与其他计算机通信的数据。据。2、网络扫描:利用程序去扫描目标计算机开放的端口、网络扫描:利用程序去扫描目标计算机开放的端口等,目的是发现漏洞,为入侵该计算机做准备。等,目的是发现漏洞,为入侵该计算机做准备。3、网络入侵:当探测发现对方存在漏洞以后,入侵到、网络入侵:当探测发现对方存在漏洞以后,入侵到目标计算机获取信息。目标计算机获取信息。4、网络后门:成功入侵目标计算机后,为了对、网络后门:成功入侵目标计算机后,为
5、了对“战利战利品品”的长期控制,在目标计算机中种植木马等后门。的长期控制,在目标计算机中种植木马等后门。5、网络隐身:入侵完毕退出目标计算机后,将自己入、网络隐身:入侵完毕退出目标计算机后,将自己入侵的痕迹清除,从而防止被对方管理员发现。侵的痕迹清除,从而防止被对方管理员发现。防御技术(四大方面)防御技术(四大方面)l防御技术包括四大方面:防御技术包括四大方面:l1、操作系统的安全配置:操作系统的安全是整个网、操作系统的安全配置:操作系统的安全是整个网络安全的关键。络安全的关键。l2、加密技术:为了防止被监听和盗取数据,将所有、加密技术:为了防止被监听和盗取数据,将所有的数据进行加密。的数据进
6、行加密。l3、防火墙技术:利用防火墙,对传输的数据进行限、防火墙技术:利用防火墙,对传输的数据进行限制,从而防止被入侵。制,从而防止被入侵。l4、入侵检测:如果网络防线最终被攻破了,需要及、入侵检测:如果网络防线最终被攻破了,需要及时发出被入侵的警报。时发出被入侵的警报。 网络安全的攻防体系网络安全的攻防体系l网络安全,在软件方面:一种是使用已经成熟的工具,比如抓数据包网络安全,在软件方面:一种是使用已经成熟的工具,比如抓数据包软件软件Sniffer,网络扫描工具,网络扫描工具X-Scan等等,另一种是自己编制程序,目等等,另一种是自己编制程序,目前网络安全编程常用的计算机语言为前网络安全编程
7、常用的计算机语言为C、C+或者或者Perl语言。语言。l一方面是两大主流的操作系统:一方面是两大主流的操作系统:UNIX家族和家族和Window系列操作系统,系列操作系统,l另一方面是网络协议,常见的网络协议包括:另一方面是网络协议,常见的网络协议包括:TCP(Transmission Control Protocol,传输控制协议),传输控制协议)IP(Internet Protocol,网络协议),网络协议)UDP(User Datagram Protocol,用户数据报协议),用户数据报协议)SMTP(Simple Mail Transfer Protocol,简单邮件传输协议),简单邮
8、件传输协议)POP(Post Office Protocol,邮局协议),邮局协议)FTP(File Transfer Protocol,文件传输协议)等等。,文件传输协议)等等。网络安全的层次体系网络安全的层次体系l从层次体系上,可以将网络安全分成四个层次从层次体系上,可以将网络安全分成四个层次上的安全:上的安全:1、物理安全;、物理安全;2、逻辑安全;、逻辑安全;3、操作系统安全;、操作系统安全;4、联网安全。、联网安全。逻辑安全逻辑安全l计算机的逻辑安全需要用口令、文件许可等方法来实现。计算机的逻辑安全需要用口令、文件许可等方法来实现。l可以限制登录的次数或对试探操作加上时间限制;可以可
9、以限制登录的次数或对试探操作加上时间限制;可以用软件来保护存储在计算机文件中的信息;用软件来保护存储在计算机文件中的信息;l限制存取的另一种方式是通过硬件完成,在接收到存取限制存取的另一种方式是通过硬件完成,在接收到存取要求后,先询问并校核口令,然后访问列于目录中的授要求后,先询问并校核口令,然后访问列于目录中的授权用户标志号。权用户标志号。l此外,有一些安全软件包也可以跟踪可疑的、未授权的此外,有一些安全软件包也可以跟踪可疑的、未授权的存取企图,例如,多次登录或请求别人的文件。存取企图,例如,多次登录或请求别人的文件。操作系统安全操作系统安全 l操作系统是计算机中最基本、最重要的软件。操作系
10、统是计算机中最基本、最重要的软件。l同一计算机可以安装几种不同的操作系统。同一计算机可以安装几种不同的操作系统。如果计算机系统可提供给许多人使用,操作系统必须能区分如果计算机系统可提供给许多人使用,操作系统必须能区分用户,以便于防止相互干扰。用户,以便于防止相互干扰。l一些安全性较高、功能较强的操作系统可以为计算机一些安全性较高、功能较强的操作系统可以为计算机的每一位用户分配账户。的每一位用户分配账户。l通常,一个用户一个账户。操作系统不允许一个用户通常,一个用户一个账户。操作系统不允许一个用户修改由另一个账户产生的数据。修改由另一个账户产生的数据。联网安全联网安全l联网的安全性通过两方面的安
11、全服务来达到:联网的安全性通过两方面的安全服务来达到:1、访问控制服务:用来保护计算机和联网资源不、访问控制服务:用来保护计算机和联网资源不被非授权使用。被非授权使用。2、通信安全服务:用来认证数据机要性与完整性,、通信安全服务:用来认证数据机要性与完整性,以及各通信的可信赖性。以及各通信的可信赖性。研究网络安全的必要性研究网络安全的必要性 l网络需要与外界联系,受到许多方面的威胁网络需要与外界联系,受到许多方面的威胁物理威胁物理威胁系统漏洞造成的威胁系统漏洞造成的威胁身份鉴别威胁身份鉴别威胁线缆连接威胁线缆连接威胁有害程序等方面威胁。有害程序等方面威胁。系统漏洞威胁系统漏洞威胁l系统漏洞造成
12、的威胁包括三个方面:乘虚而入、不安全服务和配置和初系统漏洞造成的威胁包括三个方面:乘虚而入、不安全服务和配置和初始化错误。始化错误。l1、乘虚而入、乘虚而入例如,用户例如,用户A停止了与某个系统的通信,但由于某种原因仍使该系停止了与某个系统的通信,但由于某种原因仍使该系统上的一个端口处于激活状态,这时,用户统上的一个端口处于激活状态,这时,用户B通过这个端口开始与通过这个端口开始与这个系统通信,这样就不必通过任何申请使用端口的安全检查了。这个系统通信,这样就不必通过任何申请使用端口的安全检查了。l2、不安全服务、不安全服务有时操作系统的一些服务程序可以绕过机器的安全系统,互联网蠕有时操作系统的
13、一些服务程序可以绕过机器的安全系统,互联网蠕虫就利用了虫就利用了UNIX系统中三个可绕过的机制。系统中三个可绕过的机制。l3、配置和初始化错误、配置和初始化错误如果不得不关掉一台服务器以维修它的某个子系统,几天后当重启如果不得不关掉一台服务器以维修它的某个子系统,几天后当重启动服务器时,可能会招致用户的抱怨,说他们的文件丢失了或被篡动服务器时,可能会招致用户的抱怨,说他们的文件丢失了或被篡改了,这就有可能是在系统重新初始化时,安全系统没有正确的初改了,这就有可能是在系统重新初始化时,安全系统没有正确的初始化,从而留下了安全漏洞让人利用,类似的问题在木马程序修改始化,从而留下了安全漏洞让人利用,
14、类似的问题在木马程序修改了系统的安全配置文件时也会发生了系统的安全配置文件时也会发生。身份鉴别威胁:(四个方面)身份鉴别威胁:(四个方面)1、口令圈套、口令圈套运行同样的登录界面,被插入到正常有登录过程之前,运行同样的登录界面,被插入到正常有登录过程之前,最终用户看到的只是先后两个登录屏幕,第一次登录失最终用户看到的只是先后两个登录屏幕,第一次登录失败了,所以用户被要求再输入用户名和口令。实际上,败了,所以用户被要求再输入用户名和口令。实际上,第一次登录并没有失败,它将用户名和口令写入到这个第一次登录并没有失败,它将用户名和口令写入到这个数据文件中,留待使用。数据文件中,留待使用。2、口令破解
15、、口令破解破解口令就像是猜测自行车密码锁的数字组合一样,在破解口令就像是猜测自行车密码锁的数字组合一样,在该领域中已形成许多能提高成功率的技巧。该领域中已形成许多能提高成功率的技巧。3、算法考虑不周、算法考虑不周在一些攻击入侵案例中,入侵者采用超长的字符串破坏在一些攻击入侵案例中,入侵者采用超长的字符串破坏了口令算法,成功地进入了系统。了口令算法,成功地进入了系统。4、编辑口令、编辑口令编辑口令需要依靠操作系统漏洞,如果公司内部的人建编辑口令需要依靠操作系统漏洞,如果公司内部的人建立了一个虚设的账户或修改了一个隐含账户的口令,这立了一个虚设的账户或修改了一个隐含账户的口令,这样,任何知道那个账
16、户的用户名和口令的人便可以访问样,任何知道那个账户的用户名和口令的人便可以访问该机器了。该机器了。线缆连接威胁线缆连接威胁l1、窃听、窃听对通信过程进行窃听可达到收集信息的目的,这种对通信过程进行窃听可达到收集信息的目的,这种电子窃听不一定需要窃听设备一定安装在电缆上,电子窃听不一定需要窃听设备一定安装在电缆上,可以通过检测从连线上发射出来的电磁辐射就能拾可以通过检测从连线上发射出来的电磁辐射就能拾取所要的信号,为了使机构内部的通信有一定的保取所要的信号,为了使机构内部的通信有一定的保密性,可以使用加密手段来防止信息被解密。密性,可以使用加密手段来防止信息被解密。l2、拨号进入、拨号进入拥有一
17、个调制解调器和一个电话号码,每个人都可拥有一个调制解调器和一个电话号码,每个人都可以试图通过远程拨号访问网络,尤其是拥有所期望以试图通过远程拨号访问网络,尤其是拥有所期望攻击的网络的用户账户时,就会对网络造成很大的攻击的网络的用户账户时,就会对网络造成很大的威胁。威胁。 l3、冒名顶替、冒名顶替通过使用别人的密码和账号时,获得对网络及其数通过使用别人的密码和账号时,获得对网络及其数据、程序的使用能力。这种办法实现起来并不容易,据、程序的使用能力。这种办法实现起来并不容易,而且一般需要有机构内部的、了解网络和操作过程而且一般需要有机构内部的、了解网络和操作过程的人参与。的人参与。有害程序威胁有害
18、程序威胁l1、病毒、病毒 病毒是一种把自己的拷贝附着于机器中的另一程序上的病毒是一种把自己的拷贝附着于机器中的另一程序上的一段代码。通过这种方式病毒可以进行自我复制,并随一段代码。通过这种方式病毒可以进行自我复制,并随着它所附着的程序在机器之间传播。着它所附着的程序在机器之间传播。l2、代码炸弹、代码炸弹代码炸弹是一种具有杀伤力的代码,其原理是一旦到达代码炸弹是一种具有杀伤力的代码,其原理是一旦到达设定的日期或钟点,或在机器中发生了某种操作,代码设定的日期或钟点,或在机器中发生了某种操作,代码炸弹就被触发并开始产生破坏性操作。代码炸弹不必像炸弹就被触发并开始产生破坏性操作。代码炸弹不必像病毒那
19、样四处传播病毒那样四处传播l3、特洛伊木马、特洛伊木马特洛伊木马程序一旦被安装到机器上,便可按编制者的特洛伊木马程序一旦被安装到机器上,便可按编制者的意图行事。特洛伊木马能够摧毁数据,有时伪装成系统意图行事。特洛伊木马能够摧毁数据,有时伪装成系统上已有的程序,有时创建新的用户名和口令。上已有的程序,有时创建新的用户名和口令。 常用的网络命令常用的网络命令 常用的网络命令常用的网络命令 判断主机是否连通的判断主机是否连通的ping指令指令查看查看IP地址配置情况的地址配置情况的ipconfig指令指令查看网络连接状态的查看网络连接状态的netstat指令指令进行网络操作的进行网络操作的net指令
20、指令进行定时器操作的进行定时器操作的at指令。指令。 ping lping指令通过发送指令通过发送ICMP包来验证与另一台包来验证与另一台TCP/IP计算机的计算机的IP级连接。级连接。l应答消息的接收情况将和往返过程的次数一起应答消息的接收情况将和往返过程的次数一起显示出来。显示出来。lping指令用于检测网络的连接性和可到达性,指令用于检测网络的连接性和可到达性,如果不带参数,如果不带参数,ping将显示帮助,如图所示。将显示帮助,如图所示。 ping ping l可以利用ping指令验证和对方计算机的连通性,使用的语法是“ping 对方计算机名或者IP地址”。如果连通的话,返回的信息如图
21、所示。 ipconfig指令指令 lipconfig指令显示所有指令显示所有TCP/IP网络配置信息、刷新动态主机配置网络配置信息、刷新动态主机配置协议(协议(DHCP, Dynamic Host Configuration Protocol)和域名)和域名系统(系统(DNS)设置。)设置。l使用不带参数的使用不带参数的ipconfig可以显示所有适配器的可以显示所有适配器的IP地址、子网掩地址、子网掩码和默认网关。在码和默认网关。在DOS命令行下输入命令行下输入ipconfig指令。指令。netstat指令指令 lnetstat指令显示活动指令显示活动的连接、计算机监听的连接、计算机监听的端
22、口、以太网统计的端口、以太网统计信息、信息、IP 路由表、路由表、IPv4统计信息(统计信息(IP、ICMP、TCP和和UDP协议)。协议)。l使用使用“netstat -an”命命令可以查看目前活动令可以查看目前活动的连接和开放的端口,的连接和开放的端口,是网络管理员查看网是网络管理员查看网络是否被入侵的最简络是否被入侵的最简单方法。使用的方法单方法。使用的方法如图所示。如图所示。net指令指令 lnet指令的功能非常的强大,指令的功能非常的强大,net指令在网络安全领域通常指令在网络安全领域通常用来查看计算机上的用户列表、添加和删除用户、和对方用来查看计算机上的用户列表、添加和删除用户、和
23、对方计算机建立连接、启动或者停止某网络服务等。计算机建立连接、启动或者停止某网络服务等。 l利用利用“net user”查看计算机上的用户列表,如图查看计算机上的用户列表,如图2-44所示。所示。net指令指令l利用利用“net user 用户名用户名 密码密码”给某用户修改给某用户修改密码,比如把管理员的密码修改成密码,比如把管理员的密码修改成“123456”,如图如图2-45所示。所示。案例:建立用户并添加到管理员组案例:建立用户并添加到管理员组 l案例名称:添加用户到管理员组案例名称:添加用户到管理员组l文件名称:文件名称:2-01.bat lnet user jack 123456 /
24、addlnet localgroup administrators jack /addlnet user 和对方计算机建立信任连接和对方计算机建立信任连接 l只要拥有某主机的用户名和密码,就可以用只要拥有某主机的用户名和密码,就可以用“IPC$(Internet Protocol Control)”建立信任连接,建建立信任连接,建立完信任连接后,可以在命令行下完全控制对方计算立完信任连接后,可以在命令行下完全控制对方计算机。机。l比如得到比如得到IP为为09计算机的管理员密码为计算机的管理员密码为123456,可以利用指令,可以利用指令“net use 172.18.25
25、.109ipc$ 123456 /user:administrator”,如图所示。如图所示。和对方计算机建立信任连接和对方计算机建立信任连接l建立完毕后,就可以操作对方的计算机,比如查看对方计算机上建立完毕后,就可以操作对方的计算机,比如查看对方计算机上的文件,如图所示。的文件,如图所示。at指令指令 l案例名称:创建定时器案例名称:创建定时器l文件名称:文件名称:2-02.batl lnet use * /dellnet use 09ipc$ 123456 /user:administratorlnet time 09lat 8:40 notep
26、ad.exe编程三步曲编程三步曲学习编程需要经历三大步学习编程需要经历三大步l学习编程需要经历三大步:一、读程序;二、写程序;三、学习编程需要经历三大步:一、读程序;二、写程序;三、积累功能代码段。积累功能代码段。l1、读程序、读程序l在没有阅读过一份完整的源代码之前,别指望能写出有多好在没有阅读过一份完整的源代码之前,别指望能写出有多好的程序!读程序必须具备一定的语言基础知识,基础知识主的程序!读程序必须具备一定的语言基础知识,基础知识主要是指语法知识,最起码要能读懂程序的每一行意思。有没要是指语法知识,最起码要能读懂程序的每一行意思。有没有程序的设计思想,在这个时期并不重要,只要具备一定的
27、有程序的设计思想,在这个时期并不重要,只要具备一定的语法基础就可以了。语法基础就可以了。l学一门语言并不需要刻意去记条条框框的语法,看代码的时学一门语言并不需要刻意去记条条框框的语法,看代码的时候,遇到了不明白的地方再去查相关的资料,补充基础知识候,遇到了不明白的地方再去查相关的资料,补充基础知识再配合源程序的思路,这时的理解才是最深刻的。再配合源程序的思路,这时的理解才是最深刻的。2、写程序、写程序刚开始写程序,不要奢望一下子写出很出色的程序来,刚开始写程序,不要奢望一下子写出很出色的程序来,“万万丈高楼平底起丈高楼平底起”,编程贵在动手,只要动手去写就可以了。,编程贵在动手,只要动手去写就
28、可以了。此外,还要依照自身的能力循序渐进地写,开始的时候写一此外,还要依照自身的能力循序渐进地写,开始的时候写一点功能简单的、篇幅短小的代码,力求简洁、完整,然后在点功能简单的、篇幅短小的代码,力求简洁、完整,然后在此基础上进行扩充,一点点的添加功能。此基础上进行扩充,一点点的添加功能。3、积累功能代码、积累功能代码积累非常的重要,将平时自己写的和自己已经读通的程序分积累非常的重要,将平时自己写的和自己已经读通的程序分类保存起来,建一个属于自己的代码库,需要相关功能的时类保存起来,建一个属于自己的代码库,需要相关功能的时候,就到代码库中找相关的代码。这样既提高编码的效率又候,就到代码库中找相关
29、的代码。这样既提高编码的效率又提高了正确率。提高了正确率。学习编程需要经历三大步学习编程需要经历三大步选择编程工具选择编程工具 l目前流行两大语法体系:Basic语系和C语系。同一个语系下语言的基本语法是一样。两大语系如图所示。lC语系中,目前两大语言如日中天:C+和Java。C+适宜做系统软件的开发、Java更适宜做网络应用开发。l虽然VC+.NET已经面世很久了,但是C+的开发工具目前主流依然是VC+6.0和C+ Builder6.0。lJava流行的开发工具比较多,比如:IBM公司的Visual Age和Websphere Studio,Insprise公司JBuilder等等。C语系:
30、 C语言/C+语言/Java语言/Perl语言/C#/JavaScriptBasic语系: Basic语言/VB6.0/VB.NET/VBScript/VBAC语言发展的四个阶段语言发展的四个阶段 C语言发展的四个阶段语言发展的四个阶段 lC语言经过不断的发展,在编程体系中可以将其分语言经过不断的发展,在编程体系中可以将其分成四个阶段。成四个阶段。1、面向过程的、面向过程的C语言。语言。2、面向对象的、面向对象的C+语言。语言。3、SDK(Software Development Kit)编程。编程。4、MFC编程(编程(Microsoft Foundation Class:微软基:微软基类库
31、)。类库)。面向过程的面向过程的C语言语言 lC语言功能非常强大,语言功能非常强大,Linux/Unix操作系统就是用操作系统就是用C语言写的,语言写的, C语言直接调用语言直接调用操作系统提供的操作系统提供的API函数可以编写非常前大的程序。函数可以编写非常前大的程序。lC和和C+的最主要区别是:的最主要区别是:C语言中没有类的概念,语言中没有类的概念,C+在在C的语法基础上引入了的语法基础上引入了类(类(Class),所以),所以C+和和C的语法是基本相同的。面向过程编程,最基本的程序的语法是基本相同的。面向过程编程,最基本的程序用用C语言编写如语言编写如proj3_2.cpp所示。所示。
32、l案例名称:使用案例名称:使用C语言编程语言编程l程序名称:程序名称:proj3_2.cppl l#include lmain()llprintf(Hello DOSn);l案例案例:读取命令行参数读取命令行参数lmain函数是程序的主函数,程序执行的时候先从函数是程序的主函数,程序执行的时候先从main函数开始。函数开始。l该函数可以带参数,第一个参数是该函数可以带参数,第一个参数是int型的,第二个参数是字符指针,具体使用方法如型的,第二个参数是字符指针,具体使用方法如proj3_3.cpp所示。所示。l案例名称:读取命令行参数案例名称:读取命令行参数l程序名称:程序名称:proj3_3.
33、cppl l#include lint main(int argc, char *argv )llint i;lfor (i = 1; i argc; i+)llprintf(%sn, argvi);llreturn 0;l面向对象的面向对象的C+语言语言l面向对象程序设计语言可以将一些变量和函数封装到面向对象程序设计语言可以将一些变量和函数封装到类(类(Class)中,当变量被类封装后,称之为属性或)中,当变量被类封装后,称之为属性或者数据成员,当函数被类封装后,称之为方法或者成者数据成员,当函数被类封装后,称之为方法或者成员函数。员函数。l定义好的一个类,然后定义一个类的实例,这个实例定义
34、好的一个类,然后定义一个类的实例,这个实例就叫做对象,在就叫做对象,在C+中可以用类定义对象,使用方法中可以用类定义对象,使用方法如程序如程序proj3_4.cpp所示。所示。在C+中使用类l案例名称:在案例名称:在C+中使用类中使用类l程序名称:程序名称:proj1.cppl#include lclass personllpublic:l int heart;l char *name;l int run()/定义成员函数定义成员函数run()llheart=heart+20;lreturn heart;ll;l void main()int iRunStop;person ZhangSan;
35、ZhangS = 张三张三;ZhangSan.heart = 72;cout姓姓名名:ZhangS endl;cout跑步前心跳跑步前心跳ZhangSan.heartendl;/run()为对象的方法为对象的方法iRunStop = ZhangSan.run();cout跑步后心跳跑步后心跳iRunStopendl;SDK编程编程lC库提供了许多函数,可以直接拿来使用。比如利用库提供了许多函数,可以直接拿来使用。比如利用C库提供的库提供的DeleteFile函数来函数来删除一个文件,如程序删除一个文件,如程序proj3_6.cpp所示。所示。l案例名称:调用案例名称
36、:调用C库函数库函数l程序名称:程序名称:proj3_6.cppl l#include l#include lint main()llDeleteFile(C:test.txt);lprintf(删除成功删除成功n);lreturn 0;lMFC编程编程 lSDK的功能非常强大,需要记很多的函数,当的功能非常强大,需要记很多的函数,当面向对象编程成为主流的时候,微软将面向对象编程成为主流的时候,微软将SDK的的函数分类进行封装,这样就诞生了函数分类进行封装,这样就诞生了MFC(Microsoft Foundation Class)。)。网络安全编程网络安全编程 l网络安全基础编程技术主要包括网
37、络安全基础编程技术主要包括6个方面:个方面:Socket编程编程注册表编程注册表编程文件系统编程文件系统编程定时器编程定时器编程驻留程序编程驻留程序编程多线程编程。多线程编程。多线程编程多线程编程 l用多线程技术编程有两大优点:用多线程技术编程有两大优点:l1、提高、提高CPU的利用率。由于多线程并发运行,用户在做一的利用率。由于多线程并发运行,用户在做一件事情的时候还可以做另外一件事。特别是在多个件事情的时候还可以做另外一件事。特别是在多个CPU的情的情况下,更可以充分地利用硬件资源的优势,将一个大任务分况下,更可以充分地利用硬件资源的优势,将一个大任务分成几个任务,由不同的成几个任务,由不
38、同的CPU来合作完成。来合作完成。l2、采用多线程技术,可以设置每个线程的优先级,调整工、采用多线程技术,可以设置每个线程的优先级,调整工作的进度。作的进度。l在实际开发过程中,一定要有一个主进程,其他线程可以共在实际开发过程中,一定要有一个主进程,其他线程可以共享该进程也可以独立运行,每个线程占用享该进程也可以独立运行,每个线程占用CPU的时间有限制,的时间有限制,可以设置运行优先级别。可以设置运行优先级别。网络扫描与网络监听网络扫描与网络监听网络扫描与网络监听网络扫描与网络监听l什么是黑客?黑客是什么是黑客?黑客是“Hacker”的音译,源于的音译,源于动词动词Hack,其引申意义是指,其
39、引申意义是指“干了一件非常干了一件非常漂亮的事漂亮的事”。这里说的黑客是指那些精于某方。这里说的黑客是指那些精于某方面技术的人。对于计算机而言,黑客就是精通面技术的人。对于计算机而言,黑客就是精通网络、系统、外设以及软硬件技术的人。网络、系统、外设以及软硬件技术的人。l什么是骇客?有些黑客逾越尺度,运用自己的什么是骇客?有些黑客逾越尺度,运用自己的知识去做出有损他人权益的事情,就称这种人知识去做出有损他人权益的事情,就称这种人为骇客(为骇客(Cracker,破坏者)。,破坏者)。黑客分类黑客分类 l目前将黑客的分成三类:l第一类:破坏者;l第二类:红客;l第三类:间谍黑客的行为发展趋势黑客的行
40、为发展趋势l网站被黑可谓是家常便饭,世界范围内一般美国和日本的网站比较难入网站被黑可谓是家常便饭,世界范围内一般美国和日本的网站比较难入侵,韩国、澳大利亚等国家的网站比较容易入侵,黑客的行为有三方面侵,韩国、澳大利亚等国家的网站比较容易入侵,黑客的行为有三方面发展趋势:发展趋势:手段高明化:黑客界已经意识到单靠一个人力量远远不够了,已经手段高明化:黑客界已经意识到单靠一个人力量远远不够了,已经逐步形成了一个团体,利用网络进行交流和团体攻击,互相交流经逐步形成了一个团体,利用网络进行交流和团体攻击,互相交流经验和自己写的工具。验和自己写的工具。活动频繁化:做一个黑客已经不再需要掌握大量的计算机和
41、网路知活动频繁化:做一个黑客已经不再需要掌握大量的计算机和网路知识,学会使用几个黑客工具,就可以再互联网上进行攻击活动,黑识,学会使用几个黑客工具,就可以再互联网上进行攻击活动,黑客工具的大众化是黑客活动频繁的主要原因。客工具的大众化是黑客活动频繁的主要原因。动机复杂化:黑客的动机目前已经不再局限于为了国家、金钱和刺动机复杂化:黑客的动机目前已经不再局限于为了国家、金钱和刺激。已经和国际的政治变化、经济变化紧密的结合在一起。激。已经和国际的政治变化、经济变化紧密的结合在一起。黑客精神黑客精神 l要成为一名好的黑客,需要具备四种基本素质:要成为一名好的黑客,需要具备四种基本素质:“Free”精神
42、、探索与精神、探索与创新精神、反传统精神和合作精神。创新精神、反传统精神和合作精神。l1、“Free”(自由、免费自由、免费)的精神的精神需要在网络上和本国以及国际上一些高手进行广泛的交流,并有一需要在网络上和本国以及国际上一些高手进行广泛的交流,并有一种奉献精神,将自己的心得和编写的工具和其他黑客共享。种奉献精神,将自己的心得和编写的工具和其他黑客共享。l2、探索与创新的精神、探索与创新的精神所有的黑客都是喜欢探索软件程序奥秘的人。他们探索程序与系统所有的黑客都是喜欢探索软件程序奥秘的人。他们探索程序与系统的漏洞,在发现问题的同时会提出解决问题的方法。的漏洞,在发现问题的同时会提出解决问题的
43、方法。l3、反传统的精神、反传统的精神找出系统漏洞,并策划相关的手段利用该漏洞进行攻击,这是黑客找出系统漏洞,并策划相关的手段利用该漏洞进行攻击,这是黑客永恒的工作主题,而所有的系统在没有发现漏洞之前,都号称是安永恒的工作主题,而所有的系统在没有发现漏洞之前,都号称是安全的。全的。l4、合作的精神、合作的精神成功的一次入侵和攻击,在目前的形式下,单靠一个人的力量已经成功的一次入侵和攻击,在目前的形式下,单靠一个人的力量已经没有办法完成了,通常需要数人,数百人的通力协作才能完成任务,没有办法完成了,通常需要数人,数百人的通力协作才能完成任务,互联网提供了不同国家黑客交流合作的平台。互联网提供了不
44、同国家黑客交流合作的平台。黑客守则黑客守则l任何职业都有相关的职业道德,一名黑客同样有职业道德,一些守则是任何职业都有相关的职业道德,一名黑客同样有职业道德,一些守则是必须遵守的,不让会给自己招来麻烦。归纳起来就是必须遵守的,不让会给自己招来麻烦。归纳起来就是“黑客十二条守黑客十二条守则则”。1、不要恶意破坏任何的系统,这样做只会给你带来麻烦。、不要恶意破坏任何的系统,这样做只会给你带来麻烦。2、不要破坏别人的软件和资料。、不要破坏别人的软件和资料。3、不要修改任何系统文件,如果是因为进入系统的需要而修改了系、不要修改任何系统文件,如果是因为进入系统的需要而修改了系统文件,请在目的达到后将他改
45、回原状。统文件,请在目的达到后将他改回原状。4、不要轻易的将你要黑的或者黑过的站点告诉你不信任的朋友。、不要轻易的将你要黑的或者黑过的站点告诉你不信任的朋友。5、在发表黑客文章时不要用你的真实名字。、在发表黑客文章时不要用你的真实名字。6、正在入侵的时候,不要随意离开你的电脑。、正在入侵的时候,不要随意离开你的电脑。7、不要入侵或破坏政府机关的主机。、不要入侵或破坏政府机关的主机。8、将你的笔记放在安全的地方。、将你的笔记放在安全的地方。9、已侵入的电脑中的账号不得清除或修改。、已侵入的电脑中的账号不得清除或修改。10、可以为隐藏自己的侵入而作一些修改,但要尽量保持原系统的、可以为隐藏自己的侵
46、入而作一些修改,但要尽量保持原系统的安全性,不能因为得到系统的控制权而将门户大开。安全性,不能因为得到系统的控制权而将门户大开。11、不要做一些无聊、单调并且愚蠢的重复性工作。、不要做一些无聊、单调并且愚蠢的重复性工作。12、做真正的黑客,读遍所有有关系统安全或系统漏洞的书。、做真正的黑客,读遍所有有关系统安全或系统漏洞的书。攻击五部曲攻击五部曲l一次成功的攻击,都可以归纳成基本的五步骤,但一次成功的攻击,都可以归纳成基本的五步骤,但是根据实际情况可以随时调整。归纳起来就是是根据实际情况可以随时调整。归纳起来就是“黑黑客攻击五部曲客攻击五部曲” 1、隐藏、隐藏IP2、踩点扫描、踩点扫描3、获得
47、系统或管理员权限、获得系统或管理员权限4、种植后门、种植后门5、在网络中隐身、在网络中隐身案例案例4-5 漏洞扫描漏洞扫描 l使用工具软件使用工具软件X-Scan-v2.3l该软件的系统要求为:该软件的系统要求为:Windows 9x/NT4/2000。该软件采。该软件采用多线程方式对指定用多线程方式对指定IP地址段地址段((或单机)进行安全漏洞检(或单机)进行安全漏洞检测,支持插件功能,提供了图形界面和命令行两种操作方测,支持插件功能,提供了图形界面和命令行两种操作方式式l扫描内容包括:扫描内容包括:远程操作系统类型及版本远程操作系统类型及版本标准端口状态及端口标准端口状态及端口Banner
48、信息信息SNMP信息,信息,CGI漏洞,漏洞,IIS漏洞,漏洞,RPC漏洞,漏洞,SSL漏洞漏洞SQL-SERVER、FTP-SERVER、SMTP-SERVER、POP3-SERVERNT-SERVER弱口令用户,弱口令用户,NT服务器服务器NETBIOS信息信息注册表信息等。注册表信息等。主界面主界面l扫描结果保存在扫描结果保存在/log/目录中,目录中,index_*.htm为扫描结果索引文件。主为扫描结果索引文件。主界面如图界面如图4-14所示。所示。扫描参数扫描参数l可以利用该软件对系统存在的一些漏洞进行扫描,选择菜单栏设可以利用该软件对系统存在的一些漏洞进行扫描,选择菜单栏设置下的
49、菜单项置下的菜单项“扫描参数扫描参数”,扫描参数的设置如图所示。,扫描参数的设置如图所示。扫描参数扫描参数l可以看出该软件可以对常用的网络以及系统的漏洞进行全面的扫描,可以看出该软件可以对常用的网络以及系统的漏洞进行全面的扫描,选中几个复选框,点击按钮选中几个复选框,点击按钮“确定确定”。l下面需要确定要扫描主机的下面需要确定要扫描主机的IP地址或者地址或者IP地址段,选择菜单栏设置下地址段,选择菜单栏设置下的菜单项的菜单项“扫描参数扫描参数”,扫描一台主机,在指定,扫描一台主机,在指定IP范围框中输入:范围框中输入:09-09,如图所示。,如图所示
50、。漏洞扫描漏洞扫描l设置完毕后,进行漏洞扫描,点击工具栏上的设置完毕后,进行漏洞扫描,点击工具栏上的图标图标“开始开始”,开始对目标主机进行扫描,开始对目标主机进行扫描网络监听网络监听 l网络监听的目的是截获通信的内容,监听的手段是对协议进行分析。网络监听的目的是截获通信的内容,监听的手段是对协议进行分析。Sniffer pro就是一个完善的网络监听工具。就是一个完善的网络监听工具。l监听器监听器Sniffer的原理:在局域网中与其他计算机进行数据交换的时候,的原理:在局域网中与其他计算机进行数据交换的时候,发送的数据包发往所有的连在一起的主机,也就是广播,在报头中包发送的数据包发往所有的连在
51、一起的主机,也就是广播,在报头中包含目标机的正确地址。因此只有与数据包中目标地址一致的那台主机含目标机的正确地址。因此只有与数据包中目标地址一致的那台主机才会接收数据包,其他的机器都会将包丢弃。但是,当主机工作在监才会接收数据包,其他的机器都会将包丢弃。但是,当主机工作在监听模式下时,无论接收到的数据包中目标地址是什么,主机都将其接听模式下时,无论接收到的数据包中目标地址是什么,主机都将其接收下来。然后对数据包进行分析,就得到了局域网中通信的数据。一收下来。然后对数据包进行分析,就得到了局域网中通信的数据。一台计算机可以监听同一网段所有的数据包,不能监听不同网段的计算台计算机可以监听同一网段所
52、有的数据包,不能监听不同网段的计算机传输的信息。机传输的信息。监听软件监听软件l防止监听的手段是:建设交换网络、使用加密技术和防止监听的手段是:建设交换网络、使用加密技术和使用一次性口令技术。使用一次性口令技术。l除了非常著名的监听软件除了非常著名的监听软件Sniffer Pro以外,还有一些以外,还有一些常用的监听软件:常用的监听软件:l嗅探经典嗅探经典Irisl密码监听工具密码监听工具Win Snifferl密码监听工具密码监听工具pswmonitor和非交换环境局域网的和非交换环境局域网的fssniffer等等等等lSniffer Pro是一款非常著名监听的工具,但是是一款非常著名监听的
53、工具,但是Sniffer Pro不能不能有效的提取有效的信息。有效的提取有效的信息。监听工具监听工具-Win Sniffer lWin Sniffer专门用来截取局域网内的密码,比如登录专门用来截取局域网内的密码,比如登录FTP,登,登录录Email等的密码。主界面如图所示。等的密码。主界面如图所示。设置设置l只要做简单的设置就可以进行密码抓取了,点击工具栏图标只要做简单的设置就可以进行密码抓取了,点击工具栏图标“Adapter”,设置网卡,这里设置为本机的物理网卡就可以,设置网卡,这里设置为本机的物理网卡就可以抓取密码抓取密码l这样就可以抓取密码了,使用DOS命令行连接远程的FTP服务,如图
54、4-21所示。会话过程会话过程l打开打开Win Sniffer,看到刚才的会话过程已经被记录下,看到刚才的会话过程已经被记录下来了,显示了会话的一些基本信息来了,显示了会话的一些基本信息监听工具监听工具-pswmonitor l监听器监听器pswmonitor用于监听基于用于监听基于WEB的邮箱密码、的邮箱密码、POP3收信密码和收信密码和FTP登录密码等等,只需在一台电脑上运行,就可以监听局域网内任意登录密码等等,只需在一台电脑上运行,就可以监听局域网内任意一台电脑登录的用户名和密码,并将密码显示、保存,或发送到用户指一台电脑登录的用户名和密码,并将密码显示、保存,或发送到用户指定的邮箱。定
55、的邮箱。监听工具监听工具-pswmonitorl该工具软件功能比较强大,可以监听的一个网段所有的用户名和该工具软件功能比较强大,可以监听的一个网段所有的用户名和密码,而且还可以指定发送的邮箱。密码,而且还可以指定发送的邮箱。网络入侵网络入侵 攻击技术中最重要的部分攻击技术中最重要的部分网络入侵主要内容网络入侵主要内容l社会工程学攻击社会工程学攻击l物理攻击物理攻击l暴力攻击暴力攻击l利用利用Unicode漏洞攻击漏洞攻击l利用缓冲区溢出漏洞进行攻击等技术。利用缓冲区溢出漏洞进行攻击等技术。社会工程学攻击社会工程学攻击 l社交工程学:社交工程学:是使用计谋和假情报去获得密码和其他是使用计谋和假情
56、报去获得密码和其他敏感信息的科学,研究一个站点的策略其中之一就是敏感信息的科学,研究一个站点的策略其中之一就是尽可能多的了解这个组织的个体,因此黑客不断试图尽可能多的了解这个组织的个体,因此黑客不断试图寻找更加精妙的方法从他们希望渗透的组织那里获得寻找更加精妙的方法从他们希望渗透的组织那里获得信息。信息。l案例:一组高中生曾想进入一个当地的公司的计算机案例:一组高中生曾想进入一个当地的公司的计算机网络,他们拟定了一个表格,调查看上去显得是无害网络,他们拟定了一个表格,调查看上去显得是无害的个人信息,例如所有秘书和行政人员和他们的配偶、的个人信息,例如所有秘书和行政人员和他们的配偶、孩子的名字,
57、这些从学生转变成的黑客说这种简单的孩子的名字,这些从学生转变成的黑客说这种简单的调查是他们社会研究工作的一部分。利用这份表格这调查是他们社会研究工作的一部分。利用这份表格这些学生能够快速的进入系统,因为网络上的大多数人些学生能够快速的进入系统,因为网络上的大多数人是使用宠物和他们配偶名字作为密码。是使用宠物和他们配偶名字作为密码。社会工程学攻击社会工程学攻击l1、打电话请求密码、打电话请求密码 尽管不像前面讨论的策略那样聪明,打电话寻问密尽管不像前面讨论的策略那样聪明,打电话寻问密码也经常奏效。在社会工程中那些黑客冒充失去密码也经常奏效。在社会工程中那些黑客冒充失去密码的合法雇员,经常通过这种
58、简单的方法重新获得码的合法雇员,经常通过这种简单的方法重新获得密码。密码。l2、伪造、伪造Email使用使用telnet一个黑客可以截取任何一个身份证发送一个黑客可以截取任何一个身份证发送Email的全部信息,这样的的全部信息,这样的Email消息是真的,因消息是真的,因为它发自于一个合法的用户。在这种情形下这些信为它发自于一个合法的用户。在这种情形下这些信息显得是绝对的真实。黑客可以伪造这些。一个冒息显得是绝对的真实。黑客可以伪造这些。一个冒充系统管理员或经理的黑客就能较为轻松的获得大充系统管理员或经理的黑客就能较为轻松的获得大量的信息,黑客就能实施他们的恶意阴谋。量的信息,黑客就能实施他们
59、的恶意阴谋。物理攻击与防范物理攻击与防范 l物理安全是保护一些比较重要的设备不被接触。物理安全是保护一些比较重要的设备不被接触。l物理安全比较难防,因为攻击往往来自能够接物理安全比较难防,因为攻击往往来自能够接触到物理设备的用户。触到物理设备的用户。 案例案例5-1得到管理员密码得到管理员密码 l用户登录以后,所有的用户信息都存储在系统的一个进程中,这用户登录以后,所有的用户信息都存储在系统的一个进程中,这个进程是:个进程是:“winlogon.exe”,可以利用程序将当前登录用户的,可以利用程序将当前登录用户的密码解码出来,如图所示。密码解码出来,如图所示。案例案例5-1得到管理员密码得到管
60、理员密码l使用FindPass等工具可以对该进程进行解码,然后将当前用户的密码显示出来。将FindPass.exe拷贝到C盘根目录,执行该程序,将得到当前用户得登录名,如图5-2所示。权限提升权限提升l有时候,管理员为了安全,给其他用户建立一有时候,管理员为了安全,给其他用户建立一个普通用户帐号,认为这样就安全了。个普通用户帐号,认为这样就安全了。l其实不然,用普通用户帐号登录后,可以利用其实不然,用普通用户帐号登录后,可以利用工具工具GetAdmin.exe将自己加到管理员组或者将自己加到管理员组或者新建一个具有管理员权限的用户。新建一个具有管理员权限的用户。案例案例5-2 普通用户建立管理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 月饼黏土课件教学课件
- 整形护理课件教学课件
- 完整足球模块教案
- 临沂体育制造行业劳动合同范本
- 乳品行业入职合同样本
- 个人租车协议书城市通勤
- 交通运输服务协议书格式
- 会计主管劳动合同样本
- 井控管理十七项核心策略
- 会展活动合同纠纷案例分析
- 大学生生涯规划与职业发展知到章节答案智慧树2023年鲁东大学
- 葫芦岛鹏翔生物科技(集团)有限公司年产农药系列产品3700吨、年产胡椒环2000吨建设项目环评报告
- 地理规范化学习要求
- 民营医院职称岗位工资级岗位招聘分级表
- 人工智能在中学英语教学中的应用探索共3篇
- 木工制作校本课程开发纲要
- 三秦出版社《综合实践活动》四年级下册全册教案【全套】
- 触电事故应急演练方案 触电事故应急演练记录
- GB/T 33686-2017煤矿水水质分析的一般规定
- GB/T 25995-2010精细陶瓷密度和显气孔率试验方法
- 上海科技教育出版社八年级下册信息技术教案全册
评论
0/150
提交评论