防止SQL注入式攻击的笔记

作者: 小明yz | 来源:发表于2017-09-05 09:04 被阅读41次

SQL注入式攻击是指利用设计上的漏洞攻击系统。如果动态生成SQL语句时没有对用户输入的数据

进行过滤,便会使SQL注入式攻击得逞。

例如用下面的SQL语句判断用户名和密码:

txtsql="select * from user_info where userid='"&txtuserid &"' and_

password='" & txtpassword.text & "'"

则通过SQL注入式攻击,在“密码”文本框中输入1'or '1'='1,非法用户便可在

没有密码的情况下轻松登录系统,因为SQL语句已经变为:

txtsql="select * from user_info where userid='"&txtuserid &"' and_

password='" &_1'or '1'='1 & "'"

要防范SQL注入式攻击,应该注意一下几点;

1,检查输入的SQL语句的内容,如果包含敏感字符,则删除敏感字符,敏感字符

包含【',>,<=,!,_,+,*,/,(),|和空格】

2,不要在用户输入过程中构造where子句,应该利用参数来使用存储过程。

下面举例来防范SQL注入式攻击:

Function inputString(mystr) as String

mystr=Trim(mystr)

mystr=Replace(mystr,"'","'")

mystr=Replace(mystr,";--","")

mystr=Replace(mystr,"=","")

mystr=Replace(mystr,"or","")

mystr=Replace(mystr,"and","")

End Function

txtsql="select * from user_info where userid='" & txtuserid & "' and_

password='" & inputString(txtpassword.text) & "'"

欢迎关注我的公众号(同步更新文章)DoNet技术分享平台

阅读原文

相关文章

  • 防止SQL注入式攻击的笔记

    SQL注入式攻击是指利用设计上的漏洞攻击系统。如果动态生成SQL语句时没有对用户输入的数据 进行过滤,便会使SQL...

  • 【导读】Java安全编码标准—第2章 输入验证和数据净化

    章节概述 输入验证是防止各种注入攻击,SQL 注入,XML 注入,LDAP 注入,以及 XSS 跨站攻击的有效手段...

  • java编程学习笔记——mybatis SQL注入问题

    SQL 注入攻击 首先了解下概念,什么叫SQL 注入: SQL注入攻击,简称SQL攻击或注入攻击,是发生于应用程序...

  • Openresty 配置 waf

    Waf作用: 防止sql注入,本地包含,部分溢出,fuzzing测试,xss,SSRF等web攻击 防止svn/备...

  • web常见漏洞的成因和修复

    1.SQL注入 漏洞描述:SQL 注入攻击( SQL Injection ),简称注入攻击、SQL 注入,主要用于...

  • 笔记:web漏洞

    SQL注入 SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,...

  • PHP代码安全之SQL注入

    PHP代码安全之SQL注入 1、什么是SQL注入? SQL攻击(英语:SQL injection),简称注入攻击,...

  • MyBatis 防止sql注入攻击

    Sql注入攻击 SQL注入攻击属于[数据库安全]攻击手段之一,可以通过[数据库安全]防护技术实现有效防护,数据库安...

  • 安全

    SQL注入 所谓sql注入式攻击,就是攻击者把sql语句插入到表单的输入域或者页面请求中的字符串中,欺骗服务器执行...

  • 2017/02/17

    1. flask的上传文件,要记得通过secure_namef防止cracker的攻击,攻击方式类似sql注入,主...

网友评论

    本文标题:防止SQL注入式攻击的笔记

    本文链接:https://www.haomeiwen.com/subject/cvtujxtx.html