知更鸟Begin主题代码实现外链转内链并base64加密
【性价之王】 | 【线路之王】 | 【价格之王】 | 【配置之王】 |
【免费之王】 | 【香港首推】 | 【梯子之王】 | 【独服之王】 |
在WordPress博客安装了知更鸟的begin主题。在使用某些浏览器打开WordPress博客,首页会出现未经证实的bocai的提示。
赶紧申诉,官方给解了,后来回了一封邮件
[ad]
您好:人工审核后结果如下
经人工核实,贵方网站还存在被恶意篡改页面,请贵方仔细核实并恢复网站正常。
譬如:https://www.***.com/wp-content/themes/begin/inc/go.php?url=http://www.****.com
请贵方修复漏洞并检查好域名下的所有HOST/URL确保没有木马后再次提交申诉信息。
看了一下该链接是利用了begin主题的跳转样式,后面跟的网址可以换成任何一个网址,搜索了一下网站数据库,确实找到一条留言是这个网址,赶紧删除,然后就是改一下主题的外链跳转样式
这个方法就是为外链添加跳转页面 ,一方面把评论者链接进行了加密,另一个方面转为内链进行跳转。
以下代码是对知更鸟Begin主题进行修改,外链转内链并base64加密。
<?php if(strlen($_SERVER['REQUEST_URI']) > 255 || strpos($_SERVER['REQUEST_URI'], "eval(") || strpos($_SERVER['REQUEST_URI'], "base64")) { @header("HTTP/1.1 414 Request-URI Too Long"); @header("Status: 414 Request-URI Too Long"); @header("Connection: Close"); @exit;}//通过QUERY_STRING取得完整的传入数据,然后取得url=之后的所有值,兼容性更好$t_url = preg_replace('/^url=(.*)$/i','$1',$_SERVER["QUERY_STRING"]); //此处可以自定义一些特别的外链,不需要可以删除以下5行if($t_url=="rat0" ) { $t_url="http://www.rat0.com";} elseif($t_url=="baidu") { $t_url="https://www.baidu.com/";} //数据处理if(!empty($t_url)) { //判断取值是否加密 if ($t_url == base64_encode(base64_decode($t_url))) { $t_url = base64_decode($t_url); } //对取值进行网址校验和判断 preg_match('/^(http|https|thunder|qqdl|ed2k|Flashget|qbrowser):\/\//i',$t_url,$matches); if($matches){ $url=$t_url; $title='页面加载中,请稍候...'; } else { preg_match('/\./i',$t_url,$matche); if($matche){ $url='http://'.$t_url; $title='页面加载中,请稍候...'; } else { $url = 'http://'.$_SERVER['HTTP_HOST']; $title='参数错误,正在返回首页...'; } }} else { $title = '参数缺失,正在返回首页...'; $url = 'http://'.$_SERVER['HTTP_HOST'];}?><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta name="robots" content="noindex, nofollow" /><noscript><meta http-equiv="resh" content="1;url='<?php%20echo%20$url;?>';"></noscript><script>function link_jump(){ //禁止其他网站使用我们的跳转页面 var MyHOST = new RegExp("<?php echo $_SERVER['HTTP_HOST']; ?>"); if (!MyHOST.test(document.errer)) { location.h="http://" + MyHOST; } location.h="<?php%20echo%20$url;?>";}//延时1S跳转,可自行修改延时时间setTimeout(link_jump, 1000);//延时50S关闭跳转页面,用于文件下载后不会关闭跳转页的问题setTimeout(function(){window.opener=null;window.close();}, 50000);</script><title><?php echo $title;?></title><style type="text/css">body{background:#555}.loading{-webkit-animation:fadein 2s;-moz-animation:fadein 2s;-o-animation:fadein 2s;animation:fadein 2s}@-moz-keyframes fadein{from{opacity:0}to{opacity:1}}@-webkit-keyframes fadein{from{opacity:0}to{opacity:1}}@-o-keyframes fadein{from{opacity:0}to{opacity:1}}@keyframes fadein{from{opacity:0}to{opacity:1}}.spinner-wrapper{position:absolute;top:0;left:0;z-index:300;height:100%;min-width:100%;min-height:100%;background:rgba(255,255,255,0.93)}.spinner-text{position:absolute;top:45%;left:50%;margin-left:-100px;margin-top:2px;color:#000;letter-spacing:1px;font-size:20px;font-family:Arial}.spinner{position:absolute;top:45%;left:50%;display:block;margin-left:-160px;width:1px;height:1px;border:20px solid rgba(255,0,0,1);-webkit-border-radius:50px;-moz-border-radius:50px;border-radius:50px;border-left-color:transparent;border-right-color:transparent;-webkit-animation:spin 1.5s infinite;-moz-animation:spin 1.5s infinite;animation:spin 1.5s infinite}@-webkit-keyframes spin{0%,100%{-webkit-transform:rotate(0deg) scale(1)}50%{-webkit-transform:rotate(720deg) scale(0.6)}}@-moz-keyframes spin{0%,100%{-moz-transform:rotate(0deg) scale(1)}50%{-moz-transform:rotate(720deg) scale(0.6)}}@-o-keyframes spin{0%,100%{-o-transform:rotate(0deg) scale(1)}50%{-o-transform:rotate(720deg) scale(0.6)}}@keyframes spin{0%,100%{transform:rotate(0deg) scale(1)}50%{transform:rotate(720deg) scale(0.6)}}</style></head><body><div class="loading"> <div class="spinner-wrapper"> <span class="spinner-text">页面加载中,请稍候...</span> <span class="spinner"></span> </div></div></body></html>在网站根目录建立一个文件夹命名为go,将以上代码保存为index.php,放到go文件夹内.
整合代码
打开知更鸟主题的begin\inc\function\default.php文件,对照下面的代码一一替换
A.文章外链替换
// 外链跳转if (zm_get_option('link_to')) { add_filter('the_content','link_to_jump',999); function link_to_jump($content){ preg_match_all('/<a(.*?)h="(.*?)"(.*?)>/',$content,$matches); if($matches){ foreach($matches[2] as $val){ if(strpos($val,'://')!==false && strpos($val,'www.rat0.com')===false && !preg_match('/\.(jpg|jepg|png|ico|bmp|gif|tiff)/i',$val) && !preg_match('/(ed2k|thunder|Flashget|flashget|qqdl):\/\//i',$val)){ $content=str_replace("h=\"$val\"", "h=\"".home_url()."/go/?".base64_encode($val)."\" rel=\"nofollow\"",$content); } } } return $content; }B.评论外链替换
// 评论者链接跳转并新窗口打开 function commentauthor($comment_ID = 0) { $url = get_comment_author_url( $comment_ID ); $author = get_comment_author( $comment_ID ); if ( empty( $url ) || 'http://' == $url ) echo $author; else echo "<a class="url" h="".home_url()."/go/?".base64_encode($url)."" target="_blank" rel="nofollow noopener">$author</a>"; }C.下载外链替换
// 下载外链跳转 function link_nofollow($url) { if(strpos($url,'://')!==false && strpos($url,home_url())===false && !preg_match('/(ed2k|thunder|Flashget|flashget|qqdl):\/\//i',$url)) { $url = str_replace($url, home_url()."/go/?".base64_encode($url),$url); } return $url; }}[WordPress]历史优惠活动内容
猜你可能想看的VPS
- PacificRack→$7.25 年 KVM-384MB 8GB 1T全球[VPS测评]
- 标准互联→新上特惠型美国裸金属服务器 8 核 32G 32ip 1G 带美国VPS[主机]
- IE 浏览器 iframe 自适应高度的两种方法(jquery 版本)全球[VPS测评]
- Indirect modification of overloaded 全球[VPS测评]
- hkserversolution 洛杉矶 圣何塞独立服务器,1G 10G独立服务器[U]
- 腾讯→我的医保 免费领取 3 个现金红包 秒到微信零钱全球[VPS测评]
- UOVZ→70 元 月 384MB 内存 5GB SSD 空间 600G虚拟空间(主机)
- 80VPS→香港服务器 E3-1230 16G 1T 10M 2IP 月香港VPS[主机]
- DMIT→新用户买 PVM.LAX.Pro 送 3 个月 PVM.LAX全球[VPS测评]
- Truxgo Servers→$160 月 L5630 8GB 内存 1韩国VPS[主机]
- spinservers→$99 月 2*e5-2630L v2 64g 美国VPS[主机]
- OneVPS→日本东京 能看美区 Netflix 1Gbps 不限流量 日本VPS[主机]
- 绝版补货 搬瓦工双向 CN2 GIA 线路 37.79 美元每年补货了全球[VPS测评]
- edgenat 全场VPS八折优惠 香港cn2/韩国cn2/美国高防cn韩国VPS[主机]
- BugetNode → 7G内存 70G储存 7T流量 荷兰高配鸡 月付全球[VPS测评]
- HostHatch 大容量VPS 1G 1T HDD 2T $5 月全球[VPS测评]
- 云计算的大门依旧没向雷军敞开全球[VPS测评]
- 磐逸云怎么样?CN2线路香港VPS月付20元香港VPS[主机]
- 菠萝云服务器怎么样?香港云主机BGP、CN2,2核1G2M带宽仅49元/香港VPS[主机]
- 56云服务器怎么样?56云服务器价格和优势是什么?全球[VPS测评]
- Aoyohost:1核1GB/20GB/600GB流量/60Mbps端口香港VPS[主机]
- 华纳云年终钜惠活动:云服务器半年低至280元,香港高防服务器999元香港VPS[主机]
- php168数据库配置文件在哪里?如何修改数据库配置文件全球[VPS测评]
- 野草云服务器怎么样?香港CN2+BGP带宽30M月付19元香港VPS[主机]
- 桔子数据:香港CN2大带宽云服务器28元/月_1核/1G/10M带宽/C香港VPS[主机]
- 狸猫云:香港高速CN2VPS,200元/年-香港高速GIA云服务器促销活香港VPS[主机]
- YYYHost年终钜惠来袭:香港建站云/美国Cera云月付8折,季付7折美国VPS[主机]
- 恒创科技怎么样?香港美国云服务器/独服/高防全场2.5折起美国VPS[主机]
- 永恒云:江苏挂机宝6元/月,60元/年;香港建站vps仅18元;深圳BG香港VPS[主机]
- 咖啡主机怎么样?美国洛杉矶高防vps,cn2直连,香港沙田vps美国VPS[主机]
转载请注明原文地址:http://www.motoll.com/read-223720.html