关于安全漏洞:译-软件中的安全漏洞是什么-献给外行人的软件漏洞指南

原文: What’s Up With All of These Software Security Vulnerabilities? https://www.simplethread.com/whats-up-with-all-of-these-softw...当你在读这篇文章的时候,你可能曾经据说了最近产生在log4j库的一个破绽。 或者也可能是在几年当前,又发现了另一个微小的软件破绽,有人把这篇文章发给你,心愿能帮忙你解释产生了什么。无论哪种形式,你可能都会想到底产生了软件世界中产生了什么,使得这些要害的未发现的破绽可能埋伏多年,而后忽然被发现并导致整个技术界个体失控。我将从一个相当根本的层面来解释到底产生了什么,如果你是一个软件工程师,你可能不会有什么播种。然而如果你并不在IT行业,而你又想了解到底产生了什么,那你就来对中央了。 什么是软件?咱们都大抵晓得什么是软件。咱们晓得它在咱们的计算机上运行。但实际上,它到底是什么?好,在你电脑上运行的所有货色都是软件,当你的计算机启动时,你所登录的操作系统,你启动的应用程序,如word。你收到五年内没有更新你的反病毒软件的小弹出窗口揭示。它们都是软件。 所有的这些软件都只是由一堆文件组成,你的计算机晓得如何解决。桌面上word图标是一个非凡的图片文件,Word应用程序自身由一堆文件组成,你敌人发送给你的图片也是一个文件。所有都只是你的计算机能够与之交互的不同类型的文件。 你桌面上的word图标和你敌人发给你的图片惟一的不同的是,你的计算晓得当你点击word图标,须要启动的是word应用程序。 在这个层面上,这就是你须要晓得的全副。你计算机上上的所有都由成千上万个文件组成。 而你的计算晓得如何与其中大多数文件进行交互。点击一个图像文件,你的计算机会关上一个解决图像的应用程序。点击一个网站链接,你的计算机会关上一个网络浏览器。 文件,一切都是文件。 但这可能有点简单,当你在浏览器上关上一个网站,比方应用chrome浏览器、edge浏览器,拜访网站失去的数据是一个计算机通过互联网发送给你的数据。 其余计算机,被称为服务器,躺在这个星球的某个中央。当你输出”www.google.com“时,谷歌的服务器会向你发送一系列文件,而你的浏览器则利用这些文件来显示一个网页给你。这相当酷。 然而,他们依然是一堆文件,只是这次他们通过网络发送给你。 但这些文件由什么组成?所以你的计算机只是由一堆文件组成,这些文件外面实际上是什么,这有点难以解释,但我会尝试阐明一下。软件被程序语言书写。编程语言只是一堆文本,能够被转化为一组你计算机了解的操作。上面有一个编程语言的小代码块: import "fmt"func main() { fmt.Println("hello world")}这就是人们常说的代码。这段代码是做什么的并不重要,只有晓得所有的软件都是由一堆文件组成,这些文件有大量的文本,就像你下面看到的。而却要晓得,某个人在某个中央必须编写所有这些文本。 为了让这些文本能够被你的计算机辨认,须要一个被称为“编译器”的非凡程序。编译器将这些文本转化为你的计算机能够运行的一堆指令,并将这些指令塞入一个文件(或一堆文件)。所以当你启用应用程序像chrome,你的计算机会找到被编译后的chrome文件,关上的,而后运行指令。这就是你的电脑所做的所有,终日都是如此。它只是躺在那里,关上一个又一个文件,读出指令,而后一遍一遍地运行它们。一整天,每天。 我还是没了解安全漏洞是什么意思我晓得,我晓得,再忍受一下,咱们在靠近答案了。所以咱们的计算机上有一堆非凡的文件,外面是编译器创立的一堆指令。咱们的计算机只需依照这些指令执行操作。这些指令非常简单,他们并不像“显示chrome窗口给用户看”这些简单,而是一些简略的指令,像是将两个数相加,或者在屏幕的某个地位画一个点。理论的指令会更原始,但我想你会明确我的意思。指令是十分根本的,而应用程序须要大量的这些指令能力做任何事件。 这些指令必须非常简单,这样你就能够用各种不同的形式组合大量指令,从而能够让你的计算机简直能够做所有事件。 如果这些指令像“在屏幕上画一个按钮”这样简单的话,那么你须要大量十分具体的指令能力实现简直任何你想让它执行的工作。你须要绿色按钮指令去绘制绿色按钮,红色按钮指令去绘制红色按钮。很快就会失去管制。 相同,咱们有的只是一堆根本的指令,那咱们就能够将其组合起来去绘制红色按钮或绿色按钮。这些非常简单的指令驱使计算机逐像素的去绘制按钮的每个局部。 因为应用了非常简单的指令,咱们能够有限组合它们让这些指令能够在屏幕上绘制任何货色,包含您当初正在浏览的字母。为了生产所有这些指令,咱们须要大量的代码。您的计算机相当愚蠢,终日只是坐在那里执行指令。因而,咱们编写的代码须要以及其具体的形式告诉您的计算机须要做每一件事件......,具体到令人苦楚的水平。 例如,让咱们回顾一下之前提到的网络浏览器示例,您在浏览器中输出了谷歌的地址,为了让你浏览到网页产生了什么? 如果我告诉您,您可能不会置信,产生了不可胜数的事件。这包含读取您按下键盘的键位在屏幕上绘制字母,再通过互联网向Google发送申请的所有。然而每个动作都是由成千上万个非常简单的指令组成。 真不堪设想,是嘛? 不要放心,即便是程序员也难以了解其中的每一个细节。这件事是如此简单,以至于很难齐全了解。这简直是所有软件工程师共享的一个重要机密之一。咱们之中的大多数人对于它的杰出工作,感觉诧异不已。它是令人难以置信的简单,而且没有人真正了解这所有。 是不是开始感觉像纸牌屋了当初你应该晓得软件工程师的感触了。兴许您会对这个问题有疑难,如果要实现非常简单的工作须要数百万条指令,那么计算机是如何实现世界上不拘一格的所有呢? 我很快乐你这么问,因为软件工程师不用编写他们应用程序的所有代码。如果软件工程师不得不编写古代应用程序的每一行代码,那么即便是最简略的应用程序也须要破费数年,即便是一个团队,也不例外。 起因在于每个应用程序都利用了成千上万其余工程师编写的代码。成千上万? 是的,举个例子,应用程序应用了大量您操作系统的代码,这就是运行在Windows上的应用程序,运行在Mac OS的程序也很类似的起因。这些应用程序和操作系统协同工作,在屏幕上绘制,连贯到互联网,弹出告诉。您计算机上的操作系统,代码量是微小的。 Windows 10 大概有5000万行代码,是的,5000万行! 假如一本小说每页有20行文字,那么咱们就须要250万页来包容这么多代码,相当于超过11000本《哈利.波特》第一部的页数。堆积起来的高度将和埃菲尔铁塔一样高,或者帝国大厦的三分之二。 这些代码也不仅仅是英语文本,而是通过有数人编写和批改的粗疏简单的计算代码。 这一点很难让人置信,不是吗? 而这只是作为Windows一部分的软件。咱们的应用程序也须要实现很多类似利用实现的工作。 比方解决图片文件,显示PDF,显示页面,播放音乐,领取等,简直是你能设想的任何性能。利用共享性能,程序语言应用称为”库“的非凡文件。库是蕴含应用程序须要应用的性能的一捆文件。咱们能够将其设想为应用程序的工具箱,你的利用须要个锤子? 那么本人制作一个锤子是不值当的,咱们这个库外面有这个锤子,那么就用这个锤子吧。 独立开发者能够利用成千上万个库来执行各种工作。软件工程师利用这些库,如果他人曾经为你编写了这些代码,你为什么还要本人再写一遍呢?所以一些利用外面,代码库的代码要比利用本身的还要多。从这个角度来看,假如我有一个绝对比拟小的应用程序,咱们团队编写的代码在大概50000行左右。我可能应用了数百万行代码的内部库,而且我还要在由数千万行代码组成的操作系统上运行。古代应用程序利用了大量的内部代码,破绽就可能产生在这些代码中。 终于达到了安全漏洞在这数百万行代码中,安全漏洞可能埋藏在任何一处。实际上,我所指的安全漏洞, 指的是代码中有些缺点,导致代码以一种不应该的形式运行, 举个例子,在这数百万行代码中,假如有一个程序员编写的指令: "如果来自用户的文本值是以hacked: 结尾,那么将前面的内容将被视为链接"。 所以如果有人拜访你的利用输出: hacked: www.google.com, 它将会导致你的利用拜访www.google.com. 听起来如同没有那么蹩脚,除非代码支还反对获取该地址的内容,而后然尝试去做一些事件。兴许这个程序的用意是加载特定地位的内容,并尝试将其作为应用程序的一部分运行? 而后用户输出"hacked:www.myevildomain.com" , 让你的应用程序将他们的恶意代码加载到你的应用程序。如果这个应用程序像facebook、google、Instagram的运行模式一样等,那么攻击者可能会利用该破绽运行代码,从而获取用户存储的数据,这时就会呈现安全漏洞的状况。 然而为什么有人这么做呢?这个例子十分牵强。没有程序员会提供一种形式将他人的代码记录进本人的利用。这是软件根底的利用常识。应用程序常常要从用户那里获取数据,无论是浏览器的表单中的文本,还是用户上传的图片。应用程序从用户那里接管了大量的数据,而后以某种形式对其进行解决。有大量的用户须要清理来确保数据安全。通过接管和解决这些数据,会为特意结构的某个数据片段提供很多机会,使程序以程序员未曾意料的形式运行。 咱们假如一个黑客将文件上传到图片共享服务,这个文件看起来像是一个图片文件,但实际上外面填充的是黑客心愿运行的一些命令。黑客晓得他们正在上传文件操作的网站应用了一些特地的库来解决图片上传,他们晓得库会查看文件结尾的一组特定值,而后依据这些值执行一些非凡的命令,并将图片文件数据传递进来。这种状况常常产生在解决上传到网站的图像上,用于调整大小、叠加成果、增加滤镜等等。如果该库在确保图片数据有效性方面不够审慎,就可能意外执行黑客传递给它的命令,相似的状况在过来产生了很多。 这就是大多数软件安全漏洞的源头,解决来自用户的数据,图片,文件,文本,而后被诱导以不失当的形式来解决。因为大多数利用应用了数百万行代码,因而不可能对其进行全面的审计来所有的缺点。这些缺点之所以不经常出现起因在于大多数利用有相当不错的平安实际,并且大多数库都有很多人审计代码。然而偶然就会有一个奥妙的谬误进入到一个库中,并且因为它很少被应用,这个谬误可能在多年间被疏忽,这就是产生在log4j身上的状况。 ...

June 13, 2023 · 1 min · jiezi

关于安全漏洞:使用doop识别最近commons-text漏洞的污点信息流

作者:vivo 互联网安全团队 - Chen Haojie 本文基于笔者对doop动态程序剖析框架源代码和规则学习,并联合对目前破绽公开技术细节的学习,批改加强doop app only模式下的剖析规定后,实现通过doop工具辨认commons text rce破绽(CVE-2022-42889)。内容蕴含三局部,第一局部简略介绍doop剖析框架,第二局部简略介绍commons text破绽的原理和代码调用栈,第三局部重点介绍如何革新doop app only模式下的规定以辨认commons text破绽的污点信息流。 一、doop动态剖析框架简介1. doop动态剖析框架简介doop动态剖析框架由希腊雅典大学plast-lab Yannis Smaragdakis团队设计开发,目前看是一款开源畛域的比拟先进的程序动态剖析框架,一些程序动态剖析论文的实践也有通过doop的规定实现后试验。 doop整体架构简单明了,合乎通常动态代码破绽扫描工具扫描器内核的设计思路。架构上由groovy写的调用程序“粘合”在一起,通过调用fact-generator和datalog分析器,得出自动化的剖析后果。 上面是笔者画的doop整体架构图,蕴含doop中一些要害的组件模块: 2. doop工作流程doop的fact generator模块会对输出进行解析(例如jar包的解析或者类的resolve从而加载进必要的类信息到内存中)调用soot、wala等工具生成jimple IR,在此基础上生成后续剖析引擎须要的facts文件。而后doop应用LogicBlox(目前doop已不保护)或者Soufflé(开源的datalog剖析引擎)基于facts文件和既定的datalog剖析规定文件进行剖析,失去最终的程序剖析后果。doop反对对java源码及字节码的剖析,不过源码的jdk版本受限,倡议间接应用字节码进行剖析。 doop外围是其实现的一套datalog剖析规定,其中蕴含了由毛糙到精密的context-insensitive、1-call-site-sensitive、1-call-site-sensitive+heap的丰盛的动态程序剖析策略等等等,同时通过在addons中增加了额定的对信息流剖析、对spring等生态框架、对java反射个性的反对,非常弱小。 以上是对doop的架构和性能的简略介绍,jar包信息的解析、规定的预处理、编译执行和解释执行、程序的并发设计或者因为大量sootclass加载造成的内存溢出问题等一些细节因为篇幅限度不在此介绍。 二、commons text rce破绽简介先对该破绽进行简略介绍。 Apache Commons Text是一款解决字符串和文本块的开源我的项目,之前被披露存在CVE-2022-42889近程代码执行破绽,这个破绽目前网上的剖析文章比拟多,在此不做复述。该破绽原理上有点相似log4j2,当然影响不可相比,其代码中存在能够造成代码执行的插值器,例如ScriptStringLookup(当然这里提到这个插值器是因为咱们指标就是剖析这一条sink污点流),同时没有对输出字符串的安全性进行验证导致问题。 借用网上公开的poc触发ScriptStringLookup中的代码执行,应用commons text 1.9版本 : 残缺的破绽调用栈如下: 从调用栈能够看出,通过调用commons text的字符串替换函数,能够调用到ScriptStringLookup类的lookup办法,从而调用scriptEngine.eval执行代码。能够看出该条破绽链路较浅,但链路要害节点也波及了接口抽象类的cast、输出字符串的词法剖析状态机以及各种字符串的处理函数,作为试验对象十分适合。 三、commons text rce污点信息流的doop辨认规定咱们选取上述二中commons text中org.apache.commons.text.StringSubstitutor replace函数作为source,ScriptEngine eval函数作为sink。 doop设置app only模式去进行剖析,doop在app only模式下会将!ApplicationMethod(?signature)退出isOpaqueMethod(?signature),这样一些剖析不会进入jdk的类中,能够大大提高doop的剖析效率。根据莱斯定理,动态程序剖析难以达到齐全的齐备(truth或者perfect),也是尽可能优化sound。相似在企业级的SAST部署应用也是如此,也须要在扫描精度、扫描速度以及理论可用性中进行取舍或者均衡,所以doop的app only模式下在集体看来更靠近理论嵌入到devsecops中的轻量级动态代码破绽扫描的利用。 3.1 doop的datalog剖析规定简略介绍因为波及doop app only规定的革新,首先先简略介绍doop应用的datalog规定。 doop目前保护应用开源的Soufflé剖析datalog规定。datalog是申明式的编程语言,也是prolog语言的非图灵齐备子集,所以实质上也是建设在形式逻辑中的一阶逻辑上。所以根底概念也是命题推导,在Soufflé的模式上就是体现为关系(relation)。 如下例子: 很显著能够看出该例子通过datalog定义的关系逻辑实现相等关系的自反性、对称性和传递性,首先定义了equivalence关系,该关系能够由rel1和rel2关系蕴涵失去,而equivalence的a须要满足关系rel1,b须要满足关系rel2。具体语法和高阶个性能够通过souffle-lang.github.io网站进行理解。 3.2 doop配置应用简略介绍doop能够通过gradle去编译应用,须要提前在类unix零碎中借助cmake编译装置Soufflé,doop的具体装置应用能够在https://github.com/plast-lab/doop-mirror中理解。 对doop的命令行应用进行简略,剖析,有几个要害的命令参数,-i参数承受须要剖析的文件(例如jar包),-a参数配置剖析策略(例如是抉择context sensitive还是context insensitive),--app-only参数配置开启doop的app only模式,--information-flow开启doop的信息流剖析模式(能够用来做污点剖析),--platform设置剖析须要的jdk平台,--fact-gen-cores配置生成facts的并发性。 本文应用的doop命令参数: -a context-insensitive --app-only --information-flow spring --fact-gen-cores 4 -i docs/commons-text.jar --platform java_8 --stats none ...

May 16, 2023 · 2 min · jiezi

关于安全漏洞:看ChatGPT能否正确解答关于SQL注入漏洞的问题

本文首发自「慕课网」,想理解更多IT干货内容,程序员圈内热闻,欢送关注"慕课网"!作者:Beerus|慕课网讲师 背景本周在《Web平安浸透测试》课程的QQ群中,有同学发问了一个对于网上一个对于SQL注入破绽解说案例的问题,如图: 很显著,这是个谬误案例。如果是一个没有老师或前辈领导的状况下,询问ChatGPT是否帮忙解决这个问题呢?浅探ChatGPT的平安能力注:基于GPT 3.5。单刀直入,间接问是否能胜利注入,答案是存在的: 再反复问一遍,态度很动摇,如果是没有相干根底的同学看到话、估摸着就拿来当论断了…: 再质疑一遍,就波动了,但也没有找到问题的关键点所在,只是感觉会校验无效的user参数值: 没方法了,只能间接问关键点,这个ChatGPT是晓得的: 关联上述语句,再问一遍,后果还是说or优先级高于and,还是有问题: 再诘问一遍,就纠正过去了即and优先级高于or,但论断还是不对的,因为它了解表中存在user为abc和pass为12345的行就会返回表中所有行,实在是只会返回一行: 这次加个前提条件即不存在对应的用户名和明码再问题一遍,间接给出谬误答案。。。: 针对谬误点再次提出疑难,尽管对谬误点进行了纠正,但还是存在谬误(没有abc用户名不返回任何行): 回过头来再问,会纠正一些,但不多。。。: 再细问具体不存在用户名和明码的场景,终于给出了正确的不会返回任何行的答案。。。: 最初给出的论断终于正确了,但还不够全面: 至此,置信也再次印证了ChatGPT不苟言笑地胡言乱语的景象了,同时也置信GPT4的能力会比3.5强很多,后续有机会再更新下4相干的能力体现。 欢送关注「慕课网」帐号,咱们会始终保持提供IT圈优质内容,分享干货常识,大家一起独特成长吧!本文原创公布于慕课网 ,转载请注明出处,谢谢合作

April 24, 2023 · 1 min · jiezi

关于安全漏洞:OWASP-TOP-10-2021

OWASP TOP 10 2021 2021 年的 TOP 10 中有 3 个新类别、4 个更改了名称和范畴的类别以及一些合并。 A01. 生效的访问控制 Broken Access Control生效的访问控制是指应用程序中的访问控制措施没有被正确施行或没有被充分考虑,从而导致攻击者可能绕过访问控制措施,拜访未受权的资源和执行未受权的操作。具体来说,生效的访问控制破绽可能包含以下方面:目录遍历:攻击者能够通过批改URL或提交特定的申请参数来拜访未受权的目录或文件。权限晋升:攻击者能够通过批改申请参数或通过其余形式来绕过应用程序的权限限度,从而获取更高的权限或执行未受权的操作。会话劫持:攻击者能够通过获取或伪造非法用户的会话ID来伪装成非法用户,从而拜访敏感资源或执行未受权的操作。特权绕过:攻击者能够利用缺点或破绽绕过应用程序的特权限度,从而拜访敏感资源或执行未受权的操作。为了应答生效的访问控制破绽,应用程序开发者和管理员能够采取以下措施:施行强制访问控制:应用程序应该实现无效的拜访控制策略,并避免攻击者通过伪造申请参数、批改URL或应用其余办法绕过访问控制。实现最小化准则:应用程序应该仅受权所需最小限度的权限,并确保用户仅拜访其须要的资源。验证和受权:应用程序应该实现严格的身份验证和受权机制,以确保用户只能拜访其受权的资源和操作。施行会话治理:应用程序应该施行无效的会话管理机制,包含应用强明码、应用HTTPS协定、定期更新会话密钥等,以确保会话不被劫持或伪造。进行平安测试:应用程序应该进行平安测试,包含破绽扫描、浸透测试等,以辨认潜在的生效的访问控制破绽并及时修复。 A02. 加密机制生效 Cryptographic Failures加密机制生效是指应用程序中应用的加密算法、密钥治理和其余相干技术存在破绽或缺点,导致加密机制无奈达到预期的平安爱护成果。具体来说,加密机制生效可能包含以下方面:弱加密算法:应用程序中应用的加密算法过于简略或易于被破解,从而导致加密数据不再平安。不平安的密钥治理:应用程序中的密钥治理不够平安,如密钥存储在明文中、密钥强度有余等,使攻击者能够获取密钥并解密加密数据。敏感信息泄露:敏感信息的传输或存储存在破绽,如数据泄露、拦挡、篡改等,使攻击者能够获取敏感数据。2017-A03 敏感信息泄露暴力破解攻打:攻击者应用暴力破解等办法获取加密数据,从而导致加密机制生效。为了应答加密机制生效破绽,应用程序开发者和管理员能够采取以下措施:抉择强加密算法:应用程序应该抉择强加密算法,并确保密钥的长度和强度足够平安。施行平安的密钥治理:应用程序应该采纳平安的密钥管理机制,包含密钥加密、密钥散发、密钥存储等,确保密钥不被泄露或破解。施行平安的传输和存储:应用程序应该施行平安的传输和存储机制,包含应用SSL/TLS协定、加密传输、平安存储等,确保加密数据不被泄露或篡改。防备暴力破解攻打:应用程序应该施行防备暴力破解攻打的措施,如限度登录尝试次数、应用简单明码等,以避免攻击者通过暴力破解获取密钥或加密数据。进行平安测试:应用程序应该进行平安测试,包含加密算法评估、密钥治理评估等,以辨认潜在的加密机制生效破绽并及时修复。 A03. 注入 Injection注入破绽是指攻击者能够通过注入恶意代码或指令来攻打应用程序的破绽。常见的注入破绽包含SQL注入、命令注入和LDAP注入等。具体来说,注入破绽可能包含以下方面:SQL注入:攻击者通过注入歹意的SQL代码来获取敏感数据、批改数据库内容或执行其余歹意操作。命令注入:攻击者通过注入歹意的命令来执行系统命令、获取敏感信息或执行其余歹意操作。LDAP注入:攻击者通过注入歹意的LDAP代码来获取敏感数据、批改LDAP目录内容或执行其余歹意操作。跨站脚本攻打(XSS)注入:攻击者通过在受害者浏览器中注入歹意脚本,从而获取用户的敏感信息,例如明码、银行账户等。XSS攻打能够分为反射型、存储型和DOM型三种类型。2017-A07 跨站脚本XSS为了应答注入破绽,应用程序开发者和管理员能够采取以下措施:应用参数化查问:应用程序应该应用参数化查问或预处理语句,确保SQL语句的参数值是事后定义的,防止攻击者通过注入歹意的SQL代码来执行歹意操作。过滤和验证输出:应用程序应该对用户输出进行过滤和验证,过滤特殊字符,限度特定的字符集,确保输出数据合乎预期的格局和类型,防止攻击者通过注入恶意代码来执行歹意操作。在输入时应用HTML编码,防止JavaScript脚本注入。最小化权限:应用程序应该最小化数据库用户的权限,防止攻击者通过注入歹意SQL代码来获取或批改敏感数据。应用ORM框架:应用程序能够应用ORM框架(对象关系映射),ORM框架将解决SQL代码和参数传递,使开发人员能够防止手写的SQL代码中的注入问题。查看系统日志:应用程序应该查看系统日志,监控攻击行为,及时发现和解决注入破绽。定期进行破绽扫描:应用程序应该定期进行破绽扫描,包含注入破绽扫描,以及及时修复潜在的破绽。 A04. 不平安设计 Insecure Design不平安设计通常是因为设计不良或不足安全意识而导致的,攻击者能够利用这些设计缺点来攻打应用程序。具体来说,不平安设计可能包含以下方面:未思考安全性:开发人员在设计应用程序时没有思考安全性,如疏忽了访问控制、明码加密等。信赖适度:应用程序信赖用户提供的数据,而不进行适当的验证,从而可能导致攻击者利用这些缺点来攻打应用程序。坑骗用户:应用程序会误导用户,让用户进行危险的操作,例如“记住我”性能可能导致用户在公共计算机上蒙受攻打。为了应答不平安设计,应用程序开发者和管理员能够采取以下措施:施行安全性的开发生命周期:开发团队应该在整个利用程序开发过程中,器重安全性,包含设计、编码、测试和部署等。审查设计和代码:开发人员应该审查设计和代码,以确保应用程序合乎最佳平安实际,如采纳强明码策略、平安的会话治理和访问控制等。应用程序的最小权限:应用程序应该最小化用户权限,只授予必须的权限。平安认证:应用程序应该对用户身份进行验证,并对敏感操作进行适当的认证和受权,防止攻击者利用应用程序中的信赖问题来攻打。针对安全性进行测试:应用程序应该定期进行安全性测试,包含代码审计、破绽扫描和浸透测试等,以确保应用程序合乎最佳平安实际,并及时修复发现的破绽。 A05. 平安配置谬误 Security Misconfiguration平安配置谬误通常是因为不正确的配置或治理而导致的,攻击者能够利用这些破绽来攻打应用程序。具体来说,平安配置谬误可能包含以下方面:默认明码:应用程序或其组件应用默认明码,攻击者能够轻松地利用这些明码拜访应用程序或组件。禁用平安性能:开发人员或管理员可能禁用了某些平安性能,例如文件上传的限度、谬误音讯的显示和日志记录等,从而导致应用程序易受攻击。未正确配置XML解析器:XML内部实体攻打(XML External Entity, XXE)通常产生在应用程序未能正确配置XML解析器的状况下,攻击者利用了XML解析器解决内部实体的机制。当XML解析器解析XML文档时,它会依据定义在文档中的实体申明解析实体。攻击者能够通过定义歹意的内部实体并将其插入XML文档中,从而导致XML解析器执行歹意操作,例如读取文件、执行系统命令等等。2017-A04XML内部实体攻打(XXE)不平安的默认配置:应用程序或其组件可能蕴含不平安的默认配置,例如凋谢的端口、调试模式、凋谢的文件共享等。不及时的安全更新:应用程序或其组件可能蕴含已知的安全漏洞,但因为管理员没有及时更新,导致攻击者能够利用这些破绽来攻打应用程序。为了应答平安配置谬误,应用程序开发者和管理员能够采取以下措施:最小化攻击面:应用程序应该最小化攻击面,例如只凋谢必须的端口、禁用不须要的服务等。增强平安配置:应用程序和组件应该采纳最佳平安配置实际,例如应用强明码、启用谬误音讯的显示、敞开调试模式等。禁用内部实体:应用程序应该禁用XML解析器的内部实体性能,例如在解析XML文档时应用禁用内部实体的选项。这样能够无效避免攻击者利用内部实体攻打。施行白名单:应用程序应该施行白名单措施,例如只信赖特定的IP地址、域名等等,以缩小攻击者利用XXE破绽的危险。增强输出验证:应用程序应该增强对用户输出的验证,例如限度XML文档中的实体申明,以避免攻击者利用XXE破绽发送歹意申请。应用平安XML解析器:应用程序能够应用平安的XML解析器,例如谷歌的平安XML解析器或OWASP的ESAPI库,以缩小XXE攻打的危险。及时更新:应用程序和组件应该及时更新,以修复已知的安全漏洞。施行平安审计:应用程序和组件应该定期进行平安审计,以查找潜在的配置谬误或破绽,并及时修复它们。强制访问控制:应用程序和组件应该强制访问控制,只受权给须要的用户和角色。安全监控:应用程序和组件应该施行安全监控,包含日志记录、入侵检测和安全事件响应等,以及时发现和应答平安问题。 A06. 危险和过期的组件 Vulnerable and Outdated Components危险和过期的组件常是因为应用具备已知安全漏洞的第三方组件或库而导致的,攻击者能够利用这些破绽来攻打应用程序。具体来说,危险和过期的组件可能包含以下方面:已知的破绽:应用程序或其组件可能蕴含已知的安全漏洞,例如Heartbleed、Shellshock等。2017-A09应用含有已知破绽的组件过期的组件:应用程序或其组件可能应用已过期的第三方组件或库,这些组件或库可能蕴含已知的安全漏洞,但因为没有及时更新,导致攻击者能够利用这些破绽来攻打应用程序。不可信的组件起源:应用程序或其组件可能从不可信的组件起源获取组件或库,这些组件或库可能蕴含恶意代码,攻击者能够利用这些组件来攻打应用程序。为了应答危险和过期的组件,应用程序开发者和管理员能够采取以下措施:最小化组件:应用程序应该最小化应用第三方组件或库,并仅应用必须的组件。应用可信的组件起源:应用程序应该从可信的组件起源获取组件或库,并应用数字签名来验证组件的完整性和真实性。及时更新:应用程序和组件应该及时更新,以修复已知的安全漏洞,并应用最新的版本。施行破绽治理:应用程序和组件应该施行破绽治理,定期扫描应用程序和组件以查找已知的安全漏洞,并及时修复它们。破绽披露:应用程序和组件应该参考组件供应商的破绽披露告诉,并及时降级组件或库。安全监控:应用程序和组件应该施行安全监控,包含日志记录、入侵检测和安全事件响应等,以及时发现和应答平安问题。 A07. 身份甄别和身份认证生效 Identification and Authentication Failures身份甄别和身份认证生效通常是因为应用程序在身份验证和甄别过程中存在破绽或谬误而导致的。具体来说,身份甄别和身份认证生效可能包含以下方面:弱明码和口令:应用程序可能容许用户应用弱明码和口令进行身份认证,这使得攻击者更容易猜想或破解明码。2017-A02生效的身份认证不足多因素身份认证:应用程序可能只应用繁多的身份认证办法,例如用户名和明码,而没有应用其余的多因素身份认证办法,例如令牌、生物辨认等,这使得攻击者更容易伪造身份。2017-A02生效的身份认证会话治理破绽:应用程序可能存在会话治理破绽,例如会话劫持、会话固定、会话登记等,这使得攻击者可能利用被攻击者的身份进行攻打。拒绝服务攻打:应用程序可能受到拒绝服务攻打,例如暴力破解、暴力撞库、暴力扫描等,这会影响用户的身份验证和甄别过程。为了应答身份甄别和身份认证生效,应用程序开发者和管理员能够采取以下措施:应用强明码和口令:应用程序应该要求用户应用强明码和口令,并应用明码策略来强制要求用户恪守明码规定。施行多因素身份认证:应用程序应该施行多因素身份认证,例如令牌、生物辨认等,以加强用户身份认证的安全性。增强会话治理:应用程序应该施行会话治理,例如会话劫持检测、会话固定预防、会话登记等,以缩小攻击者利用被攻击者的身份进行攻打的可能性。平安认证协定:应用程序应该应用平安的身份认证协定,例如OAuth、OpenID等,以确保身份认证过程的安全性。拒绝服务防护:应用程序应该施行拒绝服务防护措施,例如限度登录尝试次数、IP地址过滤、验证码等,以缩小暴力破解、暴力撞库等拒绝服务攻打的影响。 A08. 软件和数据完整性生效 Software and Data Integrity Failures软件和数据完整性生效通常是因为应用程序在存储、解决或传输数据时存在破绽或谬误而导致的。攻击者能够利用这些破绽或谬误来篡改应用程序中的数据或代码,从而毁坏应用程序及数据的完整性。具体来说,软件和数据完整性生效可能包含以下方面:数据库注入破绽:应用程序可能受到数据库注入攻打,攻击者能够利用这些破绽来篡改应用程序中的数据。CSRF攻打:应用程序可能受到CSRF攻打,攻击者能够利用这些破绽来利用用户的身份执行未经受权的操作,例如更改用户明码。不平安的反序列化:攻击者利用应用程序中的反序列化过程,将歹意数据反序列化为可执行代码,以执行歹意操作的破绽。在反序列化过程中,应用程序将序列化的数据还原为对象或数据结构。攻击者能够通过批改序列化的数据或提供特制的输出来坑骗应用程序,从而执行恶意代码,例如执行近程命令、拜访敏感数据或篡改数据等。2017-A08不平安的反序列化文件上传破绽:应用程序可能存在文件上传破绽,攻击者能够利用这些破绽上传蕴含恶意代码的文件到服务器上,从而毁坏应用程序的完整性。代码注入破绽:应用程序可能受到代码注入攻打,攻击者能够利用这些破绽将恶意代码注入应用程序中,从而毁坏应用程序的完整性。为了应答软件和数据完整性生效,应用程序开发者和管理员能够采取以下措施:输出验证和过滤:应用程序应该施行输出验证和过滤来避免数据库注入破绽和代码注入破绽。CSRF防护:应用程序应该施行CSRF防护措施,例如应用CSRF令牌,以避免CSRF攻打。反序列化防护:序列化和反序列化应该仅限于可信的数据源。应该应用平安的序列化库和算法,例如JSON或Protobuf,而不是不平安的序列化技术,例如Java的ObjectInputStream类。文件上传验证:应用程序应该对上传的文件进行验证和过滤,以避免文件上传破绽。平安编码实际:应用程序开发者应该应用平安编码实际来防止代码注入破绽和其余类型的破绽。增强访问控制:应用程序应该施行访问控制措施,例如身份验证和受权,以避免未经受权的数据或代码批改。增强日志和监控:应用程序应该施行日志和监控措施,例如记录所有用户操作和异常情况,以及及时响应和解决安全事件。 A09. 平安记录及监控生效 Security Logging and Monitoring Failures平安记录及监控生效通常是因为应用程序未能正确记录、监控和响应安全事件而导致的。这些安全事件可能包含潜在的攻打、异样行为、系统故障等等。具体来说,平安记录及监控生效可能包含以下方面:短少平安日志记录:应用程序未能正确记录安全事件,例如登录尝试、身份验证失败、零碎谬误等等。短少安全监控:应用程序未能施行安全监控措施,例如检测异样行为、威逼情报、破绽扫描后果等等。短少响应打算:应用程序未能施行平安响应打算,例如在安全事件产生时采取适当的口头来遏制威逼、缩小损失等等。为了应答平安记录及监控生效,应用程序开发者和管理员能够采取以下措施:施行平安日志记录:应用程序应该施行平安日志记录措施,例如记录登录尝试、身份验证失败、零碎谬误等等。施行安全监控措施:应用程序应该施行安全监控措施,例如实时监测异样行为、威逼情报、破绽扫描后果等等。施行平安响应打算:应用程序应该施行平安响应打算,例如在安全事件产生时采取适当的口头来遏制威逼、缩小损失等等。增强访问控制:应用程序应该施行访问控制措施,例如限度用户权限、记录所有用户操作等等,以便疾速检测和响应安全事件。增强平安培训和意识:应用程序开发者和管理员应该承受平安培训和意识教育,以理解平安记录及监控的重要性,并学会如何辨认和应答安全事件。 A10. 服务器端申请伪造 Server-Side Request Forgery (SSRF) 服务器端申请伪造(Server-Side Request Forgery, SSRF)是指攻击者能够利用应用程序的破绽,坑骗服务器发动网络申请,从而攻打外部零碎或云服务。攻击者能够利用SSRF破绽拜访应用程序未受权的内部零碎和资源,例如拜访外部网络、获取敏感数据等等。具体来说,SSRF破绽通常由以下起因导致:输出验证不充沛:应用程序未能正确验证用户提供的输出,例如URL参数、申请体等等。信赖不合理:应用程序在发动网络申请时信赖了不可信的用户输出。未受权拜访:应用程序未能正确限度拜访权限,导致攻击者能够拜访未受权的资源。为了应答SSRF破绽,应用程序开发者和管理员能够采取以下措施:施行输出验证:应用程序应该施行输出验证措施,例如验证URL参数、申请体等等,以避免攻击者利用SSRF破绽发送歹意申请。施行受权机制:应用程序应该施行受权机制,例如限度网络拜访权限、验证用户身份等等,以确保只有受权的用户能够拜访外部资源。限度网络拜访:应用程序应该限度网络拜访范畴,例如通过防火墙、平安组等等限度网络拜访范畴,以缩小攻击者利用SSRF破绽的危险。施行白名单:应用程序应该施行白名单措施,例如限度网络拜访范畴、只信赖特定的IP地址、域名等等,以缩小攻击者利用SSRF破绽的危险。增强平安培训和意识:应用程序开发者和管理员应该承受平安培训和意识教育,以理解SSRF破绽的危险和应答办法,学会如何辨认和避免SSRF攻打。 ...

April 3, 2023 · 1 min · jiezi

关于安全漏洞:CVE202323752-Joomla未授权访问漏洞分析

破绽概要Joomla 在海内应用较多,是一套应用 PHP 和 MySQL 开发的开源、跨平台的内容管理系统(CMS)。Joomla 4.0.0 至 4.2.7 版本中的 ApiRouter.php#parseApiRoute 在解决用户的 Get 申请时未对申请参数无效过滤,导致攻击者可向 Joomla 服务端点发送蕴含 public=true 参数的申请(如:/api/index.php/v1/config/application?public=true&key=value) 进行未受权拜访。 修复计划:在4.2.8版本中对破绽进行了修复,倡议用户将Joomla降级至 4.2.8 及以上版本破绽链接: https://www.oscs1024.com/hd/M...以下内容来自公众号《平安日记》 Erikten 对该破绽的剖析: 0x00 环境搭建间接去 Github 上下载即可 https://github.com/joomla/joomla-cms/releases/tag/4.2.80x01 破绽剖析这个破绽的实质就是一个变量笼罩导致的越权,咱们能够去diff一下,看看官网是怎么修复这个变量笼罩破绽的 `https://github.com/joomla/joomla-cms/commit/5897df8ee39056fbd37624eeeeff1b81e24d84ef#diff-865580463b5f16d45dc41be7d57bf9f2ab7dd875215c2ad0471247f63b9e1b4c` array_key_exists()的作用就是判断数组中是否蕴含指定的键名,如果存在public这个键为true,接着通过unset()间接销毁这个变量。到这里聪慧的你指定晓得大略是怎么事儿了,就是笼罩了public这个变量,导致的越权 咱们间接在第一处红框哪里打断点,这里为了不便复现破绽,先正文掉补丁,拜访 /api/index.php/v1/config/application?public=true&key=value能够看到$query接管了咱们申请的参数 持续往下跟,会进行一个正则匹配,看看咱们的申请形式以及门路是否非法 咱们间接强制跳转到循环体内,能够看到$vars的值是获取的路由的默认值,这里public的值是false 这里因为$route下的routeVariables值为空,所以不会进入循环体 接着通过$route->getController()获取以后route的controller,里边的值别离对应控制器以及其下的办法名字 敲黑板敲黑板,接下来就是真正实现变量笼罩的中央,程序通过array_merge()来将多个变量合并到同一个数组下,能够看到此时$vars下边的public是false的 然而通过array_merge()解决,将$query的值进行合并的时候产生了笼罩,能够看一下官网对于array_merge()的解释 所以合并后的public变成了true 为什么说这里改了public为true就能越权,这是因为libraries/src/Application/ApiApplication.php:304进行了权限校验,如果$route下的public存在或者public的值为false,那么就进行身份校验 最终咱们就绕过了身份校验,实现了越权 在后面剖析的时候会有一个遍历routes的操作,那些都是受影响的接口 收费情报订阅 & 代码平安检测墨菲平安是一家为您提供业余的软件供应链平安治理的科技公司,外围团队来自百度、华为、乌云等企业,公司为客户提供残缺的软件供应链平安治理平台,围绕SBOM提供软件全生命周期的平安治理,平台能力包含软件成分剖析、源平安治理、容器镜像检测、破绽情报预警及商业软件供应链准入评估等多个产品。为客户提供从供应链资产辨认治理、危险检测、安全控制、一键修复的残缺控制能力。同时产品能够极低成本的和现有开发流程中的各种工具一键买通,包含 IDE、Gitlab、Bitbucket、Jenkins、Harbor、Nexus 等数十种工具无缝集成。 代码平安检测: https://www.murphysec.com/?sf=v832dc情报订阅: https://www.oscs1024.com/cm/?sf=v832dc破绽库:https://www.oscs1024.com/hl/?sf=v832dc

February 23, 2023 · 1 min · jiezi

关于安全漏洞:漏洞真实影响分析Apache-Kafka-Connect-模块JNDI注入CVE202325194

系列简介:破绽实在影响剖析是墨菲平安实验室针对热点破绽的剖析系列文章,帮忙企业开发者和平安从业者理清破绽影响面、梳理实在影响场景,晋升平安应急响应和破绽治理工作效率。破绽概述Apache Kafka Connect服务在2.3.0 至 3.3.2 版本中,因为连贯时反对应用基于JNDI认证的SASL JAAS配置,导致配置在被攻击者可控的状况下,可能通过JNDI注入执行任意代码。 此破绽不影响 Kafka server(broker),Kafka Connect服务通常用于在云平台中提供Kafka数据迁徙、数据同步的管道能力,其默认HTTP API凋谢于8083端口。 因而倡议对基于Kafka Connect提供的Kafka数据管道服务进行排查,判断是否存在配置可控的状况,对于受影响的服务应将 kafka-clients 降级至 3.4.0 及以上版本。 破绽原理Apache Kafka Connect 是Kafka中用于和其余数据系统传输数据的服务,其独立运行版本能够在Kafka公布包中通过bin/connect-standalone.sh启动,默认会在8083端口开启HTTP REST API服务,可对连接器(Connector)的配置进行操作。 连接器(Connector)是用于连贯其余数据源的模块,从 2.3.0 版本开始,为了减少连接器的可重用性和可扩展性,用户可批改 kafka 客户端的 SASL JAAS(受权服务) 配置或 SASL-based 平安协定。3.0.0 版本之后,Kafka Connect 标准化了 Kafka 与其余数据系统的集成,用户可不便地对 Kafka Connect 集群中的连接器属性进行配置。 将连接器中的 Kafka 客户端sasl.jaas.config属性值设置为 com.sun.security.auth.module.JndiLoginModule(通过 producer.override.sasl.jaas.config, consumer.override.sasl.jaas.config或 admin.override.sasl.jaas.config属性进行配置)时,如果连接器连贯到攻击者可控的 LDAP 服务器时容易受到反序列化攻打。 为修复此破绽,从 3.4.0 版本开始,增加了 org.apache.kafka.disallowed.login.modules 零碎属性用于禁用 SASL JAAS 配置中不平安的登录模块,并且默认禁用 com.sun.security.auth.module.JndiLoginModule。 Aiven云数据平台攻打场景案例 Aiven是位于芬兰的数据库即服务(DBaaS)公司,提供了包含Kafka、MySQL、ClickHouse等在内的云数据服务。 其在 Kafka 中就提供了 Connect 服务,用于将数据通过不同的数据源导入导出 Kafka。 ...

February 13, 2023 · 1 min · jiezi

关于安全漏洞:喜讯云起无垠获评2022年度十大新锐企业

2023年1月3日,平安419《年度策动》系列流动评比后果正式出炉。云起无垠作为新一代智能含糊测试领跑者,获评《2022年度十大新锐企业》! 2022年12月1日,平安419正式启动《2022年度策动》,承载一年调研走访市场以及编辑团队对行业的察看了解,一方面从编辑视角向用户举荐行业中值得关注的一众优良企业,展示网络安全畛域的技术创新、实际积淀与倒退空间;另一方面与业界单干围绕法律法规顶层设计、投融资赋能、重磅安全事件等维度开展系列盘点,对2022年做出主观总结。其中,「2022年度新锐企业」定位于举荐具备技术创新力且成立五年内的行业新生力量。 云起无垠作为平安界的新锐,成立之初以新一代智能含糊测试技术作为切入点,实现商业化的同时帮忙甲方企业解决业务零碎的平安问题。Fuzzing作为一种无效的破绽开掘与健壮性检测技术,可主动生成海量测试用例,并让被测程序动静执行,同时监控被测程序的运行过程,进而发现程序暴露出的缺点。 传统的Fuzzing工具因为生成测试用例时过于随机,其测试存在盲目性,尽管能够无效检测零碎缺点,但检测效率难以失去保障。针对传统含糊测试遇到的瓶颈,云起无垠联合AI技术自研发了主新一代智能含糊测试技术,通过联合笼罩疏导、动态剖析、动静符号执行、语法示意、动静污点剖析和机器学习等多种技术,大大提高了Fuzzing的效率,并且在事实的软件中发现了大量破绽。截至目前,云起无垠针对“协定”和“代码”的两款含糊测试零碎曾经为测评核心、运营商、智能车企等泛滥行业客户提供了平安检测反对,并帮忙企业检测出了不少高危破绽。 其中,针对“协定”的无垠协定含糊测试零碎是一款黑盒测试工具,在不须要知悉应用程序外部结构的前提下便能够进行平安检测,目前曾经笼罩了蓝牙、WIFI中50余种协定的检测;针对“代码”的无垠代码含糊测试零碎是一款灰盒测试工具,在不须要源代码的前提下针对二进制文件进行平安检测,笼罩了开发、测试、上线运维等阶段,能够更好地赋能软件开发生命周期的平安检测工作,让业务零碎更平安。 此次入选是平安419技术专家对云起无垠技术创新力的认可。云起无垠将持续放弃技术创新的激情,在Fuzzing技术基座之上,一直打磨技术,以提供更欠缺的产品和解决方案,帮忙更多企业解决平安需要问题。

January 5, 2023 · 1 min · jiezi

关于安全漏洞:Apache-Tomcat-存在-JsonErrorReportValve-注入漏洞CVE202245143

破绽形容Apache Zeppelin是一款基于 Web 可实现交互式数据分析的notebook产品。 在Apache Zeppelin 0.10.1及以前的版本中“Move folder to Trash”性能存在门路遍历破绽,因为未对InterpreterSettingManager类remove办法中id参数进行正确校验,攻击者可通过结构蕴含../的参数实现门路穿梭,利用破绽删除zeppelin相干或其余任意文件。 破绽名称Apache Tomcat 存在 JsonErrorReportValve 注入破绽破绽类型注入发现工夫2023/1/4破绽影响广度个别MPS编号MPS-2022-64112CVE编号CVE-2022-45143CNVD编号-影响范畴org.apache.tomcat:tomcat-catalina@[9.0.40, 9.0.69) org.apache.tomcat:tomcat-catalina@[10.1.0-M1, 10.1.2) org.apache.tomcat:tomcat-catalina@(-∞, 8.5.84) 修复计划降级org.apache.tomcat:tomcat-catalina到 8.5.84 或 9.0.69 或 10.1.2 或更高版本 参考链接https://www.oscs1024.com/hd/MPS-2022-64112 https://nvd.nist.gov/vuln/detail/CVE-2022-45143 https://github.com/apache/tomcat/commit/b336f4e58893ea35114f1e4a415657f723b1298e https://tomcat.apache.org/security-8.html 情报订阅OSCS(开源软件供应链平安社区)通过最快、最全的形式,公布开源我的项目最新的平安危险动静,包含开源组件安全漏洞、事件等信息。同时提供破绽、投毒情报的收费订阅服务,社区用户可通过配置飞书、钉钉、企业微信机器人,及时取得一手情报信息推送: https://www.oscs1024.com/cm/?src=sf 具体订阅形式详见: https://www.oscs1024.com/docs/vuln-warning/intro/?src=sf

January 5, 2023 · 1 min · jiezi

关于安全漏洞:漏洞分析Apache-ShardingSphereProxy-530-身份认证绕过

破绽简介2022年12月22日,Apache 官网布告公布 ShardingSphere-Proxy 5.3.0 之前版本存在身份绕过破绽(CVE-2022-45347)。当 ShardingSphere-Proxy 应用 MySQL 作为后端数据库时,因为 ShardingSphere-Proxy 在客户端认证失败后没有齐全清理数据库会话信息,攻击者可利用未敞开的会话信息绕过 ShardingSphere-Proxy 的 MySQL 身份验证,执行任意 sql 命令。 破绽剖析Apache ShardingSphere 是一个可将任意数据库转换为分布式数据库的生态系统,ShardingSphere-Proxy 是一个反对 MySQL 和 PostgreSQL 的数据库代理,提供了一个数据库服务器,并封装了数据库二进制协定来反对异构语言。 以 Apache ShardingSphere 5.2.1 版本为例, 用户可通过配置连贯 ShardingSphere-Proxy 操作后端 MySQL 数据库: (ShardingSphere-Proxy 利用场景示意图) 在该破绽中存在的交互过程如下 (MySQL client 与 ShardingSphere-Proxy 交互图) 以Python为例,当应用谬误的账号密码通过 MySQL连贯库(如pymysql)连贯 ShardingSphere-Proxy: import pymysql# MySQL client 连贯 ShardingSphere-Proxydb = pymysql.connect(host='localhost', port=3307, user='root', password='Wrong password', database='sharding_db')cursor = db.cursor()cursor.execute("show tables")results = cursor.fetchall()print(results)db.close()此时pymysql将依据返回的报文抛出异样,程序终止: (ShardingSphere-Proxy 身份认证失败抛出异样) 但这时ShardingSphere-Proxy 的 MySQL 身份认证模块并未敞开 MySQL 客户端连贯会话: ...

December 27, 2022 · 1 min · jiezi

关于安全漏洞:OSCS开源安全周报第23期Foxit-PDF-ReaderEditor-任意代码执行漏洞

本周平安态势综述OSCS 社区共收录安全漏洞10个,其中公开破绽值得关注的是 Apache Airflow Hive Provider <5.0.0 存在操作系统命令注入破绽(CVE-2022-46421)vm2 < 3.9.10 存在任意代码执行破绽(CVE-2022-25893)Foxit PDF Reader/Editor 任意代码执行破绽(CVE-2022-28672)Splunk Enterprise 存在任意代码执行破绽(CVE-2022-43571)Apache Karaf 存在近程代码执行破绽(CVE-2022-40145)Apache ShardingSphere-Proxy <5.3.0 存在身份认证绕过破绽(CVE-2022-45347)Ghost CMS 存在访问控制不当破绽(CVE-2022-41654)Linux Kernel ksmbd模块存在任意代码执行破绽(CVE-2022-47939)针对 NPM 、PyPI 仓库,共监测到 25 个不同版本的 NPM 、PyPI 投毒组件,投毒组件都在尝试获取主机敏感信息;在多个不同名称的 PyPI 包中发现 W4SP 窃取器。 重要安全漏洞列表1、Apache Airflow Hive Provider <5.0.0 存在操作系统命令注入破绽(CVE-2022-46421) Apache Airflow 是一个用于以编程形式创作、安顿和监控工作流平台。Apache Airflow Hive Provider 是一个应用 SQL 读取、写入和治理分布式存储中的大型数据集的工具包。 Apache Airflow Hive Provider 在 5.0.0 之前的版本中因为对airflow/providers/apache/hive/hooks/hive.py文件中hive_cli_params参数不正确初始化,导致存在操作系统命令注入破绽。 未经身份验证的近程攻击者能够将特制数据(run_cli函数的hive_conf参数可控)传递给应用程序,并在指标零碎上执行任意操作系统命令。 参考链接:https://www.oscs1024.com/hd/M... 2、vm2 < 3.9.10 存在任意代码执行破绽(CVE-2022-25893) vm2 是一个基于 Node.js 的沙箱环境,能够应用列入白名单的 Node 内置模块运行不受信赖的代码。 vm2 3.9.10之前版本中因为 WeakMap.prototype.set 办法应用原型查找从而存在任意代码执行破绽,攻击者可利用此破绽在沙箱内执行任意恶意代码,导致沙箱解体或获取主机对象信息。 ...

December 26, 2022 · 1 min · jiezi

关于安全漏洞:OSCS开源安全周报第22期NuGet-仓库中被发现-135-万个包含钓鱼地址的组件包

本周平安态势综述OSCS 社区共收录安全漏洞15个,公开破绽值得关注的是 Jenkins Google Login Plugin 存在凋谢重定向破绽(CVE-2022-46683),Netty <4.1.86.Final 存在拒绝服务破绽(CVE-2022-41881),Apache Atlas import 性能存在门路遍历破绽(CVE-2022-34271),Apache Zeppelin 任意文件删除破绽(CVE-2021-28655)。 针对 NPM 、PyPI 仓库,共监测到 25 个不同版本的 NPM 、PyPI 投毒组件,投毒组件都在尝试获取主机敏感信息;Checkmarx 和 Illustria 的钻研人员发现超过 14.4 万个蕴含钓鱼地址的软件包,其中 13.5 万个位于 NuGet 仓库。 重要安全漏洞列表1、Jenkins Google Login Plugin 存在凋谢重定向破绽(CVE-2022-46683) Jenkins 是一个用 Java 开发的开源自动化服务器,Google Login 是一款反对用户应用 Google 帐户登录 Jenkins 的插件。 Google Login Plugin 的受影响版本中因为胜利登录后的重定向 URL 没有正确指向 Jenkins,攻击者可利用此破绽将通过登录验证的用户的 url 重定向到歹意站点进行网络钓鱼攻打,从而获取用户 token 等敏感信息,应用用户身份执行歹意操作等。 参考链接:https://www.oscs1024.com/hd/M... 2、Netty <4.1.86.Final 存在拒绝服务破绽(CVE-2022-41881) Netty 是一个异步事件驱动的网络应用程序框架,用于疾速开发可保护的高性能协定服务器和客户端。 Netty 4.1.86.Final 之前版本中的 HaProxyMessageDecoder 模块因为未对用户传入的附加数据(TLV)的递归长度进行无效限度,当解析循环嵌套的 PP2_TYPE_SSL 类型的 TLV 数据时会因为栈的缓冲区溢出造成拒绝服务。如果 HAProxyMessageDecoder 用作 Netty ChannelPipeline 的一部分解析歹意数据会捕捉 StackOverflowError 异样,如果间接解析歹意数据则会抛出 Exception 异样或服务解体。攻击者可通过向 netty 发送歹意 TLV 数据造成拒绝服务,用户可通过应用自定义的 HaProxyMessageDecoder 缓解此破绽。 ...

December 19, 2022 · 1 min · jiezi

关于安全漏洞:202210微软漏洞通告

微软官网公布了2022年10月的安全更新。本月更新颁布了96个破绽,蕴含39个特权晋升破绽、20个近程执行代码破绽、11个信息泄露破绽、8个拒绝服务破绽、5个身份混充破绽以及2个平安性能绕过破绽,其中13个破绽级别为“Critical”(高危),71个为“Important”(重大)。倡议用户及时应用火绒安全软件(集体/企业)【破绽修复】性能更新补丁。 波及组件Active Directory Domain ServicesAzureAzure ArcClient Server Run-time Subsystem (CSRSS)Microsoft Edge (Chromium-based)Microsoft Graphics ComponentMicrosoft OfficeMicrosoft Office SharePointMicrosoft Office WordMicrosoft WDAC OLE DB provider for SQLNuGet ClientRemote Access Service Point-to-Point Tunneling ProtocolRole: Windows Hyper-VService FabricVisual Studio CodeWindows Active Directory Certificate ServicesWindows ALPCWindows CD-ROM DriverWindows COM+ Event System ServiceWindows Connected User Experiences and TelemetryWindows CryptoAPIWindows DefenderWindows DHCP ClientWindows Distributed File System (DFS)Windows DWM Core LibraryWindows Event Logging ServiceWindows Group PolicyWindows Group Policy Preference ClientWindows Internet Key Exchange (IKE) ProtocolWindows KernelWindows Local Security Authority (LSA)Windows Local Security Authority Subsystem Service (LSASS)Windows Local Session Manager (LSM)Windows NTFSWindows NTLMWindows ODBC DriverWindows Perception Simulation ServiceWindows Point-to-Point Tunneling ProtocolWindows Portable Device Enumerator ServiceWindows Print Spooler ComponentsWindows Resilient File System (ReFS)Windows Secure ChannelWindows Security Support Provider InterfaceWindows Server Remotely Accessible Registry KeysWindows Server ServiceWindows StorageWindows TCP/IPWindows USB Serial DriverWindows Web Account ManagerWindows Win32KWindows WLAN ServiceWindows Workstation Service以下破绽需特地留神Windows COM+ 事件零碎服务特权晋升破绽 ...

October 17, 2022 · 1 min · jiezi

关于安全漏洞:202208微软漏洞通告

微软官网公布了2022年08月的安全更新。本月更新颁布了141个破绽,蕴含65个特权晋升破绽、32个近程执行代码破绽、12个信息泄露破绽、7个拒绝服务破绽、7个平安性能绕过破绽以及1个身份混充破绽,其中17个破绽级别为“Critical”(高危),105个为“Important”(重大)。倡议用户及时应用火绒安全软件(集体/企业)【破绽修复】性能更新补丁。 波及组件.NET CoreActive Directory Domain ServicesAzure Batch Node AgentAzure Real Time Operating SystemAzure Site RecoveryAzure SphereMicrosoft ATA Port DriverMicrosoft Bluetooth DriverMicrosoft Edge (Chromium-based)Microsoft Exchange ServerMicrosoft OfficeMicrosoft Office ExcelMicrosoft Office OutlookMicrosoft Windows Support Diagnostic Tool (MSDT)Remote Access Service Point-to-Point Tunneling ProtocolRole: Windows Fax ServiceRole: Windows Hyper-VSystem Center Operations ManagerVisual StudioWindows Bluetooth ServiceWindows Canonical Display DriverWindows Cloud Files Mini Filter DriverWindows Defender Credential GuardWindows Digital MediaWindows Error ReportingWindows HelloWindows Internet Information ServicesWindows KerberosWindows KernelWindows Local Security Authority (LSA)Windows Network File SystemWindows Partition Management DriverWindows Point-to-Point Tunneling ProtocolWindows Print Spooler ComponentsWindows Secure BootWindows Secure Socket Tunneling Protocol (SSTP)Windows Storage Spaces DirectWindows Unified Write FilterWindows WebBrowser ControlWindows Win32K以下破绽需特地留神Microsoft Windows 反对诊断工具 (MSDT)近程代码执行破绽CVE-2022-34713 / CVE-2022-35743重大级别:重大 CVSS:7.8被利用级别:检测到利用 / 很有可能被利用利用该破绽的攻击者须要诱导用户从网站下载并关上特制的文件,从而在他们的本地计算机执行任意代码。其中CVE-2022-34713曾经检测到在朝利用。 ...

August 11, 2022 · 1 min · jiezi

关于安全漏洞:活动回顾-大咖云集开源安全治理模型和工具线上研讨会

软件吞噬世界,而开源正在吞噬软件。越来越多企业开始关注如何解决混源开发模式下的软件供应链平安问题。软件供应链安全事件频发,已成为企业发展经营流动面临的重大隐患,也是所有平安厂商致力于要解决的问题。 7 月 22 日下午,中国信息通信研究院与 OpenSSF 中国开源平安工作组携手华为、中兴、安势信息等合作伙伴,围绕“开源平安治理的模型和工具”主题召开线上研讨会。研讨会邀请了 OpenSSF 中国开源平安工作组的专家、行业大咖共六位重磅嘉宾为大家带来精彩的主题演讲! 首先带来精彩分享的是 OpenSSF 亚太技术布道师 Donald Liu,Donald 在名为“SLSA、SBOM 与平安治理”的主题演讲中对 SLSA 的整体框架和 SLSA 1 到 4 级不同要求的技术规范进行了具体介绍;在软件包公布、第三方软件洽购和在承受软件包的代码仓库的利用场景下,企业可基于 SLSA 对软件、供应链和它们的组成部分进行评级,帮忙评估软件品质。对于 SBOM 和 SLSA 的联合,Donald 示意:SBOM 和 SLSA 能够搭配应用,遵循相干的 SLSA 准则能够更容易地生成更精准可信的 SBOM,帮忙构建平安的软件供应链。对 SLSA 感兴趣的小伙伴能够退出 OpenSSF 的 Supply Chain Integrity 工作小组,共建平安开源生态。 现如今,混源开发模式已成为常态,开源软件的应用比例越来越高。但开源对平安是把双刃剑。 华为开源管理中心专家穆文锋带来了名为“开源要害我的项目辨认和依赖关系危险评估”的精彩演讲。首先他指出开源软件存在的典型问题:太多的依赖,太少的维护者。特地是一些风行的驰名开源组件被宽泛应用时,一旦呈现安全漏洞造成的结果往往十分重大。那么该如何改良开源我的项目的平安情况?穆文锋别离从开源软件要害我的项目辨认、开源软件要害我的项目看护和开源软件我的项目平安剖析三个方面介绍了业界在开源软件平安方面获得的优秀成果,并对 Census Program II、Critically Score、Alpha-Omega、Scorecord 我的项目进行了具体的解说。最初他分享了 CII(Core Infrastructure Initiative)要害基础设施倡导,其中最佳实际徽章(The Best Practices Badge)是平安开源开发的榜样。 随着软件供应链攻打浪潮愈演愈烈,寰球开源基金会和开源组织奉献了很多优良的开源平安治理模型和框架来帮忙企业实现更平安的软件开发和部署流程。SLSA 作为创立“安全软件供应链”的框架,将供应链爱护晋升到了新的程度。那么如何将这些优良的框架落地到企业的实际中? 上海安势信息技术有限公司资深解决方案架构师朱贤曼带来了名为“SLSA 和 SBOM 如何撑持企业应答供应链平安危险”的主题演讲,进一步分享了 SLSA 和 SBOM 在企业的落地实际和摸索。随着开源组件应用的比例越来越高,企业很难通过保护 Excel 表格的模式去做对立的治理,不仅会节约大量的人力,这种形式的准确性、有效性也值得商讨。目前在企业实际中,开发人员通过 SCA 工具生成 SBOM 清单来高效治理应用的开源组件。特地是针对产品线泛滥或笼罩寰球销售市场的企业,SBOM 可施展微小的作用,助力企业追溯安全漏洞。 ...

July 29, 2022 · 1 min · jiezi

关于安全漏洞:Spark312-321-330版本shell命令注入漏洞

实验室昨天第一工夫监测到的0day破绽,目前已上线检测破绽形容Spark 是用于大规模数据处理的对立剖析引擎。因为 Hadoop 中"org.apache.hadoop.fs.FileUtill"类的“unTar”中针对 tar 文件的解决调了系统命令去解压,造成了 shell 命令注入的危险。攻击者能够通过该破绽实现任意命令执行。 影响产品:Apache spark 发现工夫:2022-03-24 11:12:38 发现形式:墨菲平安实验室情报预警监控 组件名称:org.apache.spark:spark-core 影响版本:3.1.2, 3.2.1, 3.3.0 缺点类型:shell命令注入 缺点评级:高危 墨菲平安实验室于3月24日监测发现spark存在shell命令注入破绽,已第一工夫报送CNVD。 破绽剖析在spark 3.1.2, 3.2.1, 3.3.0版本的 core/src/main/scala/org/apache/spark/util/Utils.scala 代码中调用了FileUtil.unTar办法对tar包进行解压 FileUtil.unTar办法在非windows的环境中调用了unTarUsingTar办法 Spark中调用的unTarUsingTar办法为hadoop中的hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileUtil.java,其对文件名拼接之后通过tar命令进行解压,在处理过程中未对文件名进行本义。 处理倡议官网已公布补丁,参考链接:https://github.com/apache/spark/commit/057c051285ec32c665fb458d0670c1c16ba536b2 参考链接https://github.com/apache/spark/commit/057c051285ec32c665fb458d0670c1c16ba536b2https://issues.apache.org/jira/browse/SPARK-38631https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileUtil.java#L892https://github.com/apache/hadoop/commit/cae749b076f35f0be13a926ee8cfbb7ce4402746

March 26, 2022 · 1 min · jiezi

关于安全漏洞:被盗4900万互联网巨头竟败给小学生

上次讲了淘宝把钥匙插在保险柜上透露11.8亿用户手机号的故事,吃瓜大众广泛反映干货太多,技术太浅近,篇幅太长,那么明天来集体人都能看懂的。 一顿操作猛如虎,一看余额两万五。劳而不获忍不住,三年牢饭苦煞吾。《那些年,互联网巨头犯过的低级谬误》第二集来啦,有请我的共事小亮,一个浙大毕业造无人机的小哥哥,给大家讲讲小学生黑掉百度外卖4900万的故事。 以下为小亮同学的处女作 人生的三大问,是什么?要我说,三大问就是“早饭吃什么?”、“午饭吃什么?”、“晚饭吃什么?”。 打工人日子苦,每一顿饭都要考虑再三 然而吧,万一平台账户余额千万元的“壕”,竟是我本人,那还愁什么“三大问”。小孩子才做选择题,成年人我全都要! “钱钱都是他们的,我什么都没有”?不存在的!百度外卖,助力每一个幻想(要坐牢的,别试) 1. 千万余额诞生记“百度外卖”平台零碎被非法侵入,4900余万元被篡改,下单单数覆盖全国多个地区,人数达百余人,间接生产损失30余万元。《北京青年报》 2018-01-30 A092017年10月的一天,郑某照常关上百度外卖平台,筹备来份外卖。 好巧不巧,余额没了。难道得饿肚子? 那不能呀,必定得弄点钱。看着账户所剩无几的余额,他灵光一闪,一个好法子应运而生。 一顿操作猛如虎,再看余额两万五! 独乐乐不如众乐乐,这一“平凡发现”不久就呈现在群聊中、论坛上,播种一众“楼主坏蛋”、“lz毕生安全”。 当然,认知差不管何时,总是能赚钱的,按下不表。 短时间内大江南北的网友齐上阵,“薅”的“羊毛”加起来有千万元之多。 这一天,百度外卖“成就”了不少一日百万富翁。 2. “生财圣手”方法论那么(聪慧机智的)立功嫌疑人郑某,到底是钻了什么漏子呢? 报道中对于此次案件的形容,用词为“非法侵入”、“篡改”,案件性质却是盗窃案。 借用一下范大将军的经典语录,意思还就是说的那个意思:“人家百度外卖也有理由说的,我在的什么公司啊,我在的BAT之一的百度公司,你这郑某是什么人啊,你来hack我?立功嫌疑人是什么程度?就这一个人,他能hack吗?hack不了,没这个能力晓得吧?” 那么此次“非法侵入”(划去)偷盗事件是如何产生的呢?背地的原理真是简略得不得了,十字路口轻易丢块石头,都能砸到两个会这种“侵入”的。 首先,明确破绽所在位置。所谓的“系统漏洞”,有且只有产生在百度外卖平台的提现零碎中,具体表现为:提现操作能够减少账户余额。 必定有小伙伴要说了:“不对啊!提现,账户余额必定缩小了,怎么还能减少呢?” 如果有同样的纳闷,没问题,接着往下看。 而后,明确破绽处的业务流程。提现操作,行将平台虚构账户中的金额按照用户的需要数量,转移到另一账户中。反映在数据上,提现的操作就是 “原先账户余额”减去“提现金额”,失去“最新账户余额”,是一个简略的减法操作。 减法能出什么错呢?还真能!可别想当然,减去的数能够是负数,也能够是正数。 最初,操作!赚钱!(不是)。破绽产生时,百度外卖平台提现零碎中,用户填写的“提现金额”的数值,还就真能够为正数!这意味着“原先账户余额”减去了一个正数,“最新账户余额”相较于先前,反而减少了!离谱,的确离谱。 失常的提现业务零碎里,操作的减法运算应受到足够限度,包含限度“原先账户余额”要大于等于“提现金额”(否则新的账户余额会变成正数)、限度“提现金额”要大于0(确保“提现”操作使得账户余额缩小了)。 很显著,百度外卖的提现业务代码中,短少了对于“提现金额”的参数校验,减法运算中“原先账户余额”能够减去正数,那么“最新账户余额”天然就增大了。 祝贺百度外卖提现零碎,达成成就:“虚空印钞机” 3. 安全事故警示录2018年1月4日,北京市海淀区人民检察院以涉嫌盗窃罪批准逮捕郑某。郑某为本人的“钻漏子”行为付出了法律的代价。 案件另一方的百度外卖平台,间接生产损失近30万元人民币。破绽风波过后,百度外卖的名声慢慢隐去,只留得饿了么、美团外卖持续在互联网外卖市场中拼杀。 互联网三巨头如百度,旗下产品在波及金钱交易业务方面,也曾犯下参数验证缺失的简略谬误,且被大范畴利用,造成巨量损失,属实不应该。 发现破绽莫贪婪,伸手必被抓;小小负号,亦可造成千万元损失。无处不在的安全漏洞,须要宽广互联网企业时刻留神,小心提防。 关注咱们的微信公众号,继续为您解读《那些年,巨头犯下的低级谬误》

March 9, 2022 · 1 min · jiezi

关于安全漏洞:Windows-MSHTML远程代码执行漏洞风险通告更新腾讯安全支持全面检测拦截

2021年9月8日,微软官网公布危险通告,公开了一个无关Windows MSHTML 的近程代码执行破绽。有攻击者试图通过应用特制的Office文档来利用此破绽,该破绽危险为高,腾讯平安已捕捉在朝利用样本,腾讯平安全系列产品已反对对该破绽的歹意利用进行检测拦挡,倡议Windows用户警觉来历不明的文件,防止轻易关上可疑文档。 破绽详情:2021年9月8日,微软官网公布危险通告,公开了一个无关Windows MSHTML的近程代码执行破绽。攻击者通过应用特制的Office文档来利用此破绽,攻击者制作歹意 ActiveX控件,坑骗压服指标用户关上歹意文档。与应用治理用户权限操作的用户相比,帐户配置为在零碎上领有较少用户权限的用户受到的影响较小。 腾讯平安已捕捉在朝利用,并胜利结构破绽PoC(概念验证代码)验证胜利。腾讯平安专家揭示用户小心处理来历不明的文档,Office默认设置“受爱护的视图”能够加重歹意文件危险,倡议Windows用户亲密关注该破绽的进一步信息,及时装置安全补丁。 破绽编号:CVE-2021-40444 破绽等级:高风险,CVSS评分8.8 破绽状态: 受影响的版本:破绽影响包含Windows 7/8/8.1/10,Windows Server 2008/2012/2016/2019/2022等各个支流版本。 破绽缓解措施:破绽暂无补丁,为0day状态。腾讯平安专家揭示用户小心处理来历不明的文档,Office默认设置“受爱护的视图”能够加重歹意文件危险。 默认状况下,Microsoft Office 在爱护视图或关上来自 Internet 的文档正告,这两者都能够避免以后的攻打。 在 Internet Explorer 中禁用所有 ActiveX 控件的装置能够加重这种攻打。能够通过更新注册表为所有站点实现。先前装置的 ActiveX 控件将持续运行,但不会裸露此破绽。 能够通过编辑注册表禁用ActiveX 控件的装置: 将以下内容粘贴到文本文件中并应用 .reg 文件扩展名保留,而后双击导入注册表,重启零碎后失效。 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0]"1001"=dword:00000003"1004"=dword:00000003 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\1]"1001"=dword:00000003"1004"=dword:00000003 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2]"1001"=dword:00000003"1004"=dword:00000003 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3]"1001"=dword:00000003"1004"=dword:00000003 腾讯平安解决方案:· 腾讯高级威逼检测零碎(NTA,御界)规定库日期2021.9.9之后的版本已反对检测利用Windows MSHTML 近程代码执行破绽(CVE-2021-40444)的攻打;· 腾讯主机平安(云镜)破绽库日期2021.9.9之后的版本已反对检测Windows MSHTML 近程代码执行破绽危险;· 腾讯零信赖无边界拜访控制系统(iOA)、腾讯电脑管家均已反对在终端零碎检测拦挡利用Windows MSHTML 近程代码执行破绽的攻打。腾讯iOA检测到破绽攻打 腾讯电脑管家拦挡到破绽攻打 工夫线:2021.9.7,微软官网公布危险通告;2021.9.8,腾讯平安公布危险通告;2021.9.9,破绽POC、EXP及在朝攻打样本均已呈现。腾讯平安全系列产品反对对该破绽的歹意利用进行检测拦挡。 参考链接:https://msrc.microsoft.com/up...

September 9, 2021 · 1 min · jiezi

关于安全漏洞:Metasploit入门教程手把手教你如何使用Metasploit

引言Metasploit我的项目是一个旨在提供安全漏洞信息计算机平安我的项目,能够帮助平安工程师进行浸透测试(penetration testing)及入侵检测零碎签名开发。Metasploit我的项目最为出名的子项目是开源的Metasploit框架,一套针对近程主机进行开发和执行“exploit代码”的工具。 Metasploitable 是一个刻意制作进去蕴含破绽的Linux虚拟机零碎。它能够用来做平安训练,测试平安工具和练习浸透测试技术。本文将应用Metasploit和Metasploitable和大家独特分享一下如何应用Metasploit这块浸透测试利器针对特定版本的vsftpd进行利用达到控制目标主机的目标。本文采纳Metasploit和Metasploitable的镜像安装包,从而免去了繁琐的软件装置、环境配置阶段,相干下载链接在文章开端。利用的vsftpd2.3.4版本的vsftpd存在这样的一个破绽,当在用户名后加上":)"时会触发ftp服务器的6200端口连贯的shell 浸透利用过程(1)首先应用nmap查看指标主机,指标即为装置了Metasploitable的服务器(本文装置Metasploit的服务器IP:192.168.5.141,装置Metasploitable的服务器ip:192.168.5.1.169)凋谢的端口执行命令:nmap 192.168.5.169 (2)应用Metasploit搜查和ftp无关的扫描模块,执行命令:search scanner/ftp (3)因为该破绽只针对特定版本的vsftpd(2.3.4版本)所以首选须要应用auxiliary/scanner/ftp/ftp_version模块探测指标机器上vsftpd的版本号执行命令 1、use auxiliary/scanner/ftp/ftp_version 2、set RHOSTS 192.168.5.1593、exploit (4)搜查该服务可能被利用的利用模块search vsftpd (5)应用该模块use exploit/unix/ftp/vsftpd_234_backdoorset RHOSTS 192.168.5.169exploit 总结咱们通过利用2.3.4版本的ftp存在一个backdoor破绽胜利拿到指标机器的shell。以上过程仅供大家学习,不足之处也心愿大家多多指导!切勿将其非法路径,违法必究!下载链接:首先请关注微信公众号平安明码盒,扫描下方二维码即可关注回复"metasploit"即可获取Metasploit的下载链接回复“metasploitable”即可获取Metasploitable的下载链接

August 24, 2021 · 1 min · jiezi

关于安全漏洞:CVE20162183-修复过程亲测有效

问题形容SSL/TLS协定信息泄露破绽(CVE-2016-2183)TLS是平安传输层协定,用于在两个通信应用程序之间提供保密性和数据完整性。 TLS, SSH, IPSec协商及其他产品中应用的DES及Triple DES明码存在大概四十亿块的生日界,这可使近程攻击者通过Sweet32攻打,获取纯文本数据。 2.问题解决过程 首先从这个破绽介绍中得悉 https://www.openssl.org/news/secadv/20160922.txtOpenSSL 1.1.0 当前没有此破绽,并且本地的openssl 版本高于1.1.0 换个思路去找问题 通过上面链接理解nmap 扫描工具能够晓得破绽的起源(复测) https://www.e-learn.cn/topic/3756431nmap装置形式请另行百度(案例的服务器是redhat,去官网下载的rpm包,rpm -ivh 包就装置胜利了) 通过上面的命令失去后果nmap -sV --script ssl-enum-ciphers -p 443 www.example.com (ip 也能够) 发现3DES 加密是C级别的,并且有个warning 跟 CVE-2016-2183 的形容大略统一 3.解决问题 https://blog.csdn.net/warrior_wjl/article/details/25000541通过配置nginx 的设置 ssl_ciphers HIGH:!aNULL:!MD5:!3DES;注: !3DES是后增加的过滤 之后nginx -t 查看配置文件nginx -s reload 重启nginx 4.复测nmap -sV --script ssl-enum-ciphers -p 443 www.example.com (ip 也能够) 问题解决

December 15, 2020 · 1 min · jiezi

关于安全漏洞:腾讯安全玄武实验室推出快充安全测试服务

9月16日,在腾讯平安发动的快充平安行业交流会上,腾讯平安玄武实验室正式推出面向快充行业的平安测试服务。这是实验室首次公开向行业凋谢平安测试服务。 (图为安克公司产品线总经理萧昂、腾讯平安玄武实验室负责人于旸、小米AIoT实验室负责人孟卓独特启动玄武快充测试公布典礼) 7月中旬,腾讯平安玄武实验室披露了一项快充畛域的重大平安问题“BadPower”,攻击者可通过改写快充设施的固件管制充电行为,造成被充电设施元器件烧毁,甚至更重大的结果。报告指出,受“BadPower”影响的终端设备数量可能数以亿计。 腾讯平安玄武实验室于3月将该问题上报给国家主管机构CNVD,并引起了快充行业的高度重视。为了升高BadPower的影响,帮忙快充行业晋升安全性,玄武正式推出快充设施平安检测服务,该测试服务蕴含新设施测试、衍生测试和再测试,快充设施厂商可依据本身须要抉择测试模式和我的项目,在产品通过全副基线测试项目后,厂商将会取得由玄武实验室颁发的平安证书,而未通过测试的厂商则会收到玄武实验室依据测试后果提供的平安批改倡议。 “2015年咱们报告了扫码器里存在的Badbarcode破绽,有扫码器厂商找过去找咱们做检测,做完之后厂商把咱们实验室的LOGO放到了他们官网上,示意他们的设施通过了玄武的检测,有更高的安全性。往年BadPower披露之后,也有不少快充相干厂商来寻求单干,咱们意识到这是一个普遍存在的需要,于是决定把咱们的检测能力向行业凋谢。”腾讯平安玄武实验室负责人于旸介绍道。 安克公司高级研发总监冯耀辉示意:“咱们在设施的硬件安全上做了很多措施,也有比拟成熟的计划,但固件层面带来的平安问题对咱们来说还是新的挑战。这次也是因为玄武的钻研咱们才发现存在这类型平安问题,随着设施越来越智能、交互界面更多,能够预感这种平安问题会越来越多。咱们会和包含玄武实验室在内的平安机构建设更多单干,晋升咱们设施整体的平安水准。” 随着数字化过程减速,越来越多设施开始接入网络,但因为制作老本、安全意识等方面起因,很多设施在生产制作时对于平安问题不足器重。2015年玄武实验室发现的扫码器的BadBarcode和2017年底发现的屏下指纹“残迹重用”问题,都是芯片固件层面的问题,其中BadBarcode问题发现时曾经在行业里存在了十几二十年,大量的存量设施让这个平安问题的修复变得更简单,过来五年中玄武也始终继续对此发展工作。“基于有以上两个案例的教训,咱们这些年始终在呐喊平安前置,要从生产阶段前置到设计阶段,玄武实验室始终在踊跃钻研设计过程中引入的平安问题。” 随着数字化的减速,数字世界和物理世界的边界越来越含糊,信息安全除了影响比特世界,也会带来物理上的平安问题。5G、AI、工业互联网、物联网的倒退让这些平安问题更严厉,腾讯平安玄武实验室也在针对这些新兴技术畛域开展平安钻研,并在将来逐渐将平安钻研能力产品化,向行业凋谢,晋升行业平安程度。 附:如您须要快充平安检测服务,请分割xlab@tencent.com。

September 18, 2020 · 1 min · jiezi

外媒疑华为装针头大小的间谍装置任正非回应用不着

9 月 19 日,华为心声社区发布总裁任正非接受《纽约时报》专栏作家托马斯 弗里德曼采访纪要,采访时间为9月9日。 托马斯·弗里德曼:有一个非常资深的美国政府官员告诉我,华为的 PCB 板和手机上都可以安装一个针头大小的装置,用于从事间谍活动,相当于一个后门,所以我们不能信任华为。他说你如果知道我所知道的事实,你肯定不会购买华为的手机和 5G 设备。 任正非:这是一个天方夜谭的科幻故事,如果华为有这么高水平,还用得着卖 5G 吗?任何人在一个公司参观可能都是高度机密的,唯有华为公司,美联社参观的时候,允许他们对我们的整个展厅拍摄,也允许对新 5G 基站的电路板拍视频,拍了很长时间,他们还对所有设备都拍了照片。我们是一家商业公司,做这个「小米粒」目的是什么呢? 新闻来源:华为心声社区

September 19, 2019 · 1 min · jiezi

谷歌数据泄露和解-隐瞒事件-7-个月-497-万人受害

9 月 10 日早间,据彭博报道,谷歌已就此前泄露近 50 万用户数据一事和用户达成和解,目前正在敲定条款。 根据公开报道,此次解决的应该是 2018 年 10 月爆出的 Google+ 用户数据泄露事件,该事件直接导致谷歌提前关闭了 Google+ 这一产品。 据了解,本次事件的内容和让 Facebook CEO 扎克伯格到国会听证会受审的“剑桥分析”一案很像,都是由于隐私条款漏洞,让用户数据可以被其他用户或 APP 随意调用,导致大规模泄露。 更严重的是,该问题早在 2015 年就已出现,直到 2018 年 3 月才被发现,而由于担心招致监管、审查并导致声誉受损,谷歌又拖延了 7 个月才报告问题。受害用户人数为 49.7 万人。 新闻来源:前瞻网

September 10, 2019 · 1 min · jiezi

缓冲区溢出栈溢出

前言在现在的网络攻击中,缓冲区溢出方式的攻击占据了很大一部分,缓冲区溢出是一种非常普遍的漏洞,但同时,它也是非常危险的一种漏洞,轻则导致系统宕机,重则可导致攻击者获取系统权限,进而盗取数据,为所欲为。 其实缓冲区攻击说来也简单,请看下面一段代码: void main(int argc, char *argv[]) { char buffer[8]; if(argc > 1) strcpy(buffer, argv[1]);}当我们在对argv[1]进行拷贝操作时,并没对其长度进行检查,这时候攻击者便可以通过拷贝一个长度大于8的字符串来覆盖程序的返回地址,让程序转而去执行攻击代码,进而使得系统被攻击。 本篇主要讲述缓冲区溢出攻击的基本原理,我会从程序是如何利用栈这种数据结构来进行运行的开始,试着编写一个shellcode,然后用该shellcode来溢出我们的程序来进行说明。我们所要使用的系统环境为x86_64 Linux,我们还要用到gcc(v7.4.0)、gdb(v8.1.0)等工具,另外,我们还需要一点汇编语言的基础,并且我们使用AT&T格式的汇编。 就我个人而言,作为一个新手,我还是比较怂来写这篇文章而言的,如果你发现又任何的错误或者不恰当的地方,欢迎指出,希望这篇文章对您有帮助。 进程在现代的操作系统中,进程是一个程序的运行实体,当在操作系统中运行一个程序是,操作系统会为我们的程序创建一个进程,并给我们的程序在内存中分配运行所需的空间,这些空间被称为进程空间。进程空间主要有三部分组成:代码段,数据段和栈段。如下图所示: 栈栈是一种后入先出的数据结构,在现代的大多数编程语言中,都使用栈这种数据结构来管理过程之间的调用。那什么又是过程之间的调用呢,说白了,一个函数或者一个方法便是一个过程,而在函数或方法内部调用另外的过程和方法便是过程间的调用。我们知道,程序的代码是被加载到内存中,然后一条条(这里指汇编)来执行的,而且时不时的需要调用其他的函数。当一个调用过程调用一个被调用过程时,所要执行的代码所在的内存地址是不同的,当被调用过程执行完后,又要回到调用过程继续执行。调用过程调用被调用过程时,需要使用call指令,并在call指令后指明要调用的地址,例如call 地址,当被调用过程返回时,使用ret指令来进行返回,但是并不需要指明返回的地址。那么程序是怎么知道我们要返回到什么地方呢?则主要是栈的功劳:执行call指令时,程序会自动的将call的下一条指令的地址加入到栈中,我们叫做返回地址。当程序返回时,程序从栈中取出返回地址,然后使程序跳转到返回地址处继续执行。 另外,程序在调用另一个过程时需要传递的参数,以及一个过程的局部变量(包括过程中开辟的缓冲区)都要分配在栈上。可见,栈是程序运行必不可少的一种机制。 但是,聪明的你可能一想:不对,既然程序的返回地址保存在栈上,过程的参数以及局部变量也保存在栈上,我们可以在程序中操纵参数和局部变量,那么我们是否也能操作返回地址,然后直接跳转到我们想要运行的代码处呢?答案当然是肯定的。 改变程序的返回地址我们看这也一个程序。 example.cvoid func() { long *res; res = &res + 2; *res += 7;}void main() { int x = 1; func(); x = 0; printf("%d\n", x);}我们在shell中使用如下命令编译运行一下,对于gcc编译时所用的参数,我们先卖个关子。 $ `gcc -fno-stack-protector example.c -o example`$ ./example你或许会说:“哎呀呀,不用看了,这么简单,运行结果是0嘛”。但结果真的是这样嘛。其实,这个程序的运行结果是1。“什么,这怎么可能是1嘛,不得了不得了” 还记的我们提到的我们可以在程序中改变过程的返回地址吗?在func中,看是是对res进行了一些无意义的操作,但是这却改变了func的返回地址,跳过了x = 0这条赋值命令。让我们从汇编的层面上看一下这个程序是如何执行的。 $ gdb gdb exampleGNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-gitCopyright (C) 2018 Free Software Foundation, Inc....gdb-peda$ disassemble func Dump of assembler code for function func: 0x000000000000064a <+0>: push %rbp 0x000000000000064b <+1>: mov %rsp,%rbp 0x000000000000064e <+4>: lea -0x8(%rbp),%rax 0x0000000000000652 <+8>: add $0x10,%rax 0x0000000000000656 <+12>: mov %rax,-0x8(%rbp) ... 0x000000000000066e <+36>: retq End of assembler dump.在gdb中,我们使用disassemble func来查看一下func函数的汇编代码,在这里,程序栈上的情况是这样的,其中栈的宽度为8字节: ...

September 8, 2019 · 4 min · jiezi

WEB-安全漏洞之目录遍历

什么是目录遍历第一次接触到目录遍历漏洞还是在 ThinkJS 2 的时候。代码如下图,目的是当用户访问的 URL 是静态资源的时候返回静态资源的地址。其中 pathname 就是用户访问的 URL 中的路径,我们发现代码中只是简单的解码之后就在22行将其与资源目录做了拼接,这就是非常明显的目录遍历漏洞了。 为什么这么说呢?假设用户访问的 URL 是 http://xxx.com/../../../xxx.jpg 的话最终返回的文件地址就会变成 think.RESOURCE_PATH 的上三层目录中的文件了。而这种利用网站的安全缺陷来列出服务器目录或者文件的方式就成为目录遍历漏洞(Directory traversal),也称之为路径遍历漏洞(英文:Path traversal)。 目录遍历在英文世界里又名../ 攻击(Dot dot slash attack)、目录攀登(Directory climbing)及回溯(Backtracking)。其部分攻击手段也可划分为规范化攻击(Canonicalization attack)。via: wikipedia目录遍历的危害目录遍历最大的危害是能够让任意用户访问系统的敏感文件,继而攻陷整个服务器。例如获取linux下的/etc/passwd文件后可能会破解出root用户的密码等。 防御方法可以看到大部分情况下问题的关键就是 ../ 目录跳转符,所以防御的第一要务就是它进行过滤。除了过滤之外,还可以针对最终的文件路径进行判断,确保请求文件完整目录后的头N个字符与文档根目录完全相同,如果相同则返回内容,否则则可能是攻击地址不予返回。 回到文章开头说的那个代码问题,最终就是通过上述方法修复的,对最终的文件地址进行规范化后判断开头是否包含 RESOURCE_PATH 目录,如果不包含则返回空。

August 28, 2019 · 1 min · jiezi

最近出现的几大疑似漏洞大家需要了解下

随着大数据时代的发展,互联网的技术更是突飞猛进。同时也给了网络犯罪分子带来了有利条件,他们会通过各种方式去给企业造成不同程度的威胁。而我们最常见的就是他们通过程序系统漏洞或者源码漏洞等方式。今天小编关注到CNVD即(国家信息安全漏洞共享平台)统计发布了近期出现的几大疑似漏洞,做为网络运维的我们需要了解下。 1、Sequelize SQL注入漏洞 ,是一款用于Node.js的数据库ORM(对象关系映射)工具。漏洞描述:Sequelize 5.8.11之前版本中存在SQL注入漏洞。该漏洞源于基于数据库的应用缺少对外部输入SQL语句的验证。攻击者可利用该漏洞执行非法SQL命令。 2、Mozilla Thunderbird类型混淆漏洞,是美国Mozilla基金会的一套从Mozilla Application Suite独立出来的电子邮件客户端软件。该软件支持IMAP、POP邮件协议以及HTML邮件格式。漏洞描述:Mozilla Thunderbird 60.7.1 之前版本中的icalproperty.c文件存在类型混淆漏洞。攻击者可通过诱使用户打开特制的邮件利用该漏洞造成应用程序崩溃。3、歪酷CMS存在文件上传漏洞,是一套内容管理系统。漏洞描述:歪酷CMS存在文件上传漏洞,攻击者利用该漏洞获取网站服务器控制权。4、TPshop开源商城系统Ap*.php文件存在SQL注入漏洞,TPshop一套多商家模式的商城系统。漏洞描述:TPshop开源商城系统Ap*.php文件存在SQL注入漏洞,攻击者可利用该漏洞获取数据库敏感信息。5、致远A8+协同管理软件存在远程Getshell漏洞,是一款协同管理软件及云服务的供应商,专注专注在协同管理软件领域。漏洞扫描:致远A8+协同管理软件存在远程Getshell漏洞。攻击者通过上传精心构造的后门文件即可Getshell,获得目标服务器的权限。6、IBM Security Access Manager Appliance开放重定向漏洞,是美国IBM公司的一款基于网络设备的安全解决方案。该产品主要用于访问控制和基于Web的威胁防护,提供系统性能监控、日志分析和诊断等功能。漏洞描述:IBM ISAM Appliance中存在安全漏洞。攻击者可通过诱使用户访问特制的网站利用该漏洞伪造URL,将用户重定向到恶意的网站,获取敏感信息或实施其他攻击。7、Mozilla Firefox和Firefox ESR安全绕过漏洞(CNVD-2019-19289),两款都是美国Mozilla基金会的产品。Mozilla Firefox是一款开源Web浏览器。Mozilla Firefox ESR是Firefox(Web浏览器)的一个延长支持版本。漏洞扫描:Mozilla Firefox 67.0.4之前版本和Firefox ESR 60.7.2之前版本中存在安全漏洞。攻击者可通过诱使用户访问特制的网站利用该漏洞绕过安全限制。8、RDK WebUI组件访问控制错误漏洞和RDK CcspWifiAgent模块命令执行漏洞,是RDK Management社区的两套模块化、可移植、可定制的开源物联网软件解决方案。CcspWifiAgent是其中的一个支持WiFi功能的模块。漏洞扫描:RDK RDKB-20181217-1版本中的WebUI组件的actionHandlerUtility.php文件存在访问控制错误漏洞。攻击者可通过向PHP后端发送HTTP POST请求利用该漏洞控制DDNS、QoS、RIP和其他的特权配置。漏洞描述:RDK RDKB-20181217-1版本中的CcspWifiAgent模块的cosa_wifi_apis.c文件存在安全漏洞。攻击者可通过将Wi-Fi网络密码更改成包含有特制转义字符的密码利用该漏洞执行任意的shell命令。 针对以上疑似漏洞的程序,墨者安全建议去相对应的官方网站下载最新的补丁程序进行更新;对待开源商城模式的漏洞、电子邮件的混淆漏洞等重点排查,账号密码更改;做一些临时缓解的措施,配置URL访问控制策略;采用专业的查杀工具进行查杀处理,重点扫描;找专业的安全技术人员帮忙协助做深入的排查等。(注:漏洞信息转载于CNVD即国家信息安全漏洞共享平台)

June 27, 2019 · 1 min · jiezi

FIBOS 周报

FIBOS 稳定币的上线2018年12月21日,FIBOS 发布了稳定币—— FOD,并且成功通过了社区多签。2018年12月28日, FIBOS 的稳定币 FOD 正式上线。早在2018年9月,全球市场在一个月时间内爆发出现了十多种稳定币,市场规模达到了30亿美元。FIBOS 生态中有不少项目在实体经济落地时需要保障项目价值的稳健发展,需要以稳定币作为通证准备金,为满足生态的发展需求,服务于区块链项目落地的稳定币—— FOD 应运而生。FOD 在 FIBOS 生态中的价值体现FIBOS 默认提供了以 IBO 为基础经济模型的发币方式。然而,作为 Bancor 准备金的区块链资产价格受市场影响波动大,又不利于实体项目的落地和发展。因此,需要一种价值相对稳定,价格变化幅度小的的区块链资产作为准备金,这也就是常说的“稳定币”。FOD 在 FIBOS 生态中如何使用目前市场上有十多种稳定币项目,全球最大也是最早的稳定币 USDT 财务监管不透明,好几次都出现了「脱锚」的现象,所以我们没有选择 USDT 作为我们锚定的稳定币。经过 FIBOS 研发团队研究,最终 FIBOS 选择监管更严、财务更透明的 USDC 作为稳定币来源。通过去中心化的跨链技术生成稳定币 FOD,USDC 与 FOD 是1:1锚定。具体而言,FOD 主要用途如下:1.以 FOD 作为项目准备金,发行项目的智能通证。2.基于 Bancor 模型发行的项目稳定币,与 FOD 是1:1锚定。对于项目方来说,可以选择以 FOD 做准备金,发行项目的智能通证,当 cw=100%时,发行的智能通证就是项目自己的“稳定币”。3.以项目稳定币为准备金,发行项目的智能通证。目前,基于 FIBOS 平台有多个项目正在规划基于稳定币发行项目通证。比如,全球最大的游戏虚拟资产交易平台,比价器项目;进口美国高端 Jeep 整车改装项目;拥有一万多会员的酒吧众筹项目等等。相信 FDO 的出现会让更多的项目成功落地到实体经济,促进整个生态系统的良性发展!深圳率先试点区块链电子发票微信上线开票功能,深圳开出全国第一张区块链发票2018年7月2日,国家税务总局批复授权深圳成为全国首个试点区块链电子发票的城市。12月11日,许多深圳市民发现,微信支付的菜单中,多了一个“开发票”的选项。只需按动屏幕,短短1分钟,便可完成从付款到完成开票的全过程。深圳市税务局局长张国钧介绍“这是我们与腾讯公司合作开发的微信支付开具区块链电子发票功能。”,今年下半年,深圳开出了全国第一张区块链发票。此次微信开票功能的上线,意味着区块链电子发票,正式走入了深圳市民的日常生活。交易数据即发票信息,区块链电子发票方便市民“交易即开票”是区块链电子发票最大的特点。区块链电子发票是“互联网+税务”的深度融合产物,是完全依靠算法、而非人力开具出来的消费和支付凭证。区块链电子发票区别于传统电子发票之处,在于其以区块链技术实现加密处理,具有“分布式”存储、可追溯、不可篡改的优势,通过“资金流+发票流”的合二为一,将发票开具与线上支付相结合,实现了“交易数据即发票信息”。如今,顾客通过微信付款后,“付款通知”下方比往常多了“开发票”按钮。顾客只需点击按钮,便可调取微信“我的发票抬头”功能,完成开票操作,整个过程不到1分钟。据 FIBOS 团队调研发现,腾讯内部其实有孵化一个联盟链项目 Trust SQL。目前暂未开源,其目标是结合自有的腾讯云来打造一个「区块链 BAAS」服务。跟深圳税务局合作的这个区块链电子发票服务有没有使用到这个项目,也不得而知。总体而言,对于像腾讯这样的大公司进入区块链领域,并且真正实施一些落地项目,对区块链领域是一个重大利好。区块链发票渗入209家企业,有助于税务查验深圳市税务局统计,目前全市已有7家开票服务商及1个报销平台与区块链电子发票系统实现了对接。截至2018年12月12日,已上线的32家试点企业共开具区块链电子发票17570张,现已完成注册接入企业涉及餐饮业、停车服务、零售业、互联网服务、金融业等行业共计209家企业。2019年1月1日,六大个税抵扣、社会保险费由税务部门统一征收等一批新规正式实施。今年的个税新规受到社会各界的广泛关注,大家普遍反映中产阶级得到了实惠。在未来,相信区块链落地个税查验也将会离我们越来越近,以后大家也可以通过区块链技术更加详细的了解自己的个税情况。响马畅谈区块链现状及未来公链未来的演化路径会是怎样的很多时候我们会从历史的发展来考虑未来。比如说最初的从比特币到以太坊,是去中心化不断演变的一个过程。很多人认为弱去中心化的就不是区块链的,这样先入为主的观念约束了我们对未来发展的想法和判断,以后很多的区块链可能不是公链,可能是联盟链、私有链,共同组合成类似万链的、多级分层网状结构,响马认为这是区块链的未来,公链的需求会越来越小。等再到下一个阶段呢,社会对公链的需求会再次提升。但那个时候对公链的需求和现在又完全不同。区块链和传统行业如何结合响马认为区块链的商业化和产业化会很快到来,社会化会更晚一些。商业化和产业化是需要真正在供给侧和产业相结合,创造更多的产能、提高效率,而社会化更多需要挖掘区块链 to C 的特性,如果目前不能在供给侧创造出价值的话,那么面向 C 端现在还是略微早了一些。区块链的繁荣生态是什么样子?一个好的互联网生态,一定是用户可以通过互联网享受到更多的服务,比如抖音、淘宝、微信等等;同样,一个好的区块链生态繁荣起来也需要为用户提供足够多的优质服务,至于这些服务是什么,现在还很难想象得到。这个过程是需要我们去摸索的。未来的公链更像是 to C 的产品,响马认为接下来两年里面,可能区块链对标的应该是 to B 的产品。现阶段如果直接面向大规模用户提供服务,很容易遇到很多问题,因为 to C 对用户的体验要求是很高的,to B 的产品在现阶段是有需求和用户体验忍受能力的,接下来2年,to B 能够解决多少问题,是决定区块链能不能跑出赛道的最根本的方向。区块链能改善”技术不值钱“的处境吗?响马表示区块链解决的问题并不会让技术、或者让生产力更值钱,很多人说区块链能改善生产关系。其实我更加认为,区块链能降低价值流通的成本,让价值传递更快、成本更低,将更碎片化的资产传递给对方,如果能实现,受益的不仅仅是程序员,而是整个行业。区块链安全—— EOS 遭到回滚攻击2018-12-28凌晨,攻击 BetDice、ToBet 等游戏的黑客团伙再次对 LuckyMe、GameBet 发动攻击,造成数千 EOS 的损失。此次黑客采用的手法有别于上一次的攻击。本次的攻击为针对项目方的重放攻击。受攻击游戏的列表游戏类别时间游戏名损失值竞猜类12.18晚-12.19凌晨EOSMAX55000EOS竞猜类12.18晚-12.19凌晨ToBet22000EOS竞猜类12.18晚-12.19凌晨BigGame14903.18EOS竞猜类12.18晚-12.19凌晨BetDice200000EOS竞猜类12.18晚-12.19凌晨TRUSTBET11501EOS据 PeckShield 报道,其中的竞猜类游戏 BetDice 近一周日均活跃度超 5,000 人,交易额也在 5,000 万 EOS 以上。PeckShield 创始人蒋旭宪表示,这次攻击背后是同一个团伙或个人。攻击 BetDice 的账号 hnihpyadbunv 创建了账号 eykkxszdrnnc,用来攻击 EOSMax 与 BigGame。账号 eykkxszdrnnc 又创建了子账号 kfexzmckuhat 用来攻击 ToBet。攻击成功后,再频繁创建子账户转移所得资产。回滚攻击手法分析我们知道 EOS 采用的共识算法是 DPOS 算法,采用的是 21 个超级节点轮流出块的方式。除了 21 个超级节点外的其他全节点,并没有出块的权限。起到的作用是将收到的交易广播出去,然后超级节点将其进行打包。说到这里,很容易看出,如果一笔交易是发给除了超级节点外的其他全节点,这笔交易会经历两个过程。首先,这笔交易先被全节点接收,然后交易再被节点广播出去进行打包。而一笔交易是需要超级节点中超过 2/3+1 的节点进行确认之后才是不可回滚的,也就是不可逆的。这个过程大概需要 3 分钟左右,也就是说,交易发到除了超级节点外的全节点的时候,由于全节点没有打包的权利,此时此刻交易仍然处于可逆状态这是一个核心关键点。每一个 bp(超级节点),都可以在自己的节点的 config.ini 文件内进行黑名单的配置,在黑名单中的帐号是不能进行交易的,也就是说无论怎样,黑名单的交易都会被回滚。防御建议1、针对 DApp 的防御建议(1)节点开启 read only 模式,防止节点服务器上出现未确认的块 (2)建立开奖依赖,如订单依赖,开奖的时候判断订单是否存在,就算在节点服务器上开奖成功,由于在 bp 上下注订单被回滚,所以相应的开奖记录也会被回滚。2、针对交易所和中心化钱包的防御建议建议 EOS 交易所及中心化钱包在通过 RPC 接口 get_actions 查询热钱包充值记录时,应检查充值 transaction 所在的 block_num 是否小于 last_irreversible_block(最新不可逆区块),如果 block_num 大于 last_irreversible_block 则表示该区块仍然是可逆的,存在“假充值”风险。3、项目方在玩家下注的时候校验交易中的 actor 和 from 是否是同一帐号。4、节点要实时更新黑名单。 ...

January 4, 2019 · 1 min · jiezi