讲师：在本课以及接下来的几节课中,
我们将讨论一种常见的漏洞类型,
称为SQL注入｡
在我们开始讨论这种情况是如何发生的以及如何利用它之前,
让我们先了解一下什么是SQL｡
现在, 如果你在某个网站上进行笔测,
这个网站可能比小网站大一点, 所以它可能使用了数据库｡
大多数网站, 除了非常简单的网站,
使用数据库, 数据库是用来存储数据, 所以他们存储用户名,
密码, 新闻文章, 博客文章, 图片｡
网站上发生的任何事情, 字面上,
都存储在一个数据库和网络应用程序查询数据库,
然后显示数据给你或用户, 在屏幕上｡
当用户执行某些操作时, 它将更新､
删除或修改数据库中存在的数据｡
Web应用程序和数据库之间的这种交互使用一种名为SQL的语言进行｡
让我向大家展示一下我所说的数据库,
这只是一个示例,
我不会入侵任何东西,
我只是要登录到安装在Metasploitable计算机上的数据库, 然后我们将看到它上安装了什么｡
所以, 我没有做任何黑客, 这里什么都没有, 那里什么都没有,
只是登录到我的SQL｡
然后, 我将用户名设置为root,
Metasploitable不使用root密码,
这非常糟糕, 但显然它是一个易受攻击的系统｡
所以, 我只需要登录, 我不会入侵任何东西,
也不会进行任何SQL注入,
这只是MySQL的终端, Web应用程序将使用它与数据库进行交互｡
所以, 我只是想向你们展示我所说的数据库是什么意思,
以及其中保存了什么｡
我首先要做的是, 输入show
databases｡
这将显示目标服务器上存在的数据库,
您可以看到我们有一个信息架构, 这是一个默认数据库, 它保存默认信息,
即有关所有其他数据库的信息｡
因此, 在安装MySQL时, 默认情况下会安装此程序｡
已为每个Web应用程序安装了其余部分｡
我们可以看到, 一个是tikiwiki的,
一个是owas10的, 这是这个乌贼科的｡
我们还有一个名为mysql的应用程序, 一个名为metasploit的应用程序,
还有一个用于dvwa的应用程序, 这是我们一直在使用的Web应用程序｡
因此, 您可以看到, 对于每个Web应用程序,
我们实际上都有一个数据库, 该数据库保存该Web应用程序使用的信息｡
让我给你看看里面有什么,
我将使用owas10数据库｡
这是一个, 同样, 这是一个为Mutilldae,
为这个网络应用程序｡
我们可以看到表, 所以每个数据库都有一个表,
表, 在表中有信息｡
所以, 我会说“显示表”来查看我们拥有的表｡
您可以看到, 我们有一个帐户表,
因此您可以假设此表包含有关用户名､ 密码的信息,
以及有关用户的信息｡
我们有一个博客表, 所以可能有博客输入,
文章和评论在那里｡
您可以看到捕获的数据､ 信用卡, 因此有一个包含信用卡的表｡
这对于购物网站来说是很大的,
他们实际上会有信用卡表,
信用卡的信息会存储在那里｡
基本上, 数据库将存储一切,
所有的数据, 是在网站上使用｡
因为它们不存储在文件中, 效率不高
让我们看一下帐户, 如果我说“选择”,
这就是Web应用程序从数据库中检索信息的方式,
它将选择内容､ 更新或删除｡
我在这里做了一个选择语句, 这不是黑客攻击,
我什么都没做, 只是在选择东西｡
我会从账户中选择星号,
这意味着一切｡
撇号, 如我们所见, 我们有帐户ID､ 用户名､
密码, 然后是该用户的签名,
以及该用户是否为管理员｡
现在这些列依赖于表,
因此实际上是设计数据库的人,
设计表和列, 然后由Web应用程序插入数据｡
您可以看到, 我们有一个名为admin的用户,
其密码为adminpass｡
我们可以看到, 我们有一个名为adrian的用户,
他们的密码是somepassword｡
所以, 这只是向您展示数据库的样子, 让您对它有一个大致的了解,
因为在以后的视频中, 我们将尝试利用这些数据库并进行类似的访问｡
我现在用用户名和密码登录,
通常你没有这样的访问权限,
只有Web管理员才有这样的访问权限｡
在以后的视频中, 我们将尝试运行一些攻击来获得类似的访问权限,
这样我们将完全控制数据库,
这样我们就可以读取数据, 看看我们是否可以写入或修改数据｡