文章作者: cc
前言
经过测试后,发现该app,在输入手机号和验证码之后,会申请获取手机号权限,一旦授予权限,app会立刻获取通讯录手机号和姓名,上去至数据库。性质及其恶劣!!一、事情的开始
app来自于一个妹妹发给我的。app界面
随便新建几个联系人。
进行注册
进行抓包发现,电话号是进行加密的,看的不是很清晰明了。
由于已经进入了后台,直接看后台记录。
以及我刚刚新建的几个联系人,也都被传到了后台里。
那么渗透的意义就有了,为了不让更多人受害,为了匡扶世间正义,我挺身而出!
二、渗透过程先抓个包,看到网站的地址。
浏览器,打开网址,发现是空白页。
发现 域名/gm/ 是后台登录界面
在后台登录的页面,我一般有这几个想法:1、sql注入,万能密码绕过登录2、用户名枚举,爆破密码3、网站备份文件,查找密码4、代码审计
发现并不存在注入,也找不到备份文件,这个后台也不是开源的,那么只能进行爆破了。
拿出我的大字典。
开始爆破admin,尝试了10000次爆破后,还是没能登录进后台。正在我一筹莫展的时候,突然发现了新大陆。柳暗花明又一村!
漏洞1:无账号密码,直接登录我试着把账号 密码 都为空,然后登录,居然进来了!!至于能登录进来的原因,我后面再讲。
后台界面是这样的,
漏洞2:搜索处存在,字符型注入域名/gm/sblist.php?m=123'or 1=1--+
漏洞3 查看电话处,存在字符注入域名/gm/alllist.php?i=0 'or 1=1--+
漏洞4 删除电话号,存在注入域名/gm/alllist.php?way=del手动测试不出来,但确实存在注入,可用sqlmap 跑出来。
三、继续深入渗透通过注入查看,users的用户名和密码,发现用户名都是一堆杂乱没规律的账号,猜测可能是管理员,为了保护admin账号,即使被注入,也不会很快发现admin的密码。管理员太天真了。
猜测管理员在添加小号时候,添加了一个用户名为空 密码也为空的账户,导致可以直接绕过登录进入后台,这就是账号为空 密码为空 可以进后台的秘密。
users的用户,居然有10000多个,。。。
查询admin的密码。执行:域名:/gm/sblist.php?m=123%27union select username,password,qudaonum,4 from users where username = %27admin%27 -- #
密码解md5,解不开,可能是强密码。这里思路断了。sql的权限 写一句话,找不到物理目录,无法写文件。sql查看根目录文件,没有权限,读不出来没有其他上传点,无法上传文件
渗透暂时到这里 没的思路了。
sqlmap 打包网站数据库,交给网安处理,结束我的渗透之旅。执行:sqlmap -r sql.txt -D tongxunlu -T dianhuaben --dump --thread 5