文章目录:
我的index.PHP文件老是被注入广告代码?
一般有三种情况可以导致网站被攻陷1,主机太烂,主机被攻陷殃及你网站2,你网站登陆的地方检查不严格,别人可以顺利绕过你的登陆检查或着密码太弱,别人可以轻易猜出来3,有注入漏洞额,2和3其实是一个问题推荐你把网站整个下载下来,用杀毒软件扫描一下,再用dw源码搜索搜 "zend"关键字(方要用来检查后门用zend加了密,杀毒软件查不出来)如果这二种方法还没有查出来,那就分析你的网站log吧,主要看有类似 id=123' union select 1,1,1,1,1 from table 之类的get字串,要是还查不出来,找个高手给分析一下吧.
用什么工具检测php网站是否存在注入漏洞?
PHP的安全性现在是越来越好了PHP6。0版本都把存在的SQL漏洞都解决了
但是为了安全起见还是应该做安全检测
检测方法:SQL 注入法 、脚本代码、参数传递等方法 具体情况参看PHP官方网站 安全篇章
php网站在检测时总是提示网站存在sql注入漏洞
1,用正则表达式过滤一些SQL注入关键字。
2,尽量使用参数形式,少用拼凑型SQL语句
3,条件可以的话,请使用存储过程操作数据库.
4,转换参数类型.如是参数是数字型,则转换成数字型的才操作
public class AntiSqlInAttack
{
public System.Web.HttpRequest request;
public AntiSqlInAttack(System.Web.HttpRequest request)
{
this.request = request;
}
public bool CheckBadQuery()
{
//整串字符对比方法
//string badword = ";|'|*|%| and |20%and20%| master |20%master20%|exec|insert|select|delete|count|chr|mid|truncate|char|declare|update";
//string query = request.ServerVariables["Query_String"].ToString();
//string[] badwordArry = badword.Split(new char[] { '|' });
//for (int i = 0; i badwordArry.Length; i++)
//{
// string tempWord = badwordArry[i].Trim();
// if (query.IndexOf(tempWord) = 1)
// return true;
//}
//return false;
if (request.QueryString.Count != 0)
{
for (int i = 0; i request.QueryString.Count; i++)
{
if (CheckBadWord(request.QueryString[i].ToString()))
return true;
}
}
return false;
}
public bool CheckBadForm()
{
if (request.Form.Count 0)
{
for (int i = 0; i request.Form.Count; i++)
{
if (CheckBadWord(request.Form[i]))
return true;
}
}
return false;
}
public bool CheckBadWord(string str)
{
string pattern = @"select|insert|delete|from|count\(|drop table|update|truncate|asc\(|mid\(|char\(|xp_cmdshell|exec master|netlocalgroup administrators|:|net user|""|or|and";
if (Regex.IsMatch(str, pattern, RegexOptions.IgnoreCase) || Regex.IsMatch(str, @"[-|;|,|\/|\(|\)|\[|\]|\}|\{|%|@|\*|!|\']"))
return true;
return false;
}
/**//// summary
/// 反SQL注入
/// /summary
public void AntiSqlInjectionAttack()
{
if (CheckBadQuery() || CheckBadForm())
{
string msg = string.Empty;
msg += "span style='font-size:12px;'非法操作!系统做了如下记录!br";
msg += "操作IP:" +Utils.GetRealIP()+ "br";
msg += "操作时间:" + DateTime.Now + "br";
msg += "页面:" + request.ServerVariables["URL"].ToLower() + "br";
msg += "a href=\"#\" onclick=\"history.back()\"返回上一页/a/span";
MessageBox.ResponseWrite(msg, true);
}
}
}
php网站源码
朋友,看得出来你想用心来经营一个网站,如果你是一个做企业的,建议寻找合适的技术合作商,如果你是想自己做一个网站或者准备以为通过帮别人做网站挣点外快,我觉得你在寻找PHP源码的时候要考虑以下几点:
1、网站源码也就是建站程序的安全性。这很重要(原来我用DEDE做了一个站被人破解了)
2、网站功能的可扩展性,有时难免会想加一些新的功能,比如扩展产品展示功能等等
3、维护的易用性。
4、易学习性。
建议重新审视下自己准备做的事情,因为网站源码只是游戏的开始,后面会有很多问题的, 所以选择一种可持续的建站方案,对你来说是蛮重要的。
我的结论是:JOOMLA,包括以上所有好处,最重要的是它完全是免费的。无论是用作公益性还是商业性,它都OK。
祝你好运!
// return true; //} //return false; if (request.QueryString.Count != 0)
2、网站功能的可扩展性,有时难免会想加一些新的功能,比如扩展产品展示功能等等 3、维护的易用性。 4、易学习性。 建议重新审视下自己准备做的事情,因为网站源码只是游戏的开始,后面会有很多问题的, 所以选择一种可持续的建站方案,对你来说是蛮重要的。 我的结论是:J
msg += "a href=\"#\" onclick=\"history.back()\"返回上一页/a/span"; MessageBox.ResponseWrite(msg, true); } } }p
b.HttpRequest request) { this.request = request; } public bool CheckBadQuery() {