博客之家
  • 博客首页
  • 博客導航
  • 好文分享
  • 文章投稿
  • 给我留言
首页 未分类 正文

分享几套防御代码

博客之家 2017-12-03 19:16 未分类 阅读 3.44w

首先是SSL,js跳转!SSL是站点防御的一个十分好的帮手。



解决了哪些问题:PhP与Nginx实现不了ssl跳转的毛病,运用简洁的JS引用实现ssl跳转。



代码:

<script type="text/javascript">
var targetProtocol = "https:";
if (window.location.protocol != targetProtocol)
 window.location.href = targetProtocol +
  window.location.href.substring(window.location.protocol.length);
</script>



2.PHP实现waf防御效果:

<?php
/*云体检通用漏洞防护补丁v1.1
更新时间:2013-05-25
功能说明:防护XSS,SQL,代码执行,文件包含等多种高危漏洞
*/
$url_arr=array(
'xss'=>"\\=\\+\\/v(?:8|9|\\+|\\/)|\\%0acontent\\-(?:id|location|type|transfer\\-encoding)",
);
$args_arr=array(
'xss'=>"[\\'\\\"\\;\\*\\<\\>].*\\bon[a-zA-Z]{3,15}[\\s\\r\\n\\v\\f]*\\=|\\b(?:expression)\\(|\\<script[\\s\\\\\\/]|\\<\\!\\[cdata\\[|\\b(?:eval|alert|prompt|msgbox)\\s*\\(|url\\((?:\\#|data|javascript)",
'sql'=>"[^\\{\\s]{1}(\\s|\\b)+(?:select\\b|update\\b|insert(?:(\\/\\*.*?\\*\\/)|(\\s)|(\\+))+into\\b).+?(?:from\\b|set\\b)|[^\\{\\s]{1}(\\s|\\b)+(?:create|delete|drop|truncate|rename|desc)(?:(\\/\\*.*?\\*\\/)|(\\s)|(\\+))+(?:table\\b|from\\b|database\\b)|into(?:(\\/\\*.*?\\*\\/)|\\s|\\+)+(?:dump|out)file\\b|\\bsleep\\([\\s]*[\\d]+[\\s]*\\)|benchmark\\(([^\\,]*)\\,([^\\,]*)\\)|(?:declare|set|select)\\b.*@|union\\b.*(?:select|all)\\b|(?:select|update|insert|create|delete|drop|grant|truncate|rename|exec|desc|from|table|database|set|where)\\b.*(charset|ascii|bin|char|uncompress|concat|concat_ws|conv|export_set|hex|instr|left|load_file|locate|mid|sub|substring|oct|reverse|right|unhex)\\(|(?:master\\.\\.sysdatabases|msysaccessobjects|msysqueries|sysmodules|mysql\\.db|sys\\.database_name|information_schema\\.|sysobjects|sp_makewebtask|xp_cmdshell|sp_oamethod|sp_addextendedproc|sp_oacreate|xp_regread|sys\\.dbms_export_extension)",
'other'=>"\\.\\.[\\\\\\/].*\\%00([^0-9a-fA-F]|$)|%00[\\'\\\"\\.]");
$referer=emptyempty($_SERVER['HTTP_REFERER']) ? array() : array($_SERVER['HTTP_REFERER']);
$query_string=emptyempty($_SERVER["QUERY_STRING"]) ? array() : array($_SERVER["QUERY_STRING"]);
check_data($query_string,$url_arr);
check_data($_GET,$args_arr);
check_data($_POST,$args_arr);
check_data($_COOKIE,$args_arr);
check_data($referer,$args_arr);
function W_log($log)
{
$logpath=$_SERVER["DOCUMENT_ROOT"]."/log.txt";
$log_f=fopen($logpath,"a+");
fputs($log_f,$log."\r\n");
    fclose($log_f);
}
function check_data($arr,$v) {
foreach($arr as $key=>$value)
 {
if(!is_array($key))
    { check($key,$v);}
else
    { check_data($key,$v);}
if(!is_array($value))
    { check($value,$v);}
else
    { check_data($value,$v);}
 }
}
function check($str,$v)
{
foreach($v as $key=>$value)
    {
if (preg_match("/".$value."/is",$str)==1||preg_match("/".$value."/is",urlencode($str))==1)
        {
//W_log("<br>IP: ".$_SERVER["REMOTE_ADDR"]."<br>时间: ".strftime("%Y-%m-%d %H:%M:%S")."<br>页面:".$_SERVER["PHP_SELF"]."<br>提交方式: ".$_SERVER["REQUEST_METHOD"]."<br>提交数据: ".$str);
            print "您的提交带有不合法参数,谢谢合作";
exit();
        }
    }
}
?>
站长XSS,SQL等担忧迎刃而解!

3.PHP防御CC:
代码为酸奶博客首发,经过二次优化后发出。请先建立一个php文件,名为jiance.php,然后将以下代码放入,将php文件放入模板目录。

<?php
//代理IP直接退出
emptyempty($_SERVER['HTTP_VIA']) or exit('Access Denied');
//防止快速刷新
session_start();
$seconds = '60'; //时间段[秒]
$refresh = '25'; //刷新次数
//设置监控变量
$cur_time = time();
if(isset($_SESSION['last_time'])){
 $_SESSION['refresh_times'] += 1;
}else{
 $_SESSION['refresh_times'] = 1;
 $_SESSION['last_time'] = $cur_time;
}
//处理监控结果
if($cur_time - $_SESSION['last_time'] < $seconds){
 if($_SESSION['refresh_times'] >= $refresh){
  //攻击者跳转地址
   $url='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
  echo '<html><head><title>西顾5秒盾</title><h3><center><font color="#FF0000">检测到cc攻击请等待5秒跳转</font></center></h3><meta http-equiv="refresh" content="5;url='; 
  echo $url;
  echo '"/> </head></html>';
  exit();
 }
}else{
 $_SESSION['refresh_times'] = 0;
 $_SESSION['last_time'] = $cur_time;
}
?>



然后将以下代码扔入模板的header.php里即可生效!

include 'jianche.php';



没有一定基础建议不要乱改!

文章作者:博客之家
文章標題:分享几套防御代码
文章鏈接:https://www.likinming.com/2902.html
本站所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議,轉載請註明來自博客之家 !

📚 推荐阅读

  • 学习SEO该要做的事
  • 关键词排名是否提升如何看
  • 提高网站收录,百度WordPress结构化数据插件的使用小结
  • 刷点击快速提升关键词排名的方法
  • 谈谈网站是否需要做https!
  • 解密SEO优化大神是如何炼成的
  • 滋养润肤汤
  • 掌握SEO关键词挖掘也是一门技术

网站获取bing每日壁纸详细教程
« 上一篇 2017-12-03
EPS短网址Zblog插件
下一篇 » 2017-12-03

发表评论

请输入验证码
还没有评论, 告诉我们你的想法

搜尋有價值的

热门文章

  • TOP1
    博客之家今天正式上線
    14年前 202.38w
  • TOP2
    博客之家导航源码分享
    13年前 102.62w
  • TOP3
    李明的鲜果店
    9年前 87.76w
  • TOP4
    iPhone6 ios8不显示通话记录处理方法
    12年前 60.42w
  • TOP5
    给我们投稿
    14年前 56.85w
  • TOP6
    超级SEO外链工具源码分享
    14年前 52.06w
  • TOP7
    超级SEO外链工具
    14年前 40.03w
  • TOP8
    我的人生我作主——李明
    13年前 39.83w
  • TOP9
    腾讯电脑管家误报网站的申诉方法
    9年前 34.42w
  • TOP10
    博客之家改版成功
    14年前 29.41w
  • TOP11
    利用:before选择器给你的网站Logo添加扫光特效
    11年前 27.87w
  • TOP12
    多做运动的好处
    13年前 24.61w

最新评论

  • 博客之家5 个月前
    藏福守心,遠離是非,日子平穩,歲月安康
  • 张赛博客6 个月前
    有时候,错误的路上,努力越多,反而是沉没...
  • atmp1 年前
    心安即是归处
  • 博客之家1 年前
    @Eps工具网:Hi,午安...
  • Eps工具网1 年前
    早晨起来
  • Eps工具网1 年前
    来逛逛
  • Eps工具网1 年前
    Eps工具网
  • 今日头条新闻2021-07-01 17:33
    文章不错交个朋友
  • 栾。2021-05-04 22:59
    看看
  • 夏草2021-02-22 10:27
    远古外星人 (2009-2019)史前...

友情連結

  • A TECH ONE
  • EPS工具網
  • 2W工具網
  • 小杰工具箱
  • 舍力博客
  • 提交收錄
Copyright © 2026 博客之家 版權所有
關於本站| 免責聲明| sitemap| 簡體| 繁體
内容受版权保护,禁止复制!