HACK80 首页  立即注册  登录
现在注册
已注册用户请  登录
HACK80    技术文档

OWASP Juice Shop题解(一)

  •   你才是大湿胸 ·2017-12-3 23:45:08·396 次点击 ·阅读模式     

    马上注册,加入HACK80!与我们一起交流。

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x

    安装过程就不说了,网上很多攻略已经说的很详细了,直接进入正题。

    安装完成后的界面:

    1.Score Board

    查看一下页面源代码,发现一个隐藏URL

    打开这个URL  http://172.16.68.100:3000/#/score-board,即完成第一个挑战。

    2. Error Handling

    看到登录框,顺手就测试一下是否有注入,在登录框输入单引号,点击登录,出了报错sql语句就完成挑战

    3. Login Admin

    通过上面错误提示可以看出完整的sql语句是select * form Users where email=” and password=’md5(password)’

    接着上面继续注入,用户名: ’ or 1=1–  密码:任意

    成功登录admin账户

    4. XSS Tier 1

        搜索的地方,随便搜索什么,都会回显,很可能存在反射型xss,直接搜索:

    <script>alert(“XSS1″)</script>

    5. Five-Star Feedback&Admin Section

    看提示说是找到admin功能选项就可以解决,浏览了一遍前端url没有发现,那就只能是隐藏的URL了,最终通过目录爆破找到:

    172.16.68.100:3000/#/administration

    删除那个5星评价即可完成另外一个挑战。

    6.Confidential Document

    在contact us中,有一段文字是带超链接的,点击,通过burp抓包可以看到

    直接访问http://172.16.68.100:3000/ftp即可完成挑战

    7.Zero Stars

    给差评,这个很简单,直接burp抓包,把评价改成0星就可以了

    8.Password Strength

    这个没啥说的,admin账户的暴力破解,最终爆破出来密码是admin123

    9.Basket Access

    抓包看一下basket这个请求,发现这么个请求

    Admin账户是1,改成其它数字就是其它账户的basket(我是通过登录其它账户抓包对比发现的),算是个平行越权漏洞。

    10.Forgotten Sales Backup&Forgotten Developer Backup&Easter Egg Tier 1

    还是这里:http://172.16.68.100:3000/ftp

    coupons_2013.md.bak 这个文件直接点,打不开,但是发现.md格式的文件直接点就可以打开或者下载,用%00截断尝试,成功打开


    http://172.16.68.100:3000/ftp/coupons_2013.md.bak%2500.md

    同样的方法,把其他文件都打开,即可通过这三个挑战。

    其中egg那个文件里面有一串base64编码的字符串,解码后明文为:

    /gur/qrif/ner/fb/shaal/gurl/uvq/na/rnfgre/rtt/jvguva/gur/rnfgre/rtt

    看提示说是要找到real easter egg 需要根据这个线索去找,可能后面会用到。

    11.Christmas Special

    商店里面明显没有什么相关商品,那么只能想办法找到隐藏的礼物,还是在search那里尝试注入

    尝试了一会没注入成功,但是爆出来了完整的sql语句,根据这个构造注入:%27))–

    下单购买这个隐藏礼物就行了。

    12.Login Jim&Login Bender

    跟上面登录admin差不多,还是注入,以jim为例:jim@juice-sh.op’–

    任意密码即可登录,同样的方法登录Bender的账户即可完成挑战。

    13.XSS Tier 2

    存储型xss,先得找到哪里可能存在存储型xss

    Contact us / recyle  / complain 还有一个比较容易被忽略的地方,注册用户的用户名,用户名会显示在:http://172.16.68.100:3000/#/administration

    因为说是绕过客户端的安全机制,前三个经尝试应该都是服务端的安全措施,所以比较容易锁定注册用户这里。因为注册用户的邮箱格式校验是在客户端做的,用burp抓包即可修改,完成注册。

    14.Forged Feedback

    在contact us中反馈,通过burp抓包

    很明显uerid代表不同用户,修改userid即可完成挑战。

    15.Payback Time

    两种方法:修改商品价格为负或者修改数量为负,即可满足挑战要求

    把商品加入购物车的时候,抓包

    只能修改quantity(数量),改为-1 去结账

    16.CSRF

    修改密码这里,如果存在csrf,那么原密码肯定有办法绕过,经过尝试发现,修改密码的时候把原密码置为空,即可绕过原密码完成密码修改。

    但是无论是通过下面这个url直接改密码

    http://172.16.68.100:3000/rest/user/change-password?current=&new=111112&repeat=111112

    或者构造自动提交的csrf表单,虽然都完成了密码修改工作,但是不知道为啥一直没提示挑战通过。

    其它

    现在知道有Users Products这两张表

    注入点分别在登录和搜索处,完整的sql语句也有,想通过手工注入的方式完成其它SQL注入相关的题目一直没有成功T_T

    平时习惯了sqlmap,不知道为啥做这个靶场用不了sqlmap,手工注入还需要提高啊。

    水平比较菜,目前就完成了这么点,40%完成度,继续努力。


    396 次点击  
    收藏  转播  分享
    添加一条新回复
    您需要登录后才可以回帖 登录 | 立即注册

    本节点积分规则
    QQ
    小黑屋   ·   手机版   ·   228 人在线 最高记录 5500   ·   TOP
    我们很年轻,但我们有信念、有梦想!

      我们坚信只有今天付出了,才有机会看到明天的太阳!现在!加入我们,给你一个气氛优秀的技术圈子。  
    GMT+8, 2018-7-23 06:24, Processed in 0.046402 second(s), 18 queries .