1、弄清楚数据库是否易受到攻击。 要使用这种方法,你得熟悉数据库语句。在浏览器中打开数据库网页登录界面,并在用户名字段中输入’(单引号)。点击"登录"。如果你看到类似于"SQL异常:引号内的字符串没有正确结束"或"无效字符"之类的错误,那么数据库就很容易受到SQL注入的攻击。
2、确定列数。返回到数据库的登录页面(或以"catnowrap" title="This is not a clickable button; it illustrates the button one should find." style="font-family: Segoe UI, Frutiger, Frutiger Linotype, Dejavu Sans, Helvetica Neue, Arial, sans-serif;letter-spacing:0px;padding:0em .6em; border:1px solid; border-color:#AAA #555 #555 #AAA; -moz-border-radius: 0px; -webkit-border-radius: 0px; border-radius: 0px; background-color: #F2F2F2; background-image: -moz-linear-gradient(top, #FCFCFC, #E0E0E0); background-image: -o-linear-gradient(top, #FCFCFC, #E0E0E0); background-image: -webkit-linear-gradient(top, #FCFCFC, #E0E0E0); background-image: linear-gradient(top, #FCFCFC, #E0E0E0);">Enter。数字增加到2,并按Enter。一直增加,直到出现错误为止。实际的列数是出现错误之前输入的列数。
3、确定哪些列可以被查询。在地址栏URL的末尾,将catid=1
或id=1
改为catid=-1
或id=-1
。按空格键,并输入union select 1,2,3,4,5,6
(如果有6列的话)。数字应当从1数到列的总数,并且每个数字之间由逗号隔开。按Enter,这样你就可以确定哪些列可以被查询。
4、将SQL语句注入到列中。例如,如果你想知道当前用户,并且想将SQL语句注入到第2列中,删除URL中id=1后面的所有内容,再按空格键。然后,输入union select 1,concat(user()),3,4,5,6--
。按Enter,会显示当前数据库的用户名。使用可以返回信息的SQL语句,如要破解的用户名和密码列表。
1、尝试使用默认密码以根用户身份登录。有些数据库在默认没有根(管理员)密码,所以你可以将密码字段保留为空。其他用户的默认密码可以通过搜索数据库技术支持论坛轻松找到。
2、尝试常见密码。如果管理员使用密码保护帐户(很可能是这种情况),请尝试常见的用户名/密码组合。一些黑客会公开发布他们使用检索工具破解的密码列表。尝试一些不同的用户名和密码组合。收集密码列表的一家知名网站: https://github.com/danielmiessler/SecLists/tree/master/Passwords。
手工尝试密码可能很耗时,但在破解密码之前尝试一下也没什么坏处。
3、使用密码检索工具。你可以使用各种工具通过暴力尝试数千个字典单词和字母/数字/符号组合,直到密码被破解为止。 DBPwAudit(适用于Oracle、MySQL、MS- sql和DB2)和Access Passview(适用于MS Access)等工具是常用的密码检索工具,可以在大多数数据库上运行。你也可以上谷歌搜索,寻找专门适用于你的数据库的最新密码检索工具。例如,如果你正在攻击Oracle数据库,可以搜索password audit tool oracle db
。
如果有运行数据库的服务器的帐户,你可以对数据库的密码文件运行哈希破解工具,如John the Ripper,来破解数据库的密码文件。哈希文件的位置因数据库而异。
只从你信任的网站下载。在使用工具之前,要仔细研究研究。
1、查找漏洞。 Sectools.org 作为安全工具(包括发现漏洞)已经有十多年,并且广受好评,被全世界的系统管理员用于安全测试。浏览"攻击漏洞"数据库(或者寻找其他信任站点),找到有助于你攻击数据库安全漏洞的工具或文本文件。另一个可以攻击漏洞的网站是 www.exploit-db.com。进入这个网站,点击"搜索"链接,然后搜索需要攻击的数据库类型(如"oracle")。在给定的方框中输入验证码,并搜索。
确保你研究了所有准备尝试的漏洞,这样你就知道在可能出现问题时该怎么做。
2、通过wardriving 寻找不设防的网络。 Wardriving是指在区域内驾驶(或骑车、步行)的同时,运行网络扫描工具(如NetStumbler或Kismet),以找到不安全的网络。Wardriving 在理论上是合法的。在网络上一些行为是不合法的,而使用Wardriving却是合法的。
3、利用不设防的网络进行攻击数据库漏洞。如果你在做一些不该做的事情,最好不要用自己的网络。无线连接到通过wardriving发现的开放式网络,攻击你之前研究并挑选的漏洞。
确保用密码来保护你的无线网络,这样wardrivers就无法利用你的家庭网络来攻击漏洞。
寻找其他黑客,咨询他们的建议。有时候,最好的黑客知识是在公共互联网上找不到的。
永远不要试图从自己的网络上非法访问计算机。
访问非他人的数据库是非法的。