本文目录一览:
- 1、软件供应链安全及防护工具研究
- 2、哪位大神有Burp Suite(抓包软件) V2021 中文版软件百度云资源
- 3、2021面试网络工程师的题目
- 4、网络安全之一个渗透测试小案例
- 5、网络安全之DOS攻击
- 6、2021勒索病毒大盘点
软件供应链安全及防护工具研究
文 中国信息通信研究院云计算与大数据研究所云计算部工程师 吴江伟
随着 5G、云计算、人工智能、大数据、区块链等技术的日新月异,数字化转型进程逐步推进,软件已经成为日常生产生活必备要素之一,渗透到各个行业和领域。容器、中间件、微服务等技术的演进推动软件行业快速发展,同时带来软件设计开发复杂度不断提升,软件供应链也愈发复杂,全链路安全防护难度不断加大。近年来,软件供应链安全事件频发,对于用户隐私、财产安全乃至国家安全造成重大威胁,自动化安全工具是进行软件供应链安全防御的必要方式之一,针对软件供应链安全及工具进行研究意义重大,对于维护国家网络空间安全,保护用户隐私、财产安全作用深远。
一、软件供应链安全综述
软件供应链定义由传统供应链的概念延伸扩展而来。业界普遍认为,软件供应链指一个通过一级或多级软件设计、开发阶段编写软件,并通过软件交付渠道将软件从软件供应商送往软件用户的系统。软件供应链安全指软件供应链上软件设计与开发的各个阶段中来自本身的编码过程、工具、设备或供应链上游的代码、模块和服务的安全,以及软件交付渠道安全的总和。软件供应链攻击具有低成本、高效率的特点,根据其定义可知,相比传统针对软件自身安全漏洞的攻击,针对软件供应链,受攻击面由软件自身扩展为了软件自身内部的所有代码、模块和服务及与这些模块、服务相关的供应链上游供应商的编码过程、开发工具、设备,显著降低了攻击者的攻击难度。同时,软件设计和开发所产生的任何安全问题都会直接影响供应链中所有下游软件的安全,扩大了攻击所造成的影响。
近年来,软件自身安全防御力度不断加大,攻击者把攻击目标由目标软件转移到软件供应链最薄弱的环节,软件供应链安全事件频发,对用户隐私及财产安全乃至国家安全造成重大威胁。最典型的如 2020 年 12 月,美国网络安全管理软件供应商“太阳风”公司(SolarWinds)遭遇国家级 APT 组织高度复杂的供应链攻击,直接导致包括美国关键基础设施、军队、政府等在内的超过 18000 家客户全部受到影响,可任由攻击者完全操控。
软件供应链安全影响重大,各国高度重视,纷纷推行政策法规推动软件供应链安全保护工作。2021 年 5 月 12 日,美国总统拜登签署发布《改善国家网络安全行政令》,明确提出改善软件供应链安全,要求为出售给政府的软件开发建立基线安全标准,不仅提供应用程序,而且还必须提供软件物料清单,提升组成该应用程序组件的透明度,构建更有弹性且安全的软件供应链环境,确保美国的国家安全。同年 7 月,美国国家标准与技术所(NIST)发布《开发者软件验证最低标准指南》,为加强软件供应链安全加码,明确提出关于软件验证的 11 条建议,包括一致性自动化测试,将手动测试最少化,利用静态代码扫描查找重要漏洞,解决被包含代码(库、程序包、服务)等。
我国对软件供应链安全问题也给予了高度重视,2017 年 6 月,我国发布实施《网络产品和服务安全审查办法》,将软件产品测试、交付、技术支持过程中的供应链安全风险作为重点审查内容。2019 年12 月 1 日,《信息安全技术 网络安全等级保护基本要求》2.0 版本正式实施,在通用要求及云计算扩展部分明确要求服务供应商选择及供应链管理。
二、软件供应链安全挑战
目前,软件供应链安全受到高度重视,但仍面临多重现实挑战,可以总结分为以下五大类。
1. 软件设计开发复杂化成为必然趋势
随着容器、中间件、微服务等新技术的演进,软件行业快速发展,软件功能及性能需求也不断提升,软件设计开发复杂化已经成为必然趋势。这一现状同时带来了软件设计、开发及维护难度陡增,设计与开发过程不可避免的产生安全漏洞,为软件供应链安全埋下隐患。
2. 开源成为主流开发模式
当前,开源已经成为主流开发模式之一,软件的源代码大多数是混源代码,由企业自主开发的源代码和开源代码共同组成。根据新思 科技 《2021 年开源安全和风险分析》报告显示,近 5 年,开源代码在应用程序中所占比例由 40% 增至超过 70%。开源的引入加快了软件的研发效率,但同时也将开源软件的安全问题引入了软件供应链,导致软件供应链安全问题多元化。
3. 快速交付位于第一优先级
由于业界竞争环境激烈,相较于安全,功能快速实现,软件快速交付仍处于第一优先级,虽然软件通常实现了安全的基本功能需求,如身份认证鉴权、加解密、日志安全审计等,但整体安全防护机制相对滞后,以后期防护为主,前期自身安全性同步建设往往被忽视,软件自身代码安全漏洞前期清除存在短板。
4. 软件交付机制面临安全隐患
软件交付指软件由软件供应商转移到软件用户的过程。传统软件交付以光盘等存储设备为载体,随着互联网等技术的发展,通过网络对于软件进行快速分发已经成为基本模式,不安全的分发渠道同样会对软件供应链安全产生重大影响。
5. 使用时软件补丁网站攻击
针对软件供应链安全防护,软件的生命周期并非结束于软件交付之后,而是直到软件停用下线。软件在设计及开发过程中难免存在安全缺陷,通过补丁下发部署是修复软件缺陷漏洞的最通用方式。软件补丁的下发部署同样受分发渠道影响,受污染的补丁下载站点同样会造成软件供应链安全问题。
三、软件供应链安全防护工具
软件供应链安全涉及众多元素及环节,参考业界常见划分,软件供应链环节可抽象成开发环节、交付环节、使用环节三部分。针对交付环节及使用环节安全防护,主要通过确保分发站点及传输渠道安全。开发环节与软件源代码紧密相关,安全防护较为复杂,囊括编码过程、工具、设备及供应链上游的代码、模块和服务的安全,涉及四类安全工具,包括软件生产过程中的工具和软件供应链管理工具。
1. 静态应用程序安全测试工具
静态应用程序安全测试(SAST)是指不运行被测程序本身,仅通过分析或者检查源程序的语法、结构、过程、接口等来检查程序的正确性。源代码静态分析技术的发展与编译技术和计算机硬件设备的进步息息相关,源代码安全分析技术多是在编译技术或程序验证技术的基础上提出的,利用此类技术能够自动地发现代码中的安全缺陷和违背安全规则的情况。目前,主流分析技术包括:(1)词法分析技术,只对代码的文本或 Token 流与已知归纳好的缺陷模式进行相似匹配,不深入分析代码的语义和代码上下文。词法分析检测效率较高,但是只能找到简单的缺陷,并且误报率较高。(2)抽象解释技术,用于证明某段代码没有错误,但不保证报告错误的真实性。该技术的基本原理是将程序变量的值映射到更加简单的抽象域上并模拟程序的执行情况。因此,该技术的精度和性能取决于抽象域对真实程序值域的近似情况。(3)程序模拟技术,模拟程序执行得到所有执行状态,分析结果较为精确,主要用于查找逻辑复杂和触发条件苛刻的缺陷,但性能提高难度大。主要包括模型检查和符号执行两种技术,模型检查将软件构造为状态机或者有向图等抽象模型,并使用模态/时序逻辑公式等形式化的表达式来描述安全属性,对模型遍历验证这些属性是否满足;符号执行使用符号值表示程序变量值,并模拟程序的执行来查找满足漏洞检测规则的情况。(4)定理证明技术,将程序错误的前提和程序本身描述成一组逻辑表达式,然后基于可满足性理论并利用约束求解器求得可能导致程序错误的执行路径。该方法较为灵活性,能够使用逻辑公式方便地描述软件缺陷,并可根据分析性能和精度的不同要求调整约束条件,对于大型工业级软件的分析较为有效。(5)数据流分析技术,基于控制流图,按照某种方式扫面控制流图的每一条指令,试图理解指令行为,以此判断程序中存在的威胁漏洞。数据流分析的通用方法是在控制流图上定义一组方程并迭代求解,一般分为正向传播和逆向传播,正向传播就是沿着控制流路径,状态向前传递,前驱块的值传到后继块;逆向传播就是逆着控制流路径,后继块的值反向传给前驱块。
2. 动态应用程序安全测试工具
动态应用程序安全测试(DAST)技术在测试或运行阶段分析应用程序的动态运行状态。它模拟黑客行为对应用程序进行动态攻击,分析应用程序的反应,从而确定该应用是否易受攻击。以 Web 网站测试为例对动态应用程序安全测试进行介绍,主要包括三个方面的内容:(1)信息收集。测试开始前,收集待测试网站的全部 URL,包括静态资源和动态接口等,每一条 URL 需要包含路径和完整的参数信息。(2)测试过程。测试人员将测试所需的 URL列表导入到测试工具中。测试工具提供“检测风险项”的选择列表,测试人员可根据测试计划选择不同的风险检测项。测试工具在测试过程中,对访问目标网站的速度进行控制,保证目标网站不会因为同一时刻的请求数过高,导致网站响应变慢或崩溃。测试人员在设定测试任务的基本信息时,根据目标网站的性能情况填入“每秒请求数”的最大值。测试工具在测试过程中保证每秒发送请求的总数不超过该数值。(3)测试报告。在安全测试各步骤都完成后,输出测试报告。测试报告一般包含总览页面,内容包括根据测试过程产生的各种数据,输出目标网站安全性的概要性结论;测试过程发现的总漏洞数,以及按照不同安全等级维度进行统计的漏洞数据。
3. 交互式应用程序安全测试工具
交互式应用程序安全测试(IAST)通过插桩技术,基于请求及运行时上下文综合分析,高效、准确地识别安全缺陷及漏洞,确定安全缺陷及漏洞所在的代码位置,主要在三方面做工作:流量采集、Agent监控、交互扫描。(1)流量采集,指采集应用程序测试过程中的 HTTP/HTTPS 请求流量,采集可以通过代理层或者服务端 Agent。采集到的流量是测试人员提交的带有授权信息有效数据,能够最大程度避免传统扫描中因为测试目标权限问题、多步骤问题导致扫描无效;同时,流量采集可以省去爬虫功能,避免测试目标爬虫无法爬取到导致的扫描漏水问题。(2)Agent 监控,指部署在 Web 服务端的 Agent 程序,一般是 Web 服务编程语言的扩展程序,Agent通过扩展程序监控 Web 应用程序性运行时的函数执行,包括 SQL 查询函数、命令执行函数、代码执行函数、反序列化函数、文件操作函数、网络操作函数,以及 XML 解析函数等有可能触发漏洞利用的敏感函数。(3)交互扫描,指 Web 应用漏洞扫描器通过Agent 监控辅助,只需要重放少量采集到的请求流量,且重放时附带扫描器标记,即可完成对 Web 应用程序漏洞的检测。例如,在检测 SQL 注入漏洞时,单个参数检测,知名开源 SQL 注入检测程序 SQLMAP需要发送上千个 HTTP 请求数据包;交互扫描只需要重放一个请求,附带上扫描器标记,Agent 监控SQL 查询函数中的扫描器标记,即可判断是否存在漏洞,大大减少了扫描发包量。
4. 软件组成分析软件组成分析
(SCA)主要针对开源组件,通过扫描识别开源组件,获取组件安全漏洞信息、许可证等信息,避免安全与法律法规风险。现有的开源组成扫描技术分为五种。(1)通过进行源代码片段式比对来识别组件并识别许可证类型。(2)对文件级别提取哈希值,进行文件级哈希值比对,若全部文件哈希值全部匹配成功则开源组件被识别。(3)通过扫描包配置文件读取信息,进行组件识别从而识别组件并识别许可证类型。(4)对开源项目的文件目录和结构进行解析,分析开源组件路径和开源组件依赖。(5)通过编译开源项目并对编译后的开源项目进行依赖分析,这种方式可以识别用在开源项目中的开源组件信息。
四、软件供应链安全研究建议
1. 发展软件安全工具相关技术
软件供应链安全防护的落地离不开安全工具的发展使用。大力发展软件安全工具技术,解决安全开发难点需求,进行安全前置,实现安全保护措施与软件设计、开发同步推进。
2. 提升软件供应链安全事件的防护、检测和响应能力
软件供应链安全防护需要事前、事中、事后的全方位安全防御体系。软件供应链安全攻击事件具有隐蔽性高、传播性强、影响程度深的特点,软件供应链作为一个复杂、庞大的系统,难免存在脆弱节点,应提升对软件供应链安全攻击事件的防护、检测和响应能力,避免安全事件造成重大影响。
3. 构建完善软件供应链安全相关标准体系
通过科研院所及标准机构完善软件供应链安全标准体系,普及软件供应链安全防范意识,提升企业组织对软件供应链安全的重视程度,进行软件供应链安全投入,推进安全建设工作落实。
4. 建立软件供应链安全可信生态
实现软件供应链安全需要各领域企业的共同努力。企业共建安全可信生态将满足不同用户、不同行业、不同场景的安全可信需求,提升业界整体软件供应链安全水平。
(本文刊登于《中国信息安全》杂志2021年第10期)
哪位大神有Burp Suite(抓包软件) V2021 中文版软件百度云资源
链接:
提取码:dacu
软件名称:BurpSuite(抓包软件)V2021中文版
语言:简体中文
大小:190.23MB
类别:系统工具
介绍:BurpSuite是一款强大专业的抓包渗透测试软件,它采用了最新的抓包扫描技术。BurpSuite使得用户可以快速使用它进行渗透测试,这样电脑所有的漏洞就能够被用户知悉,再进行有针对性地解决,最终达到不断提高系统安全的目的。除了查找漏洞,它还可以测试项目,为用户提供合理的建议。
2021面试网络工程师的题目
面试 的目的是确定面试者如何处理他们所选择的研究领域的问题,以及他们如何批判性地思考问题。下面我给大家带来2021面试网络工程师的题目参考,希望能帮助到大家!
Java多线程 面试题 目
1、什么是线程?
线程是 操作系统 能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。
2、线程和进程有什么区别?
线程是进程的子集,一个进程可以有很多线程,每条线程并行执行不同的任务。不同的进程使用不同的内存空间,而所有的线程共享一片相同的内存空间。每个线程都拥有单独的栈内存用来存储本地数据。
3、如何在Java中实现线程?
两种方式:java.lang.Thread 类的实例就是一个线程但是它需要调用java.lang.Runnable接口来执行,由于线程类本身就是调用的Runnable接口所以你可以继承java.lang.Thread 类或者直接调用Runnable接口来重写run() 方法 实现线程。
4、Java 关键字volatile 与 synchronized 作用与区别?
Volatile:
它所修饰的变量不保留拷贝,直接访问主内存中的。
在Java内存模型中,有main memory,每个线程也有自己的memory (例如寄存器)。为了性能,一个线程会在自己的memory中保持要访问的变量的副本。这样就会出现同一个变量在某个瞬间,在一个线程的memory中的值可能与另外一个线程memory中的值,或者main memory中的值不一致的情况。 一个变量声明为volatile,就意味着这个变量是随时会被其他线程修改的,因此不能将它cache在线程memory中。
synchronized:
当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。
一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。
二、然而,当一个线程访问object的一个synchronized(this)同步代码块时,另一个线程仍然可以访问该object中的非synchronized(this)同步代码块。
三、尤其关键的是,当一个线程访问object的一个synchronized(this)同步代码块时,其他线程对object中所有 其它 synchronized(this)同步代码块的访问将被阻塞。
四、当一个线程访问object的一个synchronized(this)同步代码块时,它就获得了这个object的对象锁。结果,其它线程对该object对象所有同步代码部分的访问都被暂时阻塞。
五、以上规则对其它对象锁同样适用。
5、有哪些不同的线程生命周期?
当我们在Java程序中新建一个线程时,它的状态是New。当我们调用线程的start()方法时,状态被改变为Runnable。线程调度器会为Runnable线程池中的线程分配CPU时间并且讲它们的状态改变为Running。其他的线程状态还有Waiting,Blocked 和Dead。
6、你对线程优先级的理解是什么?
每一个线程都是有优先级的,一般来说,高优先级的线程在运行时会具有优先权,但这依赖于线程调度的实现,这个实现是和操作系统相关的(OS dependent)。
我们可以定义线程的优先级,但是这并不能保证高优先级的线程会在低优先级的线程前执行。线程优先级是一个int变量(从1-10),1代表最低优先级,10代表最高优先级。
7、什么是死锁(Deadlock)?如何分析和避免死锁?
死锁是指两个以上的线程永远阻塞的情况,这种情况产生至少需要两个以上的线程和两个以上的资源。
分析死锁,我们需要查看Java应用程序的线程转储。我们需要找出那些状态为BLOCKED的线程和他们等待的资源。每个资源都有一个唯一的id,用这个id我们可以找出哪些线程已经拥有了它的对象锁。
避免嵌套锁,只在需要的地方使用锁和避免无限期等待是避免死锁的通常办法。
8、什么是线程安全?Vector是一个线程安全类吗?
如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。
一个线程安全的计数器类的同一个实例对象在被多个线程使用的情况下也不会出现计算失误。很显然你可以将集合类分成两组,线程安全和非线程安全的。Vector 是用同步方法来实现线程安全的, 而和它相似的ArrayList不是线程安全的。
9、Java中如何停止一个线程?
Java提供了很丰富的API但没有为停止线程提供API。JDK 1.0本来有一些像stop(), suspend()和resume()的控制方法但是由于潜在的死锁威胁因此在后续的JDK版本中他们被弃用了,之后Java API的设计者就没有提供一个兼容且线程安全的方法来停止一个线程。
当run()或者 call()方法执行完的时候线程会自动结束,如果要手动结束一个线程,你可以用volatile 布尔变量来退出run()方法的循环或者是取消任务来中断线程。
10、什么是ThreadLocal?
ThreadLocal用于创建线程的本地变量,我们知道一个对象的所有线程会共享它的全局变量,所以这些变量不是线程安全的,我们可以使用同步技术。但是当我们不想使用同步的时候,我们可以选择ThreadLocal变量。
每个线程都会拥有他们自己的Thread变量,它们可以使用get()set()方法去获取他们的默认值或者在线程内部改变他们的值。ThreadLocal实例通常是希望它们同线程状态关联起来是private static属性。
Kubernetes面试题汇总
1、什么是Kubernetes?
Kubernetes是一个开源容器管理工具,负责容器部署,容器扩缩容以及负载平衡。作为Google的创意之作,它提供了出色的社区,并与所有云提供商合作。因此,我们可以说Kubernetes不是一个容器化平台,而是一个多容器管理解决方案。
2、Kubernetes与Docker有什么关系?
众所周知,Docker提供容器的生命周期管理,Docker镜像构建运行时容器。但是,由于这些单独的容器必须通信,因此使用Kubernetes。因此,我们说Docker构建容器,这些容器通过Kubernetes相互通信。因此,可以使用Kubernetes手动关联和编排在多个主机上运行的容器。
3、什么是Container Orchestration?
考虑一个应用程序有5-6个微服务的场景。现在,这些微服务被放在单独的容器中,但如果没有容器编排就无法进行通信。因此,由于编排意味着所有乐器在音乐中和谐共处,所以类似的容器编排意味着各个容器中的所有服务协同工作以满足单个服务器的需求。
4、Kubernetes如何简化容器化部署?
由于典型应用程序将具有跨多个主机运行的容器集群,因此所有这些容器都需要相互通信。因此,要做到这一点,你需要一些能够负载平衡,扩展和监控容器的东西。由于Kubernetes与云无关并且可以在任何公共/私有提供商上运行,因此必须是您简化容器化部署的选择。
5、您对Kubernetes的集群了解多少?
Kubernetes背后的基础是我们可以实施所需的状态管理,我的意思是我们可以提供特定配置的集群服务,并且集群服务将在基础架构中运行并运行该配置。
因此,正如您所看到的,部署文件将具有提供给集群服务所需的所有配置。现在,部署文件将被提供给API,然后由集群服务决定如何在环境中安排这些pod,并确保正确运行的pod数量。
因此,位于服务前面的API,工作节点和节点运行的Kubelet进程,共同构成了Kubernetes集群。
6、Kubernetes Architecture的不同组件有哪些?
Kubernetes Architecture主要有两个组件 - 主节点和工作节点。如下图所示,master和worker节点中包含许多内置组件。主节点具有kube-controller-manager,kube-apiserver,kube-scheduler等。而工作节点具有在每个节点上运行的kubelet和kube-proxy。
7、您能否介绍一下Kubernetes中主节点的工作情况?
Kubernetes master控制容器存在的节点和节点内部。现在,这些单独的容器包含在容器内部和每个容器内部,您可以根据配置和要求拥有不同数量的容器。
因此,如果必须部署pod,则可以使用用户界面或命令行界面部署它们。然后,在节点上调度这些pod,并根据资源需求,将pod分配给这些节点。kube-apiserver确保在Kubernetes节点和主组件之间建立通信。
8、kube-apiserver和kube-scheduler的作用是什么?
kube -apiserver遵循横向扩展架构,是主节点控制面板的前端。这将公开Kubernetes主节点组件的所有API,并负责在Kubernetes节点和Kubernetes主组件之间建立通信。
kube-scheduler负责工作节点上工作负载的分配和管理。因此,它根据资源需求选择最合适的节点来运行未调度的pod,并跟踪资源利用率。它确保不在已满的节点上调度工作负载。
9、你对Kubernetes的负载均衡器有什么了解?
负载均衡器是暴露服务的最常见和标准方式之一。根据工作环境使用两种类型的负载均衡器,即内部负载均衡器或外部负载均衡器。内部负载均衡器自动平衡负载并使用所需配置分配容器,而外部负载均衡器将流量从外部负载引导至后端容器。
10、Replica Set 和 Replication Controller之间有什么区别?
Replica Set 和 Replication Controller几乎完全相同。它们都确保在任何给定时间运行指定数量的pod副本。不同之处在于复制pod使用的选择器。Replica Set使用基于集合的选择器,而Replication Controller使用基于权限的选择器。
Equity-Based选择器:这种类型的选择器允许按标签键和值进行过滤。因此,在外行术语中,基于Equity的选择器将仅查找与标签具有完全相同 短语 的pod。
示例:假设您的标签键表示app = nginx,那么,使用此选择器,您只能查找标签应用程序等于nginx的那些pod。
Selector-Based选择器:此类型的选择器允许根据一组值过滤键。因此,换句话说,基于Selector的选择器将查找已在集合中提及其标签的pod。
示例:假设您的标签键在(nginx,NPS,Apache)中显示应用程序。然后,使用此选择器,如果您的应用程序等于任何nginx,NPS或Apache,则选择器将其视为真实结果。
渗透攻击的测试步骤
1.如果原始值为2,我们使用(1+1)或(3-1),程序作出相同回应,表明易受攻击
2.如果单引号被过滤掉,我们可以用ASCII命令,使它返回字符的数字化代码,如51-ASCII(1)
3.在URL编码中,和=用于链接名称/值对,建立查询字符串应当分别使用%26和%3d进行编码
4.如查询字符串不允许使用空格,使用+或%20编码
5.分号被用于分割cookie自读,使用%3d编码
2021面试网络工程师的题目相关 文章 :
★ 关于网络工程师的面试题有哪些
★ 网络管理员面试题及答案大全
★ 最新的运维工程师面试题目整理
★ 网络测试工程师面试题及答案
★ 计算机网络面试题及参考答案
★ 网络工程师面试自我介绍范文五篇
★ 面试网络技术工程师的有哪些提问
★ 最新的it运维工程师面试题整理
网络安全之一个渗透测试小案例
几天前,收到一个国外目标(公司)的渗透测试任务,时间为两周;
大概看了一下目标是类似于国内阿里云那样提供云服务的平台;
常规信息收集过后,尝试渗透三天无果... 于是下班前只能祭出我的"大杀器"---缝合怪.py。缝合了一些好用的扫描器,一键 XRAY多线程批量扫 + 自动添加任务到AWVS + 自动添加任务到arl + ...加入资产后就下班回家了。
到了第二天一看扫描结果,心里暗道不妙,md坏起来了啊。。。
扫描器里一个洞都没,goby里所有资产显示只开放两个端口80、443。
不慌,问题不大,时间还长,接下来要做的,就是整理思路,重新来过。
在重新整理之前收集到的资产中,发现测试目标的旁站有一个有趣的404页面:
NoSuchBucket + BucketaName
想到了 阿里云 的bucket劫持漏洞,幸福来得太突然了。
使用测试账号登录自己的云平台尝试进行劫持:
1.点击对象存储服务:
2.点击创建桶:
3.桶的名字为BucketName字段:
4.将访问控制权限更改为公共读写:
5.点击对象,创建hack.txt:
6.完成后刷新 为如下 :
发现BucketName字段消失了,原来的NoSuchBucket也变成了NoSuchCustomDomain,说明我们的修改对它造成了影响!
7.NoSuchCustomDomain?那我们就来给他设置一个,点击域名管理尝试绑定域名:
8.访问
9.访问: (hack.txt为我们刚才上传的)
(后期尝试上传图片,html等文件均可)
[图片上传中...(-8136f3-1631536782821-0)]
劫持成功!拿来吧你!
漏洞危害:劫持Bucket,并开放匿名读取功能。可以挂黑页或引用js文件,攻击者可以上传恶意js文件,去盗取用户信息。。。
2021最新整理网络安全\渗透测试/安全学习(全套视频、大厂面经、精品手册、必备工具包)一点我一
网络安全之DOS攻击
DoS攻击通常是利用传输协议的漏洞、系统存在的漏洞、服务的漏洞,对目标系统发起大规模的进攻,用超出目标处理能力的海量数据包消耗可用系统资源、带宽资源等,或造成程序缓冲区溢出错误,致使其无法处理合法用户的正常请求,无法提供正常服务,最终致使网络服务瘫痪,甚至引起系统死机。这是破坏攻击目标正常运行的一种“损人不利己”的攻击手段。
最常见的DoS攻击行为有网络带宽攻击和连通性攻击。带宽攻击指以极大的通信量冲击网络,使得所有可用网络资源都被消耗殆尽,最后导致合法的用户请求无法通过。连通性攻击指用大量的连接请求冲击计算机,使得所有可用的操作系统资源都被消耗殆尽,最终计算机无法再处理合法用户的请求。
主要有Land攻击、死亡之ping、泪滴、Smurf攻击及SYN洪水等。
免费获取学习资料
2021年全套网络安全资料包及最新面试题
(渗透工具,环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等)
这次我们主要介绍简单关于TCP,UDP等相关攻击的工具的使用
最知名的DOS工具之一,黑客组织匿名者官方使用工具。支持TCP/UDP/HTTP大规模流量泛洪。
1、选择URL或IP;
2、设置攻击模式(HTTP,UDP,TCP)、端口号(PORT)、线程(Threads)、速度(可拉)
3、启动攻击(点击IMMA CHARGIN MAH LAZER)
4、效果(开启Wireshark抓包)
例:使用hping3进行TCP攻击
hping3 -c 10000 -d 120 -S -w 64 -p 80 --flood --rand-source ip/域名
还有很多攻击方式如:
– hping3 -a 1.1.1.1 --udp -s 53 -d 100 -p 53 --flood 1.1.1.2
-s:指定源端口,不指定也可以
方法还有很多就不截图了大家自己去调试!
TCP全链接DoS攻击
– nping --tcp-connect --rate=10000 -c 1000000000 -q 192.168.33.135
--tcp-connect:建立tcp连接 --rate=10000:速率一万个
例:****使用nping实现TCP连接攻击:****
2021勒索病毒大盘点
2021年,新冠肺炎仍然在全球范围内肆虐,各行业除了应对疫情的持续冲击外,还面临着一种形态多样、高频化的“流行病”-- 勒索病毒 。它们加密并窃取数据,甚至威胁破坏或泄漏数据,以此胁迫受害者缴纳高昂赎金,获得“暴利”。勒索病毒为何有这么大的能量,让所有行业“谈虎色变”?面对勒索病毒,难道只能“躺平”?接下来,我们就来盘一盘。
从1989年出现世界上第一个已知的勒索病毒“AIDS Trojan”,到2006年中国大陆出现首个勒索软件“Redplus”,全球范围内一直都在遭受着勒索攻击。尤其是近年来勒索攻击形势更加严峻,国际知名企业被勒索病毒攻击的事件层出不穷,并且赎金持续刷新记录。勒索病毒俨然成为了全球网络安全面临的头号威胁,那么,勒索病毒主要有哪几类?
以RSA、AES等多种加密算法对用户文件进行加密,并以此索要赎金。该类勒索病毒已经成为当前勒索病毒的主要类型,以WannaCry为代表。今年WannaCry再度复苏,最常被攻击的主要是 政府、军方单位,其次为制造业、银行、金融与医疗系统。
通常采用多种加密算法加密用户数据,但在勒索环节,攻击者通过甄别和窃取用户重要数据,以公开重要数据胁迫用户支付勒索赎金。2021年3月,知名电脑制造商宏碁遭遇REvil勒索软件威胁攻击,攻击者索要5000万美元赎金(约3.3亿人民币),否则就公开被窃取和加密的数据。2021年5月,FBI称Conti勒索软件袭击了16个美国健康和紧急服务机构,影响了超过400个全球组织。
通过各类加密算法对系统磁盘主引导记录、卷引导记录等进行加密,阻止用户访问磁盘,影响用户设备的正常启动和使用,并向用户勒索赎金,甚至对全部磁盘数据进行加密。以2016年首次发现的Petya勒索病毒为代表。
全屏锁定用户设备的屏幕,并显示包含勒索信息的图像、文字,或伪装成系统出现蓝屏错误,直接导致用户无法登陆和使用设备(系统组件同时会被禁用),进而勒索用户支付赎金。该类勒索攻击还存在于移动端。比如2017年发现的Leatherlocker。
免费领取学习资料
2021年全套网络安全资料包及最新面试题
(渗透工具,环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等)
通过对近年来勒索事件的分析,可以看到勒索软件不仅从“加密数据”演化到“三重勒索”、从“散装攻击”演化到“定向攻击”,还对特定的行业、地域具有明显的针对性。
勒索病毒攻击的目标从个人用户转向支付赎金能力更高,对数据依赖性更强的政企用户。比如高校由于大量设备疏于安全加固和漏洞修复,受WannaCry感染严重。能源、医疗等承载重要数据资源的行业由于对业务连续性要求高,也成为勒索病毒攻击的“高价值”目标。另外,重要政府部门/机构、军队单位以及关系民生的关基设施与工控系统面临的攻击风险也在加剧。
经济利益驱动运作模式升级,初步形成勒索病毒黑产链条。近些年较为活跃的提供勒索即服务RaaS (Ransomware-as-a-service)平台服务的家族DopplePaymer、Egregor、Netwalker、REvil/Sodinokibi、DarkSide、Ryuk,以及今年7月首次出现的BlackMatter,都具有较高的威胁能力。
2021年7月,黑客发起了一场全球勒索软件攻击,共袭击了超过1000多家公司,并迫使瑞典最大连锁超市之一的Coop关闭了数百家门店。在这场似乎是迄今为止规模最大的供应链黑客攻击事件中,黑客将目标锁定在了IT管理软件供应商Kaseya上,并且再次揭示出勒索软件即服务(RaaS)大流行的趋势正在蔓延。
2021年7月,LockFile利用Exchange服务器的ProxyShell漏洞入侵企业内部网络,已经攻击了至少10个组织或企业,其攻击目标主要为美国和亚洲。
由于勒索病毒加密信息难以恢复、攻击来源难以溯源,一旦遭遇勒索攻击,不仅会带来赎金损失、停产损失、赔偿和罚款以及数据重新上线费用等直接损失,还包括可能因为停产或服务中断带来的社会损失。比如赎金损失,据Censuswide的调研报告显示,在遭遇勒索攻击后,会有相当一部分企业会选择支付赎金。但是,
2021年3月,美国最大的保险公司之一CAN Financial遭到黑客组织Phoenix的勒索软件攻击,约15000台设备被加密,不计其数的客户资料受到泄漏的风险。CNA Financial在试图恢复文件无果之后,开始与攻击者谈判,黑客最初索要 6,000 万美元,谈判后向黑客支付了 4,000 万美元,创下了历史上最高的已支付赎金金额的记录。
2021年5月,美国最大的成品油的管道运输商Colonial Pipeline遭到“Darkside”黑客组织的勒索病毒攻击,美国东部沿海的燃油网络陷入瘫痪。同月,美国东部17个州和首都所在的华盛顿特区进入紧急状态。
图源网络
2021年,LockBit升级为2.0版本,加密数据的速度能达到373MB/s,在不到20分钟内便可以从受感染设备上盗取并加密100GB的数据,是普通勒索病毒加密速度的3倍以上。8月,全球IT咨询巨头埃森哲遭受来自LockBit团伙的攻击,LockBit勒索团队声称窃取了超过6TB的数据,并勒索5000万美元(约3.2亿人民币)赎金。