一.网络安全概念
1.网络空间---一个由信息基础设施组成相互依赖的网络 。
网络空间,它跟以前我们所理解的网络不一样了,它不光是一个虚无缥缈的,虚拟的东西,它更多的是融入了我们这些真实的物理设备,也就意味着这个网络空间它是有物理实体作为承托的。
通信保密阶段 --- 计算机安全阶段 --- 信息系统安全 --- 网络空间安全
APT攻击 --- 高级持续性威胁
网络安全(网络空间安全--Cyberspace)从其本质上讲就是网络上的信息安全,指网络系统的硬件、软件及数据受到保护。不遭受破坏、更改、泄露,系统可靠正常地运行,网络服务不中断。
信息安全:防止任何对数据进行未授权访问的措施,或者防止造成信息有意无意泄漏、破坏、丢失等问题的发生,让数据处于远离危险、免于威胁的状态或特性。
2.分布式计算----一台设备的算力是不是有限的,那么我是不是可以集合多台,就是如果要处理一些比较复杂的问题的时候,可以集合多台设备的去共同计算
分布式计算是计算机科学中的一个重要研究方向,它探讨如何将一个需要巨大计算能力才能解决的问题拆分成多个小的部分,然后将这些部分分配给多个计算机进行处理,最后将这些计算结果综合起来得到最终的结果。这种计算方式利用了多台计算机的闲置计算能力,通过并行处理提高处理效率,适用于处理海量数据和复杂计算问题。
分布式计算的基本原理包括将一个大计算任务拆分成多个小计算任务,分布到若干台机器上去计算,然后再进行结果汇总。这种计算方式的目的在于分析计算海量的数据,如雷达监测的海量历史信号中分析异常信号,淘宝双十一实时计算各地区的消费习惯等。
分布式计算需要学习的内容包括分布式系统的基础知识、分布式算法的设计与实现、网络通信技术、数据管理技术、任务调度策略等。此外,还需要了解分布式计算的应用领域,如网格计算、云计算等,以及分布式计算的优势,如提高计算效率、实现更快速的计算、提高系统可靠性、实现更高的扩展性、降低计算成本等。
在分布式计算中,不同的计算节点可以是位于同一物理计算机上的不同进程、位于同一局域网内的不同计算机,或者是分布在全球各地的计算机群集。这种计算方式通过并行计算的方式,将计算时间缩短到更短的时间内,实现更快速的计算。
分布式计算的应用非常广泛,包括但不限于解决复杂的数学问题、研究寻找最为安全的密码系统、生物病理研究、寻找对抗疾病的更为有效的药物等。这些项目都需要惊人的计算量,仅仅由单个的电脑或个人在能让人接受的时间内完成是不可能的。
分布式计算系统的类型包括计算机集群系统和计算机网格系统。计算机集群系统之间是同构的,主要采用集群计算;而计算机网格系统之间是异构的,因为单个计算内部的工作是分层次的。
3.云计算---
云计算是一种基于互联网的计算方式,它允许用户通过网络访问共享的软硬件资源和信息,这些资源可以按需求提供给计算机和其他设备。云计算将巨大的数据计算处理程序分解成无数个小程序,通过多部服务器组成的系统进行处理和分析,然后将结果返回给用户。这种技术可以在很短的时间内完成对数以万计的数据处理,提供强大的网络服务。
云计算的特点包括:
- 易获取。资源通过互联网提供,用户可以随时获取所需的服务和资源。
- 高利用率。通过自动化管理,云计算可以高效地利用资源,避免浪费。
- 按需服务。用户可以根据需要访问计算机和存储系统,实现资源的灵活配置。
- 共享资源池。云计算将计算资源集合起来,形成一个资源共享池,用户可以按需使用这些资源。
云计算的服务类型通常分为三类:
- 基础设施即服务(IaaS):提供计算机基础设施服务,如服务器、存储和网络设备等。
- 平台即服务(PaaS):提供软件开发和运行环境,允许用户在其上开发、运行和管理应用程序。
- 软件即服务(SaaS):提供应用程序作为服务,用户可以通过互联网访问这些应用程序,而无需购买和安装软件。
云计算的发展是信息技术领域的重大革新,它使得计算能力成为一种公共服务,类似于水、电等公用事业,用户可以根据需要获取计算资源,并按使用量付费。这种模式不仅提高了资源的利用率,还降低了使用成本,使得企业和个人能够更加灵活地应对计算需求的变化。
二. 网络安全的现状以及面临挑战
1.网络空间安全市场在中国,潜力无穷
未来三年网络安全市场的规模将达到百亿美元
网络空间安全指的是保护网络系统、设备、程序和数据免受未经授权的访问、破坏、篡改、泄露和滥用等各种威胁和风险的能力。它是保障国家安全、社会稳定、经济发展和个人隐私安全的重要方面。
网络空间安全主要涉及以下几个方面:
保护网络系统和设备的安全:网络系统和设备是网络空间安全的基础,保护其安全对于维护网络空间安全至关重要。
保护网络通信的安全:包括对网络通信进行加密、认证和防窃听等,确保网络通信的机密性、完整性和可用性。
保护网络应用程序和数据的安全:网络应用程序和数据是网络空间安全的核心,需要采取多种技术手段保护其安全,如防火墙、反病毒软件、入侵检测和数据加密等。
管理网络安全风险:网络安全风险是不可避免的,需要进行风险评估和管理,制定相应的应急响应计划,以应对网络安全事件和威胁。
网络空间安全是一个复杂的领域,需要政府、企业和个人共同努力,采取综合措施,建立完善的法律法规和管理体系,保护网络空间安全。
2.数字划时代威胁升级
攻击频发:勒索病毒、数据泄露、黑客入侵等网络安全事件呈现上升趋势
APT攻击---
高级长期威胁(英语:Advanced Persistent Threat,缩写:APT),又称高级持续性威胁、先进持续性威胁等,是指隐匿而持久的电脑入侵过程,通常由某些人员精心策划,针对特定的目标。其通常是出于商业或政治动机,针对特定组织或国家,并要求在长时间内保持高隐蔽性。高级长期威胁包含三个要素:高级、长期、威胁。高级强调的是使用复杂精密的恶意软件及技术以利用系统中的漏洞。长期暗指某个外部力量会持续监控特定目标,并从其获取数据。威胁则指人为参与策划的攻击。
勒索病毒---
勒索病毒,是一种新型电脑病毒,主要以邮件、程序木马、网页挂马的形式进行传播。该病毒性质恶劣、危害极大,一旦感染将给用户带来无法估量的损失。这种病毒利用各种加密算法对文件进行加密,被感染者一般无法解密,必须拿到解密的私钥才有可能破解。
数据泄露----
数据泄露是指未经授权的情况下,敏感数据被泄露给不相关的个人或组织。 1
数据泄露是一个严重的安全问题,涉及到敏感信息的非法获取和传播。这种情况可能发生在个人、企业或政府机构中,当未经授权的个人或团体获取了本应保密的数据时,就发生了数据泄露。数据泄露可能包括个人信息、商业机密、财务数据、医疗记录等,这些信息的泄露可能导致隐私侵犯、身份盗窃、财务损失、企业声誉损害等严重后果。
为了防止数据泄露,企业和个人可以采取一系列措施,包括但不限于:
- 访问控制:确保雇员仅具有完成其工作所需的最小访问权限。
- 加密 :使用SSL/TLS加密网站和收到的数据,以及对存储在服务器或员工设备上的静态数据进行加密。
- Web安全解决方案:部署Web应用程序防火墙(WAF)以保护免受应用程序攻击和漏洞利用。
- 网络安全:保护内部网络不受入侵,使用防火墙、DDoS防护、安全Web网关、数据丢失防护(DLP)等措施。
- 保持软件和硬件最新:定期安装安全补丁或更新软件和硬件以修补漏洞。
- 准备应对计划:制定在数据泄露情况下执行的应对计划,以尽量减少或遏制信息泄露。
通过这些措施,可以显著降低数据泄露的风险,保护敏感信息不被未经授权的第三方获取和利用。
个人信息外泄---
个人信息泄露,实质上是利用技术手段和工具进行的技术性窃取,有别于一般的偷盗。
个人信息主要包括以下类别:
基本信息。包括姓名、性别、年龄、身份证号码、电话号码、Email地址及家庭住址等在内的个人基本信息,有时甚至会包括婚姻、信仰、职业、工作单位、收入、病历、生育等相对隐私的个人基本信息。
设备信息。主要是指所使用的各种计算机终端设备(包括移动和固定终端)的基本信息,如位置信息、Wifi列表信息、Mac地址、CPU信息、内存信息、SD卡信息、操作系统版本等。
账户信息。主要包括网银账号、第三方支付账号,社交账号和重要邮箱账号等。
隐私信息。主要包括通讯录信息、通话记录、短信记录、IM应用软件聊天记录、个人视频、照片等。
社会关系信息。这主要包括好友关系、家庭成员信息、工作单位信息等。
网络行为信息。主要是指上网行为记录,在网络上的各种活动行为,如上网时间、上网地点、输入记录、聊天交友、网站访问行为、网络游戏行为、账号注册行为等个人信息。
3.传统安全防护逐步失效
传统防火墙、IPS、杀毒软件等基于特征库的安全检测,无法过滤:变种僵/木/蠕、U盘带入、恶意内部用户、BYOD带入、零日漏洞、APT攻击。
4.安全风险能见度不足
看不清资产:
• 水坑攻击
• 鱼叉邮件攻击
• 零日漏洞攻击
• 其他攻击
看不见的新型威胁:
• 水坑攻击
• 鱼叉邮件攻击
• 零日漏洞攻击
• 其他攻击
看不见的内网潜藏风险:
• 黑客内部潜伏后预留的后门
• 伪装合法用户的违规操作行为
• 封装在正常协议中的异常数据外发
• 看不见的 内部人员 违规操作
5.缺乏自动化防御手段
6.网络安全监管标准愈发严苛
法律、法规、标准、监管的要求逐步加强。
网络安全工作已经上升到法律层面,网络安全等级保护2.0制度明确要求安全工作对政府、企事业各类组织全社会覆盖,对云、移动互联、物联网、工业互联、大数据平台全技术场景覆盖。
各级监管机构、主管机构、上级部门也会对组织的网络安全工作开展大量的检查。
组织的一把手永远是网络安全工作的第一责任人,组织对网络安全风险的忽视在合规监管的角度基本是零容忍,全国也有很多因为甲方没有履行网络安全义务而产生的案件。
2017.06网络安全法
2019.05信息安全技术网络安全等级保护基本要求
三.常用的网络术语
1.漏洞
漏洞是指信息系统中的软件、硬件或通信协议中存在的缺陷或不适当的配置,
从而可使攻击者在未授权的情况下访问或破坏系统,导致信息系统面临安全风险。
常见漏洞有SQL注入漏洞、弱口令漏洞、远程命令执行漏洞、权限绕过漏洞等。
2.入侵与攻击
入侵与攻击是直接相关的,入侵是目的,攻击是手段,攻击存在于整个入侵过程之中。在现实生活中,要进行入侵的人可能是攻击者本人,也可能是幕后操纵者。入侵者的目的就是抢夺和占有别人的资源,但他不一定具有攻击能力,他可以雇用攻击者来达到入侵的目的。显而易见,攻击是由入侵者发起并由攻击者实现的一种"非法"行为。无论是入侵,还是攻击,仅仅是在形式上和概念描述上有所区别而已。对计算机系统和网络而言,入侵与攻击没有什么本质区别,入侵伴随着攻击,攻击的结果就是入侵。例如,在入侵者没有侵入目标网络之前,他想方设法利用各种手段对目标网络进行攻击(这是在目标网络外的主动攻击行为)。当攻击得手而侵入目标网络之后,入侵者利用各种手段掠夺和破坏别人的资源(这是在目标网络内的主动攻击行为)。
从网络安全角度看,入侵和攻击的结果都是一样的。一般情况下,入侵者或攻击者可能是黑客、破坏者、间谍、内部人员、被雇用者、计算机犯罪者或恐怖主义者。攻击时,所使用的工具(或方法)可能是电磁泄漏、搭线窃听、程序或脚本、软件工具包、自治主体(能独立工作的小软件)、分布式工具、用户命令或特殊操作等。
3.什么是0day漏洞?
0day漏洞是指负责应用程序的程序员或供应商所未知的软件缺陷。因为该漏洞未知,所以没有可用的补丁程序。
换句话说,该漏洞是由不直接参与项目的人员发现的。术语"0day"是指从发现漏洞到对其进行首次攻击之间的天数。0day漏洞公开后,便称为nday漏洞。
0day时间表的工作原理如下:
一个人或一个公司创建了一个软件,其中包含一个漏洞,但涉及编程或发行的人员却不知道。
在开发人员有机会定位或解决问题之前,有人(除负责软件的人员之外)发现了漏洞。
发现该漏洞的人会创建恶意代码来利用该漏洞。
该漏洞被释放。
负责人员将被告知漏洞利用并打补丁。
该漏洞不再被视为0day。
补丁发布。
大多数情况下,针对0day漏洞的攻击很少立即被发现。发现这些缺陷通常可能需要几天或几个月的时间,这才使这类漏洞如此危险。
4.后门
后门是一种用于获得对程序或在线服务访问权限的秘密方式。
是由程序的开发者内置于程序中,通过它可以对特定的功能进行特殊的访问。例如,内置于操作系统中的某个后门可能会允许运行该操作系统的任何计算机进行不受限制的访问,如果后门被其他人知道,或者在发布软件之前没有删除,那么它就成了安全隐患。
5.webshell
webshell就是一种可以在web服务器上执行的后台脚本或者命令执行环境。
简单来说
webshell是网站入侵的脚本攻击工具
黑客通过入侵网站上传webshell后获得服务器的执行操作权限,比如执行系统命令、窃取用户数据、删除web页面、修改主页等,其危害不言而喻。
Webshell攻击的特点有哪些?
1.持续远程访问
入侵者可以利用webshell从而达到长期控制网站服务器的目的。若攻击者自行修复了漏洞,以确保没有其他人会利用该漏洞,攻击者可以低调的随时控制服务器。一些流行的webshell使用密码验证和其他技术来确保只有上传webshell的攻击者才能访问它。
2.权限提升
在服务器没有配置错误的情况下,webshell将在web服务器的用户权限下运行,该用户权限是有限的。通过使用webshell,攻击者可以尝试通过利用系统上的本地漏洞来执行权限提升,常见的有查找敏感配置文件、通过内核漏洞提权、利用低权限用户目录下可被Root权限用户调用的脚本提权、任务计划等。
3.极强的隐蔽性
有些恶意网页脚本可以嵌套在正常网页中运行,且不容易被查杀。webshell还可以穿越服务器防火墙,由于与被控制的服务器或远程主机交互的数据都是通过80端口传递,因此不会被防火墙拦截,在没有记录流量的情况下,webshell使用post包发送,也不会被记录在系统日志中,只会在web日志中记录一些数据提交的记录。
网站如何防御webshell攻击?
从根本上解决动态网页脚本的安全问题,要做到防注入、防暴库、防COOKIES欺骗、防跨站攻击等等,务必配置好服务器FSO权限。
1、建议用户通过ftp来上传、维护网页,尽量不安装上传程序。
2、对上传程序的调用一定要进行身份认证,并只允许信任的人使用上传程序。
3、程序管理员的用户名和密码要有一定复杂性,不能过于简单,还要注意定期更换。
4、到正规网站下载程序,要对数据库名称和存放路径进行修改,数据库名称要有一定复杂性。
5、尽量保持程序是最新版本。
6、不要在网页上加注后台管理程序登陆页面的链接。
7、为防止程序有未知漏洞,可以在维护后删除后台管理程序的登陆页面,下次维护时再上传。
8、时常备份数据库等重要文件。
9、日常多维护,并注意空间中是否有来历不明的asp文件。
10、尽量关闭网站搜索功能,利用外部搜索工具,以防爆出数据。
11、利用白名单上传文件,不在白名单内的一律禁止上传,上传目录权限遵循最小权限原则。
6.社会工程学
信息安全在众多的人眼中是个神奇的东西,笔者觉的信息安全可以分为Soft Security和Hard Security 两个部分。所谓的"硬安全",主要就是具体的安全IT 技术(比如:防火墙、入侵检测、漏洞扫描、抗拒绝服务......),这些东西都是专家安全公司在搞,离绝大多数的读者可能比较遥远。而"软安全"主要涉及管理、心理学、文化、人际交往等方面,与具体的IT 技术可能没有关系。今天所说的"社会工程学",实际上就是"软安全",如果你看过电影《没有绝对的安全》的话,电影中主人公没有花一分钱搞到了肯德基的一份午餐就是利用社会工程学的典型例子。
通俗地讲,社会工程学就是:利用人性之中的弱点(贪婪、恐惧、性欲......)等心理学上的弱点来影响别人,最终达到自己不可告人的目的。
7.Exploit
Exploit 的英文意思就是利用,它在黑客眼里就是漏洞利用。有漏洞不一定就有Exploit(利用),有Exploit就肯定有漏洞。
我们几乎每隔几天就能听到最近有一个新发现的可以被利用(exploit)的漏洞(vulnerability),然后给这个漏洞打上补丁。而事实上,这里面的内容比你想象的要多,因为你不可能知道所有软件的漏洞,而且那些可利用的漏洞也只是被少数人所了解。
漏洞是存在于一个程序、算法或者协议中的错误,可能带来一定的安全问题。但不是所有的漏洞都是能够被利用来攻击(exploitable)的,理论上存在的漏洞,并不代表这个漏洞足以让攻击者去威胁你的系统。一个漏洞不能攻击一个系统,并不代表两个或多个漏洞组合就不能攻击一个系统。例如:空指针对象引用(null-pointer dereferencing)漏洞可以导致系统崩溃(如果想做拒绝服务攻击就足够了),但是如果组合另外一个漏洞,将空指针指向一个你存放数据的地址并执行,那么你可能就利用此来控制这个系统了。
一个利用程序(An exploit)就是一段通过触发一个漏洞(或者几个漏洞)进而控制目标系统的代码。攻击代码通常会释放攻击载荷(payload),里面包含了攻击者想要执行的代码。exploits利用代码可以在本地也可在远程进行。一个远程攻击利用允许攻击者远程操纵计算机,理想状态下能够执行任意代码。远程攻击对攻击者非常重 要,因为攻击者可以远程控制他/她的主机,不需要通过其它手段(让受害者访问网站,点击一个可执行文件,打开一个邮件附件等等),而本地攻击一般都是用来提升权限 [1]
8.APT攻击
APT是黑客以窃取核心资料为目的,针对客户所发动的网络攻击和侵袭行为,是一种蓄谋已久的"恶意商业间谍威胁"。这种行为往往经过长期的经营与策划,并具备高度的隐蔽性。APT的攻击手法,在于隐匿自己,针对特定对象,长期、有计划性和组织性地窃取数据,这种发生在数字空间的偷窃资料、搜集情报的行为,就是一种"网络间谍"的行为。
APT攻击是一个集合了多种常见攻击方式的综合攻击。综合多种攻击途径来尝试突破网络防御,通常是通过Web或电子邮件传递,利用应用程序或操作系统的漏洞,利用传统的网络保护机制无法提供统一的防御。除了使用多种途径,高级定向攻击还采用多个阶段穿透一个网络,然后提取有价值的信息,这使得它的攻击更不容易被发现。
四.网络安全的脆弱性以及常见的安全攻击----网络环境的开放性
1.协议栈自身的脆弱性
•缺乏数据源验证机制
•缺乏完整性验证机制
•缺乏机密性保障机制
随着互联网的不断发展,TCP/IP协议族成为使用最广泛的网络互连协议。但由于协议在设计之初对安全考虑的不够,导致协议存在着一些安全风险问题。Internet首先应用于研究环境,针对少量、可信的的用户群体,网络安全问题不是主要的考虑因素。因此,在TCP/IP协议栈中,绝大多数协议没有提供必要的安全机制,例如:
不提供认证服务
明码传输,不提供保密性服务,不提供数据保密性服务
不提供数据完整性保护
不提供抗抵赖服务
不保证可用性------服务质量( QoS )
2.常见安全风险
TCP/IP协议栈中各层都有自己的协议。由于这些协议在开发之初并未重点考虑安全因素,缺乏必要的安全机制。因此,针对这些协议的安全威胁及攻击行为越来越频繁,TCP/IP协议栈的安全问题也越来越凸显。
3.网络的基本攻击模式
4.物理层--物理攻击
•物理设备破坏
指攻击者直接破坏网络的各种物理设施,比如服务器设施,或者网络的传输通信设施等
设备破坏攻击的目的主要是为了中断网络服务
•物理设备窃听
光纤监听
红外监听
设备破坏攻击一般不会容易造成信息的泄密,但通常会造成网络通信服务的中断,通常是一种暴力的攻击手段。在日益强调网络服务的高可靠性的今天,设备破坏攻击是需要重点关注的。当然即使不是人为的故意破坏,针对各种自然条件下的物理损坏也是需要考虑的,比如中美海底通信光缆的被渔船挂断事故,台湾地震导致的海底光缆中断事故等。
5.链路层-- MAC洪泛攻击
•交换机中存在着一张记录着MAC地址的表,为了完成数据的快速转发,该表具有自动学习机制;
•泛洪攻击即是攻击者利用这种学习机制不断发送不同的MAC地址给交换机,填满整个MAC表,此时交换机只能进行数据广播,攻击者凭此获得信息。
通常情况下,交换机的每个端口只会连接一台主机,因而在MAC地址表中每个端口只会对应1个MAC地址。但由于交换机还要用于级联其它的交换机,因而在相应的级联端口上就会对应多个MAC地址,从而在地址表产生大量记录。
由于交换机的缓存有限,因此它所能够记忆的MAC地址数量也是有限的,所以交换机不会永久地记住所有的端口与MAC地址的对应关系。在端口/MAC地址映射表中每一项记录都被设定了一个自动老化时间,若某MAC地址在一定时间内(默认为300秒)不再出现,那么交换机将自动把该MAC地址从地址表中清除。当下一次该MAC地址重新出现时,将会被当作新地址处理,从而使交换机可以维护一个精确、有用的MAC地址表。交换机档次越低,交换机的缓存就越小,它能记住的MAC地址数也就越少。
6.链路层--ARP欺骗
当A与B需要通讯时:
A发送ARP Request询问B的MAC地址
Hacker冒充B持续发送ARP Reply给A(此时,A会以为接收到的MAC地址是B的,但是实际上是Hacker的)
之后A发送给B的正常数据包都会发给Hacker
二层的缺陷:
缺乏认证,不知道源地址是否合法
采用广播,任何人都可以拦截
不得不处理,这是硬伤
前面讲到MAC泛洪,使用这个方法会为网络带来大量垃圾数据报文,对于监听者来说也不是什么好事,很容易被发现,而且设计了端口保护的交换机可能会在超负荷时强行关闭所有端口造成网络中断。所以现在攻击者都偏向于使用地址解析协议ARP进行的欺骗性攻击。
ARP实现机制只考虑业务的正常交互,对非正常业务交互或恶意行为不做任何验证。比如当主机收到ARP响应包后,它并不会去验证自己是否发送过这个ARP请求,而是直接将应答包里的MAC地址与IP对应的关系替换掉原有的ARP缓存表。
在网络监听过程中,攻击者抢先合法主机B应答主机A发起的ARP请求;主机A被误导建立一个错误的映射并保存一段时间,在这段时间内,主机A发送给主机B的信息被误导致攻击者。如果攻击者持续抢先应答ARP请求,数据流就可能被一直误导下去。如果攻击者模拟网络出口路由器发动ARP攻击,内部网络的所有出口信息都将被接管。如果攻击者将出口路由器IP和一个不存在的MAC地址进行映射,即可以导致发送方受到拒绝服务的攻击
ARP欺骗不仅仅可以通过ARP请求来实现,通过ARP响应也可以实现。
使用静态ARP缓存
使用三层交换设备
IP 与MAC地址绑定
ARP防御工具
防范:
DAI:Dynamic ARP Inspenction动态ARP检查,检查主动式和非主动式ARP,确定是否来自真正的ARP所有者
DHCP Snooping:监听绑定表,IP、MAC、与特定的交换机端口相关联
静态绑定关键主机的IP地址与MAC地址映射关系
网关/关键服务器
"arp -s IP地址 MAC地址 类型"
使用VLAN虚拟子网细分网络拓扑
加密传输数据以降低ARP欺骗攻击的危害后果
使用相应的ARP防范工具: ARP防火墙
探测出网络中欺骗的ARP包
并保护主机的ARP缓存不受欺骗
7.网络层--ICMP攻击
ICMP重定向攻击
ICMP重定向报文是ICMP控制报文中的一种。在特定的情况下,当路由器检测到一台机器使用非优化路由的时候,它会向该主机发送一个ICMP重定向报文,请求主机改变路由,路由器也会把初始数据报向它的目的地转发。ICMP虽然不是路由协议,但是有时它也可以指导数据包的流向(使数据流向正确的网关)。ICMP协议通过ICMP重定向数据包(类型5、代码0:网络重定向)达到这个目的。
ICMP重定向攻击是攻击机主动向受害人主机发送ICMP重定向数据包,使受害人主机数据包发送到不正确的网关,达到攻击的目的。ICMP重定向攻击既可以从局域网内发起,也可以从广域网上发起。
针对ICMP重定向报文攻击,简单的办法就是通过修改注册表关闭主机的ICMP重定向报文处理功能。
ICMP不可达报文攻击
不同的系统对ICMP不可达报文(类型为3)的处理不同,有的系统在收到网络(代码为0)或主机(代码为1)不可达的ICMP报文后,对于后续发往此目的地的报文直接认为不可达,好像切断了目的地与主机的连接,造成攻击。
针对ICMP不可达攻击,简单的办法就是通过修改注册表关闭主机的ICMP不可达报文处理功能。
8.传输层--TCP SYN Flood攻击
SYN报文是TCP连接的第一个报文,攻击者通过大量发送SYN报文,造成大量未完全建立的TCP连接,占用被攻击者的资源。----拒绝服务攻击
SYN FLOODING攻击特点:
攻击者用带有 SYN 标志位的数据片断启动握手
受害者用 SYN-ACK 应答;
攻击者保持沉默 ,不进行回应;
由于主机只能支持数量有限的 TCP 连接处于 half-open 的状态,超过该数目后,新的连接就都会被拒绝 ;
目前的解决方法:
1,代理防火墙---每目标ip代理阈值,每目标IP丢包阈值
2,首包丢包
3,SYN cookie
什么是拒绝服务?
拒绝服务式攻击(Denial of Service),顾名思义就是让被攻击的系统无法正常进行服务的攻击方式。
拒绝服务攻击方式
利用系统、协议或服务的漏洞
利用TCP协议实现缺陷
利用操作系统或应用软件的漏洞
目标系统服务资源能力
利用大量数据挤占网络带宽
利用大量请求消耗系统性能
混合型
9.分布式拒绝服务攻击(DDoS)
什么是分布式拒绝服务攻击?
分布式拒绝服务攻击(Distributed Denial of Service,简称DDoS攻击)是一种恶意行为,旨在通过同时向目标系统发送大量的请求或网络流量,以使该系统无法正常提供服务。与传统的拒绝服务攻击(DoS攻击)不同,DDoS攻击利用分布在多个来源的多个计算机或设备,形成一个庞大的攻击网络,从而增加了攻击的规模和难度。
DDoS攻击的主要目标是使目标系统的网络带宽、计算资源或其他关键资源超负荷,导致系统无法响应合法用户的请求或服务中断。攻击者通常通过控制大量的僵尸计算机、感染的物联网设备或使用其他技术手段来构建攻击网络,然后发起协调一致的攻击。
DDoS攻击可能采用多种形式,包括网络层攻击(如UDP洪泛攻击、ICMP洪泛攻击)、传输层攻击(如SYN洪泛攻击、TCP连接攻击)和应用层攻击(如HTTP请求攻击、Slowloris攻击等)。攻击者通常会选择适合其目标系统的攻击形式,以最大程度地消耗目标系统的资源。
如何防御分布式拒绝服务攻击?
针对分布式拒绝服务攻击(DDoS攻击),以下是一些目前比较好的防御手段:
流量过滤和清洗:通过使用专业的DDoS防护设备或服务,对流入的网络流量进行实时监测、检测和过滤。这些设备可以识别并过滤掉恶意流量,只将合法的流量传递到目标系统,从而减轻攻击对系统的冲击。
高容量网络连接:确保目标系统具备足够的网络带宽和处理能力,以应对大规模的DDoS攻击。通过扩展网络连接或与云服务提供商合作,可以增加系统的容量和弹性,使其能够更好地吸收攻击流量。
负载均衡和弹性扩展:使用负载均衡技术将流量分散到多个服务器或系统上,以分担攻击流量的负荷。同时,采用弹性扩展策略,当攻击流量增加时,自动增加系统的资源以满足需求。
云服务和内容分发网络(CDN):将目标系统的服务部署在云平台或使用CDN服务,可以通过分布在全球各地的服务器节点来分散攻击流量,并提供更好的带宽和计算资源。
入侵检测和预防系统(IDS/IPS):部署IDS/IPS设备或服务可以实时监测和检测潜在的攻击流量,并采取相应的防御措施。这些系统可以通过识别异常流量模式或特征来快速响应和阻止攻击。
合同和服务级别协议(SLA):与网络服务提供商、云服务提供商或DDoS防护服务提供商建立合同和SLA,明确双方在DDoS攻击事件发生时的责任和应对措施,确保及时响应和支持。
反射放大攻击防范:关闭可能被滥用的网络协议或服务(如DNS、NTP)的放大器功能,限制公开访问的接口,加强网络设备的安全配置,阻止源地址欺骗等措施可以减少反射放大攻击的效果。
10.DDoS攻击风险防护方案
网络设备性能充裕:防火墙、路由器、交换机性能必须有富余防火墙、路由器、交换机性能必须有富余
网络带宽资源充裕:保持一定比例的网络带宽余量
异常流量清洗:通过抗D设备清洗异常流量
通过CDN分流:多节点分担DDoS攻击流量(cdn,我理解其本质就是为了解决距离远产生的速度问题,使用就近的服务。)
分布式集群:每个节点分配足够资源数据回发瘫痪攻击源
11.应用层--DNS欺骗攻击
五.操作系统的脆弱性及常见的攻击
1.操作系统自身的漏洞
人为原因
在程序编写过程中,为实现不可告人的目的,在程序代码的隐藏处保留后门。
客观原因
受编程人员的能力,经验和当时安全技术所限,在程序中难免会有不足之处,轻则影响程序效率,重则导致非授权用户的权限提升。
硬件原因
由于硬件原因,使编程人员无法弥补硬件的漏洞,从而使硬件的问题通过软件表现。
操作系统是硬件和软件应用程序之间的接口的模块,它是整个网络信息系统的核心控制软件.系统的安全性体现在整个操作系统之中.对于一个设计上不够安全的操作系统,事后采用增加安全特性或打补丁的办法是一项很艰巨的任务.
计算机科学与工程的发展相比于其它行业还处于非常原始的阶段。大型的软件工程,像是用火柴棍搭摩天大楼。即使耗费大量人力物力,用各种手段进行验证与测试,也很难保证其可靠性和稳定性。发展和进步需要时间的。
2.缓冲区溢出攻击
2.缓冲区溢出攻击原理
缓冲区溢出攻击利用编写不够严谨的程序,通过向程序的缓冲区写入超过预定长度的数据,造成缓存的溢出,从而破坏程序的堆栈,导致程序执行流程的改变
缓冲区溢出的危害
最大数量的漏洞类型
漏洞危害等级高
缓冲区是内存中存放数据的地方。在程序试图将数据放到机器内存中的某一个位置的时候,因为没有足够的空间就会发生缓冲区溢出。而人为的溢出则是有一定企图的,攻击者写一个超过缓冲区长度的字符串,植入到缓冲区,然后再向一个有限空间的缓冲区中植入超长的字符串,这时可能会出现两个结果:一是过长的字符串覆盖了相邻的存储单元,引起程序运行失败,严重的可导致系统崩溃;另一个结果就是利用这种漏洞可以执行任意指令,甚至可以取得系统root特级权限。
攻击软件系统的行为中,最常见的一种方法
可以从本地实施,也可以从远端实施
利用软件系统(操作系统,网络服务,应用程序)实现中对内存操作的缺陷,以高操作权限运行攻击代码
漏洞与操作系统和体系结构相关,需要攻击者有较高的知识/技巧
3.缓冲区溢出攻击过程及防御
如果可精确控制内存跳转地址,就可以执行指定代码,获得权限或破坏系统
六.信息安全的要素
1.信息安全的五要素
• 保密性---confidentiality
对抗对手的被动攻击,保证信息不泄漏给未经授权的人,或者即便数据被截获,其所表达的信息也不被非授权者所理解。确保信息不暴露给未授权的实体或进程。加密机制。防泄密
• 完整性---integrity
对抗对手主动攻击,防止信息被未经授权的篡改。只有得到允许的人才能修改实体或进程,并且能够判别出实体或进程是否已被修改。完整性鉴别机制,保证只有得到允许的人才能修改数据 。防篡改
• 可用性---availability
确保信息及信息系统能够为授权使用者所正常使用,得到授权的实体可获得服务,攻击者不能占用所有的资源而阻碍授权者的工作。用访问控制机制,阻止非授权用户进入网络 。使静态信息可见,动态信息可操作。 防中断
以上三个重要的基本属性被国外学者称为"信息安全金三角"(CIA,Confidentiality-Integrity-Availability)
• 可控性---controllability
可控性主要指对危害国家信息(包括利用加密的非法通信活动)的监视审计。控制授权范围内的信息流向及行为方式。使用授权机制,控制信息传播范围、内容,必要时能恢复密钥,实现对网络资源及信息的可控性。
• 不可否认性---Non-repudiation
对出现的安全问题提供调查的依据和手段。使用审计、监控、防抵赖等安全机制,使得攻击者、破坏者、抵赖者"逃不脱",并进一步对网络出现的安全问题提供调查依据和手段,实现信息安全的可审查性。
七.恶意程序具备的特性
1,非法性
2,隐蔽性
3,潜伏性
4,可触发性
5,表现性
6,破坏性
7,传染性 --- 蠕虫病毒的典型特点
8,针对性
9,变异性
10,不可预见性
病毒的分类:
各种病毒的特性:
普通病毒 --- 以破坏为目的的病毒
木马病毒 --- 以控制为目的的病毒
蠕虫病毒 --- 具有传播性的病毒
八.勒索病毒
定义: 一种恶意程序,可以感染设备、网络与数据中心并使其瘫痪,直至用户支付赎金使系统解锁。
特点: 调用加密算法库、通过脚本文件进行Http请求、通过脚本文件下载文件、读取远程服务器文件、通过wscript执行文件、收集计算机信息、遍历文件。
危害: 勒索病毒会将电脑中的各类文档进行加密,让用户无法打开,并弹窗限时勒索付款提示信息,如果用户未在指定时间缴纳黑客要求的金额,被锁文件将永远无法恢复。
勒索病毒工作原理
勒索病毒文件一旦进入被攻击者本地,就会自动运行,同时删除勒病毒母体,以躲避查杀、分析和追踪(变异速度快,对常规的杀毒软件都具有免疫性)。接下来利用权限连接黑客的服务器,上传本机信息并下载加密私钥与公钥,利用私钥和公钥对文件进行加密(先使用 AES-128 加密算法把电脑上的重要文件加密,得到一个密钥;再使用 RSA-2048 的加密算法把这个密钥进行非对称加密。)。除了病毒开发者本人,其他人是几乎不可能解密。如果想使用计算机暴力破解,根据目前的计算能力,几十年都算不出来。如果能算出来,也仅仅是解开了一个文件。(当然,理论上来说,也可以尝试破解被 RSA-2048 算法加密的总密钥,至于破解所需要的时间,恐怕地球撑不到那个时候。)加密完成后,还会锁定屏幕,修改壁纸,在桌面等显眼的位置生成勒索提示文件,指导用户去缴纳赎金。
如何防勒索病毒?
青铜段位
不要打开陌生人或来历不明的邮件,防勒索病毒通过邮件的攻击;
需要的软件从正规(官网)途径下载;
升级杀毒软件到最新版本,阻止已存在的病毒样本攻击;
Win7、Win 8.1、Win 10用户,尽快安装微软MS17-010的官方补丁;
定期异地备份计算机中重要的数据和文件,万一中病毒可以进行恢复;
定期进行安全培训,日常安全管理可参考"三不三要"(三不:不上钩、不打开、不点击。三要:要备份、要确认、要更新)思路。
钻石段位
物理,网络隔离染毒机器;
对于内网其他未中毒电脑,排查系统安全隐患:
a)系统和软件是否存在漏洞
b)是否开启了共享及风险服务或端口,如135、137、139、445、3389
c)只允许办公电脑,访问专门的文件服务器。使用FTP,替代文件夹共享。
d)检查机器ipc空连接及默认共享是否开启
e)检查是否使用了统一登录密码或者弱密码
尽量不要点击office宏运行提示,避免来自office组件的病毒感染;
尽量不要双击打开.js、.vbs等后缀名文件;
事后处理
在无法直接获得安全专业人员支持的情况下,可考虑如下措施:
通过管家勒索病毒搜索引擎搜索,获取病毒相关信息。搜索引擎地址(勒索病毒拦截|文件恢复_文档守护者保护文档安全 - 腾讯电脑管家
若支持解密,可直接点击下载工具对文件进行解密
王者段位
在如何防勒索病毒这个话题中,人们常规的防御思维综上所述。虽然没什么毛病,但怎么看都像是"坐以待毙",被动挨打。不过也无可厚非,毕竟见招拆招是惯性思维。
正确的防勒索病毒手段,一定是以不变应万变。
举个栗子:
农场主养了一群羊,毛发油亮,膘肥体壮,卖相极好,农场主甚是欣慰。
有一天农场主发现少了几只羊,还发现了狼的踪迹,便明白了有狼偷羊。
农场主跟踪狼的踪迹,设置陷阱,日夜监督,身心俱疲,但还是没有捉到狼,羊的数量还在减少。
最后,农场主把茅草的羊圈换成了花岗岩羊圈,羊再也没少过,农场主也再也不用去寻找狼。
主机加固的概念便是如此。
所以如何防勒索病毒,主机加固的思路才是良策。
主机加固的核心要点:
系统加固
将调试好的系统锁定,变成可信系统。
在可信系统下,非法程序、脚本都无法运行。而且不会影响数据进出。
即使系统有漏洞,甚至管理员权限丢失,这个可信系统都是安全的。
程序加固
采用可信签名方式对可执行程序、脚本的启动进行实时的hash值校验,校验不通过
拒绝启动,并且可信程序无法被伪装。
文件加固
保护指定类型的文件不被篡改。
磁盘加密
创建安全沙盒,该沙盒对外隔离,对沙盒内的数据进行加密,确保数据只能在授权管理有效前提下,才能被解密。如果没有授权,即使管理员也无法拷贝使用这些数据,即使系统克隆也无效。
数据库加固
第一层:数据库文件禁止陌生程序访问和篡改。确保数据库文件级安全。
第二层:数据库端口访问可信过滤,只允许业务程序进行数据库端口通信连接,在连
接字符串的IP+端口+账号密码中,追加进程身份识别。
第三层:数据库连接SQL文进行智能过滤,防止关键数据被检索和访问,防止数据库
内数据被非法访问,防止数据库表单的危险操作行为。
九.其他病毒
1.挖矿病毒
定义: 一种恶意程序,可自动传播,在未授权的情况下,占用系统资源,为攻击者谋利,使得受害者机器性能明显下降,影响正常使用。
特点: 占用CPU或GPU等计算资源、自动建立后门、创建混淆进程、定期改变进程名与PID、扫描ssh文件感染其他机器。
危害:占用系统资源、影响系统正常使用。
2.特洛伊木马
定义: 完整的木马程序一般由两个部份组成:服务器程序与控制器程序。 "中了木马"就是指安装了木马的服务器程序,若你的电脑被安装了服务器程序,则拥有控制器程序的人就可以通过网络控制装有服务器程序的电脑。
特点: 注入正常程序中,当用户执行正常程序时,启动自身。 自动在任务管理器中隐藏,并以"系统服务"的方式欺骗操作系统。包含具有未公开并且可能产生危险后果的功能的程序。具备自动恢复功能且打开特殊端口。
危害:个人隐私数据泄露,占用系统资源
3.蠕虫病毒
定义: 蠕虫是一种可以自我复制的代码,并且通过网络传播,通常无需人为干预就能传播。蠕虫病毒入侵并完全控制一台计算机之后,就会把这台机器作为宿主,进而扫描并感染其他计算机。
特点: 不依赖宿主程序、利用漏洞主动攻击、通过蠕虫网络隐藏攻击者的位置。
危害:拒绝服务、隐私信息丢失
4.宏病毒
定义: 宏病毒是一种寄存在文档或模板的宏中的计算机病毒。
特点: 感染文档、传播速度极快、病毒制作周期短、多平台交叉感染
危害:
感染了宏病毒的文档不能正常打印。
封闭或改变文件存储路径,将文件改名。
非法复制文件,封闭有关菜单,文件无法正常编辑。
调用系统命令,造成系统破坏。
5.流氓软件/间谍软件
定义: 流氓软件是指在未明确提示用户或未经用户许可的情况下,在用户计算机或其他终端上安装运行,侵害用户合法权益的软件,但不包含中国法律法规规定的计算机病毒。 间谍软件是一种能够在用户不知情的情况下,在其电脑上安装后门、收集用户信息的软件。它能够削弱用户对其使用经验、隐私和系统安全的物质控制能力。
特点: 强制安装、难以卸载、浏览器劫持、广告弹出、恶意收集用户信息、恶意卸载、恶意捆绑、恶意安装等。
危害: 窃取隐私,影响用户使用体验。
6.僵尸网络
定义: 采用一种或多种传播手段,将大量主机感染僵尸程序,从而在控制者和被感染主机之间所形成的一个可一对多控制的网络。 僵尸程序:指实现恶意控制功能的程序代码; 控制服务器:指控制和通信(C&C)的中心服务器
特点: 可控制的网络,这个网络并不是指物理意义上具有拓扑结构的网络,它具 有一定的分布性,随着bot程序的不断传播而不断有新位置的僵尸计算机添加到这个网络中来,可以一对多地执行相同的恶意行为。
危害: 拒绝服务攻击;发送垃圾邮件;窃取秘密;滥用资源;僵尸网络挖矿
十.其他常见攻击
1.社工攻击
原理: 社会工程攻击,是一种利用"社会工程学" 来实施的网络攻击行为。 在计算机科学中,社会工程学指的是通过与他人的合法地交流,来使其心理受到影响,做出某些动作或者是透露一些机密信息的方式。这通常被认为是一种欺诈他人以收集信息、行骗和入侵计算机系统的行为。
防御手段: 定期更换各种系统账号密码,使用高强度密码等。
2.人为因素
无意的行为 工作失误------如按错按钮; 经验问题------不是每个人都能成为系统管理员,因此并不了解贸然运行一个不知作用的程序时会怎么样; 体制不健全------当好心把自己的账号告诉朋友时,你却无法了解他会如何使用这一礼物;
恶意的行为 出于政治的、经济的、商业的、或者个人的目的 病毒及破坏性程序、网络黑客 在Internet上大量公开的攻击手段和攻击程序
3.拖库、洗库、撞库
原理: 拖库:是指黑客入侵有价值的网络站点,把注册用户的资料数据库全部盗走的行为。 洗库:在取得大量的用户数据之后,黑客会通过一系列的技术手段和黑色产业链将有价值的用户数据变现,这通常也被称作洗库。 最后黑客将得到的数据在其它网站上进行尝试登陆,叫做撞库,因为很多用户喜欢使用统一的用户名密码。
防御手段: 重要网站/APP的密码一定要独立 、电脑勤打补丁,安装一款杀毒软件、尽量不使用IE浏览器、使用正版软件、不要在公共场合使用公共无线做有关私密信息的事、自己的无线AP,用安全的加密方式(如WPA2),密码复杂些、电脑习惯锁屏等。
4.跳板攻击
原理: 攻击者通常并不直接从自己的系统向目标发动攻击,而是先攻破若干中间系统,让它们成为"跳板",再通过这些"跳板"完成攻击行动。 跳板攻击就是通过他人的计算机攻击目标.通过跳板实施攻击。
防御手段: 安装防火墙,控制流量进出。系统默认不使用超级管理员用户登录,使用普通用户登录,且做好权限控制。
5. 钓鱼式攻击/鱼叉式钓鱼攻击
原理: 钓鱼式攻击是一种企图从电子通讯中,通过伪装成信誉卓著的法人媒体以获得如用户名、密码和信用卡明细等个人敏感信息的犯罪诈骗过程。 鱼叉式网络钓鱼指针对特定目标进行攻击的网络钓鱼攻击。
防御手段: 保证网络站点与用户之间的安全传输,加强网络站点的认证过程,即时清除网钓邮件,加强网络站点的监管。
6.水坑攻击
原理: 攻击者首先通过猜测(或观察)确定特定目标经常访问的网站,并入侵其中一个或多个网站,植入恶意软件。最后,达到感染目标的目的。
防御手段: 在浏览器或其他软件上,通常会通过零日漏洞感染网站。 针对已知漏洞的防御措施是应用最新的软件修补程序来消除允许该网站受到感染的漏洞。用户监控可以帮助确保他们的所有软件都运行最新版本。 如果恶意内容被检测到,运维人员可以监控他们的网站和网络,然后阻止流量。