网络空间安全概论第5单元笔记
第五章 网络攻防技术
5.1 网络信息收集技术——网络踩点
1、信息收集的必要性及内容:
- 攻防对抗(博弈)中:对敌方信息的掌握是关键。
- 在入侵一个目标系统之前,必须了解目标系统可能存在的:管理上的安全缺陷和漏洞、网络协议安全缺陷与漏洞、系统安全缺陷与漏洞。
- 在入侵实施过程中,还需要进一步掌握:目标网络的内部拓扑结构、目标系统与外部网络的连接方式与链路路径、防火墙的端口过滤与访问控制配置、使用的身份认证与访问控制机制。
2、网络信息收集技术:网络踩点,网络扫描,网络查点。
3、网络踩点:了解攻击目标的隐私信息、网络环境和信息安全状况;根据踩点结果,攻击者寻找出攻击目标可能存在的薄弱环节。
4.网络踩点常用手段:Google Hacking,Whois查询,DNS查询 。 - Google Hacking:通过网络搜索引擎查找特定安全漏洞或私密信息的方法。
- Whols查询:DNS和IP类似真实世界中的通信地址和电话号码,是互联网中联络特定组 ,织或个人所必须的关键信息, DNS和IP信息在互联网的公共数据库中进行维护,并允许公众查询。
- DNS查询:包括DNS注册信息WholS查询和DNS WholS查询。
5.2 网络信息收集技术——网络扫描
1.网络扫描:攻击者通过扫描技术确定目标的操作系统、开发的网络应用服务的类型及版本信息,进而找到可能存在的入侵漏洞。
2、常见的网络扫描技术:主机扫描、端口扫描、操作系统/网络服务辨识、漏洞扫描。
3、主机扫描:向目标系统发出特定的数据包,并分析目标系统返回的响应结果(或者没有任何结果)的行为。
如何防范主机扫描:使用诸如Snort入侵检测系统,或者McAfee桌面防火墙工具,来检测主机扫描活动;根据业务需求,仔细考虑允许哪些类型的ICMP通信进入网络。
4、端口扫描:指攻击者通过连接到目标系统的TCP/UDP端口,以确定有哪些服务正处于监听状态。
- 常见的几种端口扫描技术:TCP连接扫描、TCP ACK扫描、TCP窗口扫描、TCP SYN扫描、TCP FIN 扫描、TCP圣诞树扫描、TCP RPC扫描、TCP空扫描、UDP扫描
5、操作系统类型探测—TCP/IP协议栈指纹分析:不同的操作系统在实现TCP/IP协议栈时都存在这差异。这些差异我们称之为TCP/IP协议栈指纹。
6、操作系统与网络服务辨识防范措施: - 使用端口扫描监测工具,发现对操作系统的探查活动
- 部署安全的防火墙以保护目标主机
7.安全漏洞:通常指硬件、软件或策略上存在的安全缺陷,利用这些安全缺陷,攻击者能够在未授权的情况下访问、控制、甚至破坏目标系统。 - 目的是探测目标网络的特定操作系统、网络服务、应用程序中是否存在已公布安全漏洞。
- 常用软件:Nessus等
- 漏洞挖掘大赛:Pwn2Own(最著名,奖金最丰厚,获奖者的安全研究水平属于世界领先水平)
8、漏洞扫描防范措施: - 最简单对策:
- 在黑客之前扫描漏洞
- 补丁自动更新和分发:修补漏洞
- 保证所安装软件的来源安全性
- 开启操作系统和应用软件的自动更新机制检测和防御漏洞扫描行为
- 网络入侵检测系统:Snort
- 仔细审查防火墙配置规则
5.3 网络信息收集技术——网络查点
1、查点:对已选择好的攻击目标,发起主动连接和查询,针对性的收集发起实际攻击所需的具体信息内容,主要包括以下三个:
- 目标系统上合法用户账户:获得用户名后,攻击者可以使用猜测破解的方法获得用户口令,绕过系统身份验证
- 错误配置的共享资源:会导致恶意程序上传。
- 老旧的服务版本:可能存在安全漏洞。
2、网络服务旗标抓取:利用客户端工具连接至远程网络服务并观察输出以搜集关键信息的技术手段。
3、通用网络服务查点:FTP文件传输协议、POP3、SMTP电子邮件收发服务等。
4、Windows平台网络服务查点:目录查点、MSRPC查点、NETBIOS名字服务查点、SMB会话查点。
5、针对Windows系统网络查点的防范措施: - 关闭不必要的服务及端口
- 关闭打印与共享服务
- 不要让主机名暴露使用者身份
- 关闭不必要共享
- 关闭默认共享
- 限制IPC$默认共享的匿名空连接
5.4Windows 系统渗透基础
1、典型的劫持攻击技术:缓冲区溢出、格式化字符申漏洞、整数溢出、指针释放后再次被使用。
2、远程渗透Windows系统的途径:
- 认证欺骗:通过暴力和字典破解登入口令或发起中间人攻击,依旧是获取windows系统非授权访问权限的最轻松的途径之一。
- 客户端软件漏洞利用:安全漏洞越来越多出现在缺乏管理但是功能复杂的客户端软件中,而软件补丁更新速度没有服务端软件及时,成为下手的绝佳目标。
- 设备驱动漏洞利用:微软倡导的即插即用、支持用户使用的海量外部设备,一般涉及原始的底层硬件层面的命令交互,需要获得操作系统的高权限,使得受到黑客攻击的机会越来越多。
3、针对系统渗透攻击的一些常见防御措施:
5.5 Internet 协议安全问题
1、网络安全五大属性;机密性(Confidentiality)、完整性(Integrity)、可用性(Availability)、真实性(Authentication)、不可抵赖性(Non-Repudiation)。
2、网络攻击的基本模式:
- 截获(窃听) :嗅探(sniffing)、监听(eavesdropping)
- 篡改:数据包篡改(tampering)
- 中断:拒绝服务(DoSing)
-伪造:欺骗(Spoofing)
3、作为核心协议TCP/IP模型,采用了分层模型(每一层具有不同功能,具有不同的协议)。
因特网最初基于一群互相信任的用户连接到一个透明的网络这样一种设计模型的,并未考虑过通信的安全性。随着针对各层协议的各种缺陷的攻击方法被发明并被黑客掌握对网络安全构成严重危害,一些安全性被改进并作出一定的防护措施。
4、TCP/IP网络协议栈攻击防范措施:
-网络接口层,监测和防御网络威胁,对网关路由器等关键网络节点设备进行安全防护,优化网络设计,增强链路层加密强度。
-在网络层,采用多种检测和过滤技术来发现和阻断网络中的欺骗攻击,增强防火墙、路由器和网关设备的安全策略,关键服务器使用静态绑定IP-MAC映射表、使用IPsec协议加密通讯等防御机制。
-传输层加秘密传输和安全控制机制,包括身份认证和访问。
-应用层加密,用户级身份认证,数字签名技术,授权和访问控制技术以及审计、入侵检测。
5.6 基本的Web安全
1、web安全现状:对web应用程序的渗透攻击已经超过了对操作系统和网络服务测序的漏洞攻击,成为攻击者最受青睐的目标。
web安全攻击分为三类:跨站脚本攻击(Cross-SiteScripting , XSS)、SQL注入、跨站请求伪造(Cross-SiteRequest Forgey, CSRF)
3、跨站脚本XSS分为三类:反射性XSS、存储型XSS、DOM-XSS
4、XSS类攻击防护措施:
-应用安全国际组织OWASP给网站的建议:对所有来自外部的用户输入进行完备检查;对所有输出到响应页面的数据进行适当的编码,以防止任何已成功注入的脚本在客户浏览器端运行。
-在浏览器设置中关闭JavaScript,关闭cookie或设置cookie为只读,提高浏览器的安全等级设置,尽量使用非IE的安浏览器来降低风险。
-XSS攻击随着社会工程学的成功应用,个人用户还需要增强安全意识,只信任值得信任的站点或内容,不要轻易点击不明链接。
5、SQL注入造成的危害(包括但不局限于):
数据库中存放的用户隐私信息被泄露
网页篡改,即通过操作数据库对特定网页进行篡改
通过修改数据库一些字段的值,嵌入网马链接,进行挂马攻击
数据库的系统管理员账户被篡改
服务器被黑客安装后门进行远程控制
破坏硬盘数据,瘫痪全系统
6、防范SQL注入攻击需要注意:
- 使用类型安全的参数编码机制。
- 对来自程序外部的用户输入,必须进行完备检查。
- 将动态SQL语句替换为存储过程,预编译SQL或ADO命令对象.
- 加强SQL数据库服务器的配置与连接,以最小权限配置原则配置Web应用程序连接数据库的操作权限,避免将缴感数据明文存放于数据库中。
7、对CSRF攻击的防御分为三个层面:服务端、客户端、设备端
如何防止:养成良好的上网习惯,能够帮助用户减少CSRF攻击的危害
5.7社会工程学攻击
1、定义:利用人的好奇心、轻信、疏忽、警惕性不高,使用诸如假冒、欺诈、引诱等多种手段,来操纵器执行预期的动作或泄露机密信息的一门艺术与学问。
攻击形式:信息收集、心理诱导、身份伪造、施加影响
目的:首要目的:获得金钱收益;次要目的:竞争优势和打击报复
2、社会工程学攻击者最常用的诱导技巧:
- 表现自信、控制谈话的主动权、不给对方太多思考的机会。
- 抛出诱饵,以寻求更大回报。
- 表达出共同兴趣、阿谀奉承,以迎合目标的自我感受。
3、如何防范: - 了解和熟悉社会工程学诈骗。
- 对自己的基础信息保持足够的警惕。
- 永远不要通过不安全的方式(电话、网上或者闲聊)透露个人、家庭、公司一些看似无关紧要的信息。
- 如果涉及到敏感信息,请务必核实对方的身份。
- 使用防火墙来保护个人电脑,及时更新杀毒软件,同时提高垃圾邮件过滤器的门槛。