`

web安全漏洞之二——sql注入攻击

 
阅读更多

1. 什么是sql注入攻击?

       所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。

 

2. sql注入攻击类型?

2.1  没有正确的过滤转义字符

       用户的输入没有进行转义字符过滤,而被传递给SQL语句,从而导致攻击者对数据库的操作,例如:

       SELECT * FROM users WHERE name = ?

       如果用户名name被恶意伪造为:zhang3' or '1'=1

       此时SQL语句就会发生变化:SELECT * FROM users WHERE name = 'zhang3' OR '1'='1';

       因为'1'='1'是正确的,如果这段代码被用语一个认证过程,那么就能强迫选择一个合法的用户名。

2.2  字段类型错误

       如果程序没有实施类型强制,就会发生这种形式的攻击,例如:

       UPDATE subject SET score= ? where name = 'zhang3' 

       如果成绩被恶意伪造为:100; DROP TABLE users #

       此时SQL语句就会发生变化:

       UPDATE subject SET score= 100; DROP TABLE users; # where name = 'zhang3'

       它会将“users”表从数据库中删除

 

3. 如何防范sql注入攻击?

3.1 使用预编译语句:这是最佳的防SQL注入方式,使用预编译的SQL语句语义不会发生改变,变量使用?表示,攻击者无法改变SQL结构。

3.2 检查数据类型,对用户输入的数据做严格校验,比如只允许输入数字,非数字输入全部认为非法字符。

 

分享到:
评论

相关推荐

    千里之堤,溃于蚁穴——揭密SQL注入攻击——初识SQL注入

    ### 千里之堤,溃于蚁穴——揭密SQL注入攻击 #### 一、SQL注入漏洞与攻击 SQL注入(SQL Injection)是一种常见的安全漏洞,它发生在应用程序没有正确处理用户输入的情况下,允许攻击者通过恶意构造的SQL语句来操控...

    PHP——SQL注入测试靶场

    【PHP——SQL注入测试靶场】是一个用于学习和实践SQL注入漏洞的安全平台,它通过PHP编程语言构建,目的是帮助开发者和网络安全爱好者理解SQL注入的工作原理,以及如何防范这种常见的Web安全威胁。SQL注入是一种攻击...

    Web服务的SQL注入攻击及防御研究.pdf

    然而,随之而来的安全问题也日益凸显,其中SQL注入攻击成为了对Web服务安全威胁最大的一种攻击方式。根据《2015年度互联网发展状况安全报告》,相较于2014年,Web应用服务遭受的攻击者攻击增加了28%,其中32%的Web...

    瑞友天翼2024SQL注入漏洞poc

    标题中的“瑞友天翼2024SQL注入漏洞poc”指的是瑞友天翼2024版本...总的来说,这个主题涉及到的是网络安全中的一个重要环节——SQL注入漏洞的检测和防范,以及如何利用POC脚本进行渗透测试,以提升Web应用的安全性。

    《安全技术经典译丛》SQL注入攻击与防御.pdf

    《安全技术经典译丛》中的《SQL注入攻击与防御》一书,是针对网络安全领域中的一个重要议题——SQL注入,进行深入探讨的专业著作。该书由清华大学出版社出版,旨在帮助读者理解这种常见且危害极大的网络攻击手段,...

    白帽子修炼第二步(漏洞篇)[SQL注入]-③

    "白帽子修炼第二步(漏洞篇)[SQL注入]-③"这个主题主要聚焦于网络安全中的一个重要话题——SQL注入。白帽子,指的是那些通过合法手段发现并报告系统安全漏洞的专业人士,与黑客形成鲜明对比。他们对网络系统的深入...

    SQL注入攻击与防范

    1. **隐蔽性**:SQL注入攻击通常通过正常的Web端口进行访问,表面上与常规的Web页面访问无异。因此,传统的防火墙和入侵检测系统往往无法识别这种类型的攻击。除非管理员定期检查服务器日志,否则很难察觉到攻击的...

    构建软件数字安全带系列课程(4):数据库防护——详细介绍SQL注入攻击

    SQL注入攻击是网络安全领域中的一个重要课题,它利用了应用程序对用户输入数据处理不当的漏洞,从而可能对数据库造成破坏、窃取敏感信息或完全控制数据库系统。 SQL注入攻击的工作原理是,攻击者通过输入恶意构造的...

    ASP.NET源码——通用防SQL注入漏洞程序(Global.asax方式).zip

    SQL注入是一种常见的网络安全攻击手段,攻击者通过输入恶意的SQL代码,试图获取、修改或删除数据库中的敏感信息。在ASP.NET中,如果不进行适当的参数化查询或预编译语句,就容易遭受这种攻击。 这个程序的核心原理...

    基于jQuery的SQL注入攻击防范实现

    SQL注入攻击的核心在于利用Web应用程序中的漏洞,将恶意SQL语句插入到正常的用户输入中,从而欺骗应用程序执行非预期的操作。例如,攻击者可以利用这种方式来绕过身份验证系统、篡改数据库记录或提取敏感数据。 这...

    基于关键载荷截取的SQL注入攻击检测方法.docx

    **SQL注入攻击**是一种常见的攻击方式,攻击者利用Web应用程序中存在的安全漏洞,通过向表单、URL参数或其他输入字段插入恶意的SQL代码来操纵数据库,进而获取敏感信息或破坏数据。这类攻击的危害极大,不仅可能导致...

    预防XSS攻击和SQL注入XssFilter

    XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。比如这些代码包括HTML代码和客户端脚本。攻击者利用XSS漏洞旁路掉访问控制——例如同源策略(same origin...

    基于随机化处理的SQL注入攻击防御系统.pdf

    SQL注入攻击主要通过对Web应用的输入点,如表单、URL参数等注入恶意SQL代码,使得攻击者能够绕过正常的安全验证,执行任意的数据库查询或操作。这种攻击不仅可能暴露数据库中的敏感数据,如用户信息、交易记录等,还...

    基于敏感字符的SQL注入攻击防御方法.pdf

    本文深入分析了SQL注入攻击的原理,提出了一种新颖的防御策略——基于敏感字符的SQL注入预防方法。该方法着重于对可信的敏感字符进行标记,而不是对所有字符进行污点分析,这大大减少了系统资源的消耗。 本策略的...

    SQL注入防护——从一款注入工具入侵原理入手.pdf

    总而言之,SQL注入漏洞是Web应用程序常见的安全隐患,通过细致的输入处理、合理的权限分配、及时的更新维护等手段,可以有效提高网站的安全性,防范SQL注入攻击。开发者、网站管理员和安全专家都需要通力合作,才能...

    SQL注入技术和跨站脚本的安全检测

    标题与描述概述的知识点主要集中在两个关键的网络安全领域——SQL注入和跨站脚本(Cross-Site Scripting,简称XSS或CSS)攻击。这两类攻击都是利用了应用程序的漏洞,尤其是那些没有对用户输入进行适当验证和过滤的...

Global site tag (gtag.js) - Google Analytics