| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> 网络安全--SQL注入介绍 -> 正文阅读 |
|
[大数据]网络安全--SQL注入介绍 |
课程目标:讲解SQL注入的原理、特点、危害,SQL注入的攻击手法和MySQL注入的常用函数,讲解相关工具,如何去防御SQL注入。 任务目标:了解SQL注入相关概念,掌握SQL注入攻击手法,了解SQL注入相关工具和防御方法。 A.SQL注入概述什么是SQL注入所谓SQL注入,就是通过SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。具体来说,它是利用现有应用程序,将(恶意的)SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。比如先前的很多影视网站泄露VIP会员密码大多就是通过Web表单递交查询字符暴出的,这类表单特别容易受到SQL注入式攻击。 SQL注入的原理SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地过滤用户输入的数据,致使非法数据侵入系统。 ? SQL注入的地位? ? SQL注入的来源? SQL注入的主要特点1.变种极多 有经验的攻击者会手工调整攻击的参数,致使攻击的数据是不可枚举的,这导致传统的特征匹配方法仅能识别到相当少的攻击。或者是最常规的攻击,难以做到防范。 2.攻击简单 攻击过程简单,目前互联网上流行的众多SQL注入攻击工具,攻击者借助这些工具可以很快的对目标网站进行攻击或者是破坏,危害大。 3.危害极大 由于web语言自身的缺陷,以及具有安全编程的开发人员较少,大多数web应用系统均具有被SQL注入攻击的可能,而攻击者一旦攻击成功,就可以对控制整个web应用系统对数据做任何的修改或者是窃取,破坏力达到了极致。 SQL注入的危害1.未经授权状况下操作数据库中的数据 2.恶意篡改网页内容//登陆后台后发布的内容,也可以发布对首页的更新,这时候更新可能就是一些非法信息,也可以对系统进行添加账户或者是数据库账号。这个需要拿到web shell或者更高的权限 3.私自添加系统账号或者是数据库使用者账号 4.网页挂木马//拿到web shell或者获取到服务器的权限以后,我们将一些网页木马挂在服务器上,去攻击别人。甚至再严重些我们可以控制整个web服务器,这个都是非常危险的。 B.SQL注入攻击SQL注入攻击SQL注入攻击是黑客对数据库进行攻击的常用手段之一。随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想的得知的数据,这就是所谓的SQL Injection,即SQL注入。 SQL注入威胁表达方式绕过认证,获得非法权限 拆解后台数据库全部的信息 注入可以借助数据库的存储过程进行提权等操作 SQL注入典型攻击手段判断应用程序是否存在注入漏洞 收集信息、并判断数据库类型 根据注入参数类型,重构生气了语句的原貌 拆解表名、字段名 获取账户信息、攻击web或为下一步攻击做准备 SQL注入是否存在注入的判断方式? SQL注入实战步骤? 按照注入点类型来分类? 按照数据提交的方式来分类? 按照执行效果来分类
C.MySQL注入常用函数MySQL的注释风格? ? MySQL——union操作符union操作符用于拼接两个或者多select查询语句 union中的每个查询必须拥有相同的列数 ? MySQL——常用函数? MySQL——字符串连接函数concat(str1,str2...)函数,直接连接 group_concat(str1,str2...)函数,使用逗号做为分隔符 concat_ws(sep,str1,str2...)函数,使用第一个参数做为分隔符 ? MySQL——information-schema结构? D.SQL注入相关工具sqlmap介绍SQLMAP是一个开源的渗透测试工具,它主要用于自动化地侦测和实施SQL注入攻击以及渗透数据库服务器。SQLMAP配有强大的侦测引擎,适用于高级渗透测试用户,不仅可以获得不同数据库的指纹信息,还可以从数据库中提取数据,此外还能够处理潜在的文件系统以及通过带外数据连接执行系统命令等。 ? Pangolin介绍Pangolin能够通过一系列非常简单的操作,达到最大化的攻击测试效果。它从检测注入开始到最后控制目标系统都给出了测试步骤。Pangolin时目前国内使用率最高的SQL注入测试的安全软件,可以说是网站安全测试人员的必备工具之一。 啊D注入工具啊D注入工具是一种主要用于SQL的注入工具,由彭岸峰开发,使用了多线程技术,能在极短的时间内扫描注入点。使用者不需要经过太多的学习就可以很熟练的操作。并且该软件附带了一些其他的工具,可以为使用者提供极大的方便。 Havij注入工具HavijPro是一款自动化地SQL注入工具,它能够帮助渗透测试人员发现和利用Web应用程序的SQL注入漏洞。Havij不仅能够自动挖掘可利用的SQL查询,还能够识别后台数据库类型、检索数据的用户名和密码hash、转储表和列、从数据库中提取数据,甚至访问底层文件系统和执行系统命令,当然前提是有一个可利用的SQL注入漏洞。Havij支持广泛的数据库系统,比如MsSQL,MySQL,MSAccess and Oracle。Havij支持参数配置以躲避IDS,支持代理,后台登陆地址扫描。 ? E.SQL注入防御
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 23:11:52- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |