`

网站注入与防范的方法总结

阅读更多

1.首先我会检查一下服务器配置,重新配置一次服务器安全,可以参考
http://hi.baidu.com/zzxap/blog/item/18180000ff921516738b6564.html

2.其次,用麦咖啡自定义策略,即使网站程序有漏洞,别人也很难在文件上写入代码了。
参考自定义策略,有了这个策略,再烂的程序,你也无法写入我的文件
http://hi.baidu.com/zzxap/blog/item/efe093a7e0f2c190d04358ef.html

3.可以用网络超级巡警删除被注入的JS代码。
参考
http://hi.baidu.com/anlish/blog/item/ba45bb18eac77e0534fa4134.html

4.如何批量删除数据库中被注入的代码?
在数据库查询分析器运行这段代码即可

SQL code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> DECLARE @fieldtype sysname SET @fieldtype='varchar' --删除处理 DECLARE hCForEach CURSOR GLOBAL FOR SELECT N'update '+QUOTENAME(o.name) +N' set '+ QUOTENAME(c.name) + N' = replace(' + QUOTENAME(c.name) + ',''<script_src=http://ucmal.com/0.js> </script>'','''')' FROM sysobjects o,syscolumns c,systypes t WHERE o.id=c.id AND OBJECTPROPERTY(o.id,N'IsUserTable')=1 AND c.xusertype=t.xusertype AND t.name=@fieldtype EXEC sp_MSforeach_Worker @command1=N'?'



5.创建一个触发器,只要有 </script>就不给插入,对性能会有点影响

SQL code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> create trigger tr_table_insertupdate on tablename for insert,update as if exists ( select 1 from inserted where data like '%</script>%' ) begin RAISERROR ('不能修改或者添加',16,1); ROLLBACK TRANSACTION end go



6.最重要的还是程序的写法,用参数化SQL或存储过程
例如

C# code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> protected void cmdok_Click(object sender, EventArgs e) { //添加信息 StringBuilder sql = new StringBuilder( " insert into m_phone ( pid,PhoneName,num,price,phonetype,onSellTime,color,weight,Video,Camera,phoneSize,phoneSystem,Memorysize,PhoneDesc,Standbytime,ScreenSize,Frequency,InputMethod,Soundrecord,gps,fm,mp3,email,Infrared,game,clock,Calendar,Calculator,Bluetooth) "); sql.Append(" values (@pid,@TextPhoneName,@Textnum,@Textprice,@Dropphonetype2,@TextonSellTime,@Textcolor,@Textweight "); ................. SqlParameter[] paras = { new SqlParameter("@pid", SqlDbType.Int, 4) , new SqlParameter("@TextPhoneName", SqlDbType.NVarChar, 50) , new SqlParameter("@Textnum", SqlDbType.Int, 4) , new SqlParameter("@Textprice", SqlDbType.Int, 4) , new SqlParameter("@Dropphonetype2", SqlDbType.VarChar, 20) , new SqlParameter("@TextonSellTime", SqlDbType.DateTime, 8) , new SqlParameter("@Textcolor", SqlDbType.VarChar, 20) , new SqlParameter("@Textweight", SqlDbType.NVarChar, 50) , ........... }; string[] stra = {Dropphonetype.SelectedValue,TextPhoneName.Text , Textnum.Text, Textprice.Text, Dropphonetype2.SelectedValue, TextonSellTime.Text, Textcolor.Text, Textweight.Text, .............}; int a=stra.Length; int j; for ( j = 0; j < a; j++) { paras[j].Value = stra[j]; } int strpid = 0; string sqla = sql.ToString(); try { SqlHelper.ExcuteNonQurey(sqla, CommandType.Text, paras);//执行添加数据 strpid = Convert.ToInt32(SqlHelper.ExcuteSclare(sqla, CommandType.Text, paras)); //获取刚才插入的id号 } catch (SqlException ex) { cmdreturn.Text = ex.Message.ToString(); } cmdreturn.Text = strpid.ToString(); 。。。。。。。。。



7.通过URL传递的参数要用加密解密

C# code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> 传输 string szTmp = "safdsfdsafdsfytrsd"; szTmp = Server.UrlEncode(szTmp); 接收 STRING STRA=Server.UrlDecode(request.querystring(szTmp));



8.把要使用的参数处理一下单引号,再放到SQL里面 
  例如 string stra=aa.replace("'","''")

  用参数化SQL可以不用处理单引号
  指定参数类型和过滤掉单引号,就可以杜绝99.9%入侵了


另外说一句:网上那些被人奉如圣经的过滤 update insert  等关键字的程序是用处不大的  upupdatedate 过滤掉 update还是update
还会造成不必要的麻烦

分享到:
评论

相关推荐

    网站注入与防范的方法

    ### 网站注入与防范的方法 #### 一、引言 随着互联网技术的发展与普及,网站安全问题日益凸显,其中“网站注入”是威胁网络安全的主要隐患之一。网站注入不仅可能导致用户数据泄露,还可能使整个网站乃至服务器遭受...

    网站注入防范方法总结介绍服务器配置被入侵后的清理防止文件被写入代码

    网站注入防范方法总结 介绍服务器配置 被入侵后的清理 防止文件被写入代码 数据库触发器设置 程序书写SQL参数化方法 加密解密传输

    基于SQL注入暴力猜解获取ASP网站账号的方法与防范对策研究.pdf

    此外,研究强调了本实验内容对研究SQL注入相关网络攻防技术的重要性,并指出后续研究将继续深入探讨SQL注入工具的实现方法以及针对非ASP类型的网站进行SQL注入原理与防范对策的研究。 对于数据库管理员和网站开发者...

    SQL注入漏洞分析与防范.pdf

    总结以上内容,SQL注入漏洞的分析与防范需要网站开发者从多个层面出发,包括但不限于代码安全的编写、系统防护措施的实施以及对相关人员的安全培训。通过这些综合性的措施,可以大幅提高网站的安全性,防止因SQL注入...

    SQL注入原理及防范方法.pdf

    总结:随着WEB技术的普及,SQL注入成为了一种常见的攻击手段。了解SQL注入的原理、危害以及防范措施是每个WEB开发者和数据库管理员的必要技能。在设计和部署WEB应用时,必须采取适当的安全措施来保护用户数据和系统...

    SQL注入攻击及其防范技术研究.pdf

    上述内容是根据提供的文件部分摘录信息总结的,涵盖了SQL注入攻击的原理、防范技术以及防范模型的构建等方面的知识。通过系统地学习和实践这些知识,可以有效地减少SQL注入攻击的风险,保障数据库的安全。

    开发者视角下网站SQL注入漏洞及防范.pdf

    总结来说,该文档深入地探讨了网站安全中的SQL注入问题,对成因、常见攻击方式及预防方法进行了专业分析和指导。开发者通过遵循文中提到的防范措施,可以在很大程度上提高网站的安全性,防范SQL注入攻击,减少损失。...

    SQL注入攻击原理和防范方法.pdf

    4. SQL注入防范方法: - 参数化查询:使用预编译的SQL语句,将用户输入作为参数传递,防止SQL代码直接拼接。 - 输入验证:严格检查用户输入,拒绝包含特殊字符或不符合预期格式的数据。 - 最小权限原则:数据库账户...

    浅谈SQL注入漏洞的检测与防范.pdf

    在探讨SQL注入漏洞的检测与防范方面,本文深入地分析了SQL注入的成因、检测方法以及有效的防范措施。首先,SQL注入是随着Web应用的普及而日益成为一个严重的安全问题。SQL注入漏洞之所以成为企业业务系统中的高危...

    防御SQL注入的方法总结

    防御SQL注入是保护网站和应用程序免受此类攻击的关键步骤。 1. SQL注入的基本原理: SQL注入攻击通常是由于应用程序未能正确验证和过滤用户输入的数据,直接将这些数据拼接到SQL查询语句中导致的。例如,一个简单的...

    基于高校Web应用中SQL注入攻击与防范研究.pdf

    根据提供的文件信息,我们...以上内容总结了文档中关于高校Web应用中SQL注入攻击与防范研究的核心知识点,涵盖了攻击原理、可能的危害以及防范措施等。这些知识点对于理解和提升Web应用的安全防护水平具有重要的价值。

    SQL注入攻击实验报告

    - **实验目的**:本实验旨在通过搭建一个简单的Web应用程序,模拟SQL注入攻击的过程,并探讨相应的防御措施,帮助理解SQL注入攻击的基本原理及其防范策略。 #### 二、实验原理 - **SQL注入的概念**:SQL注入是一种...

    网站中的SQL注入攻击及防范措施.pdf

    总结,SQL注入攻击是Web应用安全的一大威胁,但通过理解其原理,了解不同类型的攻击,结合多种防范措施,我们可以显著降低这种风险,保护用户的个人信息和系统的稳定性。同时,定期的安全评估和更新安全策略也是防止...

    防范SQL注入的应用分析.pdf

    以上就是从提供的文件内容中提炼出的关于防范SQL注入攻击的详细知识点,包含攻击的原理、实现过程、检测方法以及防范策略。这些内容对于理解SQL注入攻击的性质、危害以及如何有效防御这种攻击具有重要意义。

    SQL注入攻击与防御

    本书通过理论与实践相结合的方式,让读者深入了解SQL注入的原理与方法,提供了实用的防御技巧和工具,对于希望提高数据库安全防范能力的专业人士来说,是一本不可或缺的参考资料。通过阅读这本书,读者将能更好地...

    防范SQL注入的应用分析

    Web服务器脚本攻击事件的增多反映出各种Web服务器漏洞的非...文章简要介绍了SQL注入攻击的概念和原理,以及SQL注入攻击的特点和实现过程,并在此基础上叙述了如何检测SQL注入攻击,总结了一般的SQL注入攻击的防范方法。

    ASP工具注入+手工注入+PHP注入+中转注

    总结起来,理解并防范这些注入攻击类型对于保护Web应用和服务器安全至关重要。开发者应遵循安全编码原则,对用户输入进行严格的检查和过滤,使用安全的编程实践,而用户则应提高网络安全意识,使用安全的网络连接,...

    sql注入与防止

    #### 三、防范SQL注入的方法 1. **输入验证**: - **限制输入格式**:例如使用正则表达式来限定用户输入的格式,确保只有符合特定模式的数据才能被接受。 - **特殊字符转义**:对于单引号、双破折号(`--`)等...

    基于PHP MySQL的用户登录系统SQL注入实例及防范.pdf

    总结而言,通过上述知识点的解析,我们可以看到防范SQL注入需要注意的几个关键方面:采用安全的编程实践、使用加密和验证码技术、以及正确地处理用户输入。随着网络攻击手段的不断演变,IT专业人员需要不断提升自己...

    SQL注入攻击实验报告.doc

    下面是对SQL注入攻击的实验报告的知识点总结: 一、实验目的: * 通过SQL注入攻击,掌握网站的工作机制 * 认识到SQL注入攻击的防范措施 * 加强对Web攻击的防范 二、实验环境描述: *宿主机(客户机):操作系统...

Global site tag (gtag.js) - Google Analytics