精华内容
下载资源
问答
  • Juice

    2019-10-28 18:52:34
    Juice
  • Juice tweaks

    2021-01-12 01:12:59
    Water is not really an ingredient for orange juice. Currently you only yield 1 oj per 1 unit of water and 2 oranges. With the same cost you get 4 units of fruit juice currently. For fruit juice you ...
  • Sliced_Juice

    2019-10-24 16:08:10
    Sliced_Juice
  • juicessh-performancemonitor, 用于监视linux服务器的JuiceSSH插件 JuiceSSH插件:性能监视器用于监视使用JuiceSSH插件SDK的linux服务器的JuiceSSH插件。 这个插件将连接你选择的JuiceSSH连接并执行命令来监视服务器...
  • Comparison to Juice

    2020-12-08 22:35:18
    <div><p>Can you document how Styliner differs from <a href="https://github.com/LearnBoost/juice">Juice</a>?</p><p>该提问来源于开源项目:SLaks/Styliner</p></div>
  • Juice Junctions

    2018-08-30 18:27:00
    Juice Junctions Juice Junctions 题目描述   你被雇佣升级一个旧果汁加工厂的橙汁运输系统。系统有管道和节点构成。每条管道都是双向的,且每条管道的流量都是11升每秒。管道可能连接节点...

    Juice Junctions

     Juice Junctions

    题目描述

     

    你被雇佣升级一个旧果汁加工厂的橙汁运输系统。系统有管道和节点构成。每条管道都是双向的,且每条管道的流量都是11升每秒。管道可能连接节点,每个节点最多可以连接33条管道。节点的流量是无限的。节点用整数11到nn来表示。在升级系统之前,你需要对现有系统进行分析。对于两个不同节点ss和tt,s−ts−t的流量被定义为:当ss为源点,tt为汇点,从ss能流向tt的最大流量。计算每一对满足a<ba<b的节点a−ba−b的流量的和。

     

    输入

     

    第一行包括22个整数nn和m(2<=n<=3000,0<=m<=4500)m(2<=n<=3000,0<=m<=4500)——节点数和管道数。

    接下来mm行,每行包括两个相异整数a,b(1<=a,b<=n)a,b(1<=a,b<=n),表示一条管道连接节点a,ba,b。

    每个节点最多连接33条管道,每对节点最多被一条管道连接。

     

    输出

     

    输出一个整数——每对满足a<ba<b的节点a−ba−b的流量之和。

     

    样例输入

    6 8
    1 3
    2 3
    4 1
    5 6
    2 6
    5 1
    6 4
    5 3

    样例输出

    36

    来源

    Cerc2015


    solution

    因为每两个点之间的流量只会是0 1 2 3

    0:分别处理联通块

    1:同个联通块的不同边双

    2和3: 考虑依次删掉每一条边,再求边双,如果两个点不论删除哪一条边,都一直在同一个边双里,那么流量就为3,否则为2

    那么只剩一个问题,怎么判断两个点是否一直在同一个边双里。

    把每次边双的编号哈希起来就好了

    #include<cstdio>
    #include<iostream>
    #include<cstdlib>
    #include<cstring>
    #include<algorithm>
    #include<cmath>
    #define maxn 3005
    using namespace std;
    int n,m,head[maxn],dfn[maxn],low[maxn],dy[maxn],sc,tot=1,ins[maxn],zh[maxn],top,cnt;
    int t1,t2,f[maxn],h[maxn],l[maxn];
    struct node{
        int v,nex,cap;
    }e[10005];
    void lj(int t1,int t2){
        tot++;e[tot].v=t2;e[tot].nex=head[t1];head[t1]=tot;
    }
    void dfs(int k,int fa,int ban){
        dfn[k]=low[k]=++sc;
        ins[k]=1;zh[++top]=k;
        for(int i=head[k];i;i=e[i].nex){
            if(e[i].v==fa||i==ban||(i^1)==ban)continue;
            if(!dfn[e[i].v]){
                dfs(e[i].v,k,ban);
                low[k]=min(low[k],low[e[i].v]);
            }
            else if(ins[k])low[k]=min(low[k],dfn[e[i].v]);
        }
        if(low[k]==dfn[k]){
            cnt++;
            while(1){
                dy[zh[top]]=cnt;ins[zh[top]]=0;
                if(zh[top]==k){top--;break;}
                top--;
            }
        }
    }
    int getf(int k){
        if(f[k]==k)return k;
        f[k]=getf(f[k]);return f[k];
    }
    void Q(){
        cnt=0;sc=0;top=0;
        for(int i=1;i<=n;i++)ins[i]=dfn[i]=low[i]=dy[i]=0;
    }
    int main()
    {
        cin>>n>>m;
        for(int i=1;i<=n;i++)f[i]=i;
        for(int i=1;i<=m;i++){
            scanf("%d%d",&t1,&t2);
            lj(t1,t2);lj(t2,t1);
            int f1=getf(t1),f2=getf(t2);
            if(f1!=f2)f[f1]=f2;
        }
        for(int i=1;i<=n;i++){
            if(!dfn[i])dfs(i,0,0);
        }
        for(int i=1;i<=n;i++)l[i]=dy[i];
        for(int ba=1;ba<=m;ba++){
            Q();
            for(int i=1;i<=n;i++){
                if(!dfn[i])dfs(i,0,ba*2);
            }
            for(int i=1;i<=n;i++)h[i]=h[i]*11+dy[i];
        }
        int ans=0;
        for(int i=1;i<=n;i++){
            for(int j=i+1;j<=n;j++){
                t1=getf(i),t2=getf(j);
                if(t1==t2){
                    if(l[i]!=l[j])ans++;
                    else {
                        if(h[i]==h[j])ans+=3;
                        else ans+=2;
                    }
                }
            }
        }
        cout<<ans<<endl;
        return 0;
    }

     

    posted @ 2018-08-30 18:27 liankewei 阅读(...) 评论(...) 编辑 收藏
    展开全文
  • 现在juice这个潮店在国内有蛮多店铺的,很多人应该都有逛到过,在店铺里面会有不同品牌的潮牌在贩卖,绝对是年轻人们的集合地了,那你知道juice是什么牌子?在哪里购买?juice是什么牌子:juice,艺人陈冠希所开的潮...

    现在juice这个潮店在国内有蛮多店铺的,很多人应该都有逛到过,在店铺里面会有不同品牌的潮牌在贩卖,绝对是年轻人们的集合地了,那你知道juice是什么牌子?在哪里购买?

    juice是什么牌子:

    juice,艺人陈冠希所开的潮店名,店内以出售潮流品牌衣服、帽子、包包、公仔等产品,是一些年轻设计师设计出来的街头文化产物。Juice主要售卖街头文化的服饰,服饰大部份选自东京和英国两地,是一些年轻设计师设计出来的街头文化产物。街头文化是一种文化的综合体,囊括了如Hip-Hop、Pop-rock等亚文化,而这些文化的影子均可在Juice所贩售的服饰中找到影子,陈冠希希望他的时装店将来可以多加一些label,也希望有一天Juice可以成为一间很大且深受众多人士喜爱的服饰店铺。

    juice在哪里购买:

    1.JUICE国内首店:上海巨鹿路的一栋三层高的洋房

    2.JUICE STAND上海:上海第二家JUICE在上海大悦城二期。

    3.JUICE成都:成都远洋太古里。

    现在知道juice在哪里购买了吧。

    展开全文
  • Juice Shop project postcard

    2021-01-10 11:52:19
    about the OWASP Juice Shop so they can try it out at home without having to actually remember all this. As the stickers and other merchandise only have the logo and no text or URLs, that'd be ...
  • <div><p>Because cargo does not supports workspaces inside workspace, but I do want to add some more example networks (besides MNIST)</p><p>该提问来源于开源项目:spearow/juice</p></div>
  • Support Google Juice

    2020-11-29 01:03:22
    m using Google Juice and I'm trying to integrate Hotswapagent. It works when I change the body of a method, but when I try to add a method to a class I have this issue : <p>`HOTSWAP AGENT: ...
  • juice shopCan someone explain to me why in the name of all that is Google does a search for Scott Hanselman (even via Google Dance) that my LONG ABANDONED Radio Weblog shows up first? For crying out ....
    juice shop

    juice shop

    Can someone explain to me why in the name of all that is Google does a search for Scott Hanselman (even via Google Dance) that my LONG ABANDONED Radio Weblog shows up first?  For crying out loud, my posted-to-twice Longhorn Blog is second!  Sigh.  I'll need to keep paying Dave until I figure this out.

    有人可以向我解释为什么以Google的全部名字搜索Scott Hanselman (甚至通过Google Dance ),而我的LONG ABANDONED Radio Weblog首先出现了吗? 对于大声喊叫,我的第二次发布Longhorn博客排名第二! 叹。 在我弄清楚这一点之前,我需要继续向戴夫付款。

    翻译自: https://www.hanselman.com/blog/google-juice-hardly

    juice shop

    展开全文
  • Add juice bar preset

    2021-01-06 05:48:55
    <div><p>A juice bar is a place where people can order drinks, usually made with fresh fruit. Sometimes, they offer health food products, such as acai and breakfast bowls. At some places, they also ...
  • Juice Shop themed wallpaper

    2021-01-10 12:02:28
    <div><p><em>As a</em> fan of the OWASP Juice Shop <em>I want</em> a wallpaper for my PC <em>and</em> a wallpaper for my mobile phone/tablet <em>so that</em> I always feel warm and cozy when watching ...
  • update orlando juice url

    2020-12-27 03:49:49
    <div><p>Update url of orlando juice bike share.</p><p>该提问来源于开源项目:eskerda/pybikes</p></div>
  • Translate Juice to fr

    2020-12-27 12:11:39
    <div><p>Hi, <p>I Have translate this app to FR</p><p>该提问来源于开源项目:brianmichel/Juice</p></div>
  • Add Support for JuiceSSH

    2020-12-09 12:26:24
    <div><p>This PR adds support for JuiceSSH as requested in #141. <p>This might not be the most elegant way, seeing that we're adding another icon and settings-holder for JuiceSSH next to ...
  • rustfmt juice and coaster

    2020-12-01 23:11:35
    <div><p>I can provide pull request but you might want to do it yourself so you don't have to review it. <p>Code base would be much cleaner, easier to read, thank you.</p><p>...spearow/juice</p></div>
  • <p>Also tried using the default version of Juice with </p><pre><code>juice = { version = "0.2.2", default-features = false }</code></pre> in the TOML, which results in a separate ...
  • Therefore I need to customize the juice shop with the look and feel of the company I am giving the training to. <p>The following things need to be done: - [x] - Changing the name and title of the shop...
  • 靶场Juice-Shop学习

    2021-02-19 14:41:01
    靶场Juice-shop学习 1.安装 使用docker安装juice-shop docker pull bkimminich/juice-shop docker run --rm -p 3000:3000 bkimminich/juice-sop 浏览器访问http://localhost:3000即可,在右上角可以切换语言 教程...

    靶场Juice-shop学习

    1.安装

    使用docker安装juice-shop

    docker pull bkimminich/juice-shop

    docker run --rm -p 3000:3000 bkimminich/juice-sop

    浏览器访问http://localhost:3000即可,在右上角可以切换语言

    image-20210212140725828

    教程参考juice-shop

    使用工具:burpsuite 、owasp zap、exiftool、OpenStego、race-the-web等

    2. 一星 ⭐️

    Score Board

    考点:代码分析

    点击 Help getting started 开始 ,提示需要F12查看页面源代码获取第一关提示。在源代码main-es2018.js搜索score得到如下

    image-20210212144136666

    在URL后添加score-board请求,通过

    在第一次出现URL http://localhost:3000/rest/admin/application-configuration 也会出现

    image-20210219094743331

    暴露出页面URL

    image-20210212144318201

    Bonus Payload

    考点:DOM XSS

    在页面搜索框输入payload

    <iframe width="100%" height="166" scrolling="no" frameborder="no" allow="autoplay" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/771984076&color=%23ff5500&auto_play=true&hide_related=false&show_comments=true&show_user=true&show_reposts=false&show_teaser=true"></iframe>
    

    即可通过

    image-20210212145146047

    Bully Chatbot

    考点:暴力破解

    回复机器人使用开源软件juicy-chat-bot

    尝试输入coupon code、coupons、code等coupon code的组合进行暴力破解,可得

    image-20210212150027238

    优惠券代码为mNYT0f!Cal,通过

    image-20210212145453341

    Confidential Document

    考点: 目录遍历

    关于我们中有一行特殊的句子,点击链接,发现一个ftp服务

    http://localhost:3000/ftp/legal.md

    image-20210212150251591

    进入ftp目录,发现很多文件

    image-20210212150545233

    点击acquisitions.md

    image-20210212153308560

    阅读机密文件,即可通过

    image-20210212153023591

    DOM XSS

    考点:DOM XSS

    搜索框中输入payload

    <iframe src="javascript:alert(xss)">

    弹窗即可通过

    image-20210212153751103

    Error Handling

    常见404、403、500错误都可以通过

    image-20210212154026981

    Exposed Metrics

    考点:敏感信息泄露

    链接常见监测软件 (github.com),可知使用prometheus作为检测工具

    默认后端入口http://localhost:3000/metrics ,请求即可通过

    image-20210212154627571

    image-20210212154807557

    Missing Encoding

    考点:前端修改

    照片墙上 上传的照片没有正确编码,通过前端修改使其正常显示

    image-20210212154942320

    F12查看页面源码,对比正常显示的图片,构成图片的链接中特殊字符未编码 , 无法读取

    # <- URL编码-> %23

    image-20210212155335908

    结果如下

    image-20210212155654265

    即可通过

    image-20210212155723751

    Outdated Allowlist

    考点:代码分析 重定向

    查看源代码在 main-es2018.js,搜索redirect(重定向)发现URL

    image-20210212161310096

    请求http://localhost:3000/redirect?to=https://blockchain.info/address/1AbKfgvw9psQ41NbLi8kufDQTezwG8DRZm 即可通过

    image-20210212161444769

    Privacy Policy

    登录之后,阅读隐私政策,即可通过

    image-20210212161640815

    Repetitive Registration

    看点: 前端修改

    关闭注册button的重复验证,不重复密码就可以注册账户,通过

    image-20210212162106770

    DRY原则 = Don’t repeat youself

    image-20210212162337096

    Zero Stars

    看点:前端绕过

    image-20210212162730755

    burp拦截修改评分rating值为0,即可通过

    image-20210212162554353

    image-20210212162905587

    3. 二星 ⭐️⭐️

    Admin Section

    在mian-es2015.js 搜索admin发现

    image-20210212170659397管理员登录请求,即可通过

    http://localhost/#/administration (这个页面名在英语下好猜)

    image-20210212164508310

    image-20210212164605212

    Deprecated Interface

    考点:代码分析

    投诉页面查看源代码,搜索B2B

    image-20210212164927210

    除了可以上传PDF、ZIP文件,还可上传xml文件,上传一个xml文件即可通过

    B2B接口应该是指上传接口

    image-20210212165152452

    Five-Star Feedback

    进入管理页面,删除即可通过

    image-20210212165659311

    image-20210212165741011

    Login Admin

    考点:注入 万能密码

    使用万能密码即可登录管理员账户,即可通过

    'or 1=1 --

    image-20210212165907068

    image-20210212170018058

    Login MC SafeSearch

    考点:敏感信息泄露 社会工程

    谷歌搜索MC SafeSearch,是一个YouTobe音乐视频Protect Ya’ Passwordz。

    1606312794_5fbe635a02f0d4243dd2f.png!small?1606312797658

    “But then how do you remember is the question that I get I say why not use the first name of your favorite pet?Mine’s my dog,** Mr. Noodles**. It don’t matter if you know because I was tricky andreplaced some vowels with zeroes.

    Mr.Noodles <-0替换元音->Mr.N00dles

    mc.safesearch@juice-sh.op / Mr. N00dles

    image-20210212171921559

    Meta Geo Stalking

    考点: 社会工程

    忘记john的密码,密保问题最喜欢远足的地方

    查看照片墙,有一位twitter账号为johNny发布的图片,他应该就是john

    image-20210212172102515

    图片下载后获取图片GPS信息

    36 deg 57’ 31.38" N, 84 deg 20’ 53.58" W

    通过转换为经纬度:-84.348217,36.958717。然后去百度地图反查地址。得到答案是Daniel Boone National Forest

    image-20210212172936736

    Password Strength

    考点:暴力破解

    使用burp爆破管理员账号,得到密码为admin123,登录即可通过

    image-20210212173110643

    Security Policy

    考点:security.txt

    访问http://localhost:3000/security.txt 即可通过

    image-20210212173256615

    security.txt:渗透测试人员如何报告漏洞的描述文件

    放在网站根目录下
    /.well-known/ /.well-known/security.txt /security.txt /.well-known/

    image-20210212173327110

    View Basket

    考点:越权

    修改添加购物车链接身份标识即可通过

    image-20210212174020175

    image-20210212174122828

    Visual Geo Stalking

    考点:社会工程

    忘记emma密码,密保问题 年轻时第一个工作的公司

    照片墙 twitter账号为 e=ma^2,应该是emma

    image-20210212174520959

    左边中间窗户有海报 可得 ITsec

    image-20210212175116472

    Weird Crypto

    反馈z85、base85、base64、md5、hashid都可以

    • Forge a coupon code that gives you a discount of at least 80%关 使用z85算法加密

    • Solve challenge #999关 使用hashid加密

    • 数据库Users表中的密码使用没有加salt的MD5算法

    • 使用Google账户登录涉及base64加密算法

    image-20210212175156738

    3. 三星 ⭐️⭐️⭐️

    Admin Registration

    在新用户注册处修改请求体,添加

    "role":"admin" 即可通过

    测试

    image-20210212180921686

    Bjoern’s Favorite Pet

    考点: 社会工程

    bjoern@owasp.org 密保问题 宠物的名字

    https://youtu.be/Lu0-kDdtVf4?t=239 视频中可得 Zaya是他宠物的名字

    image-20210212181507543

    CAPTCHA Bypass

    burp抓取反馈请求

    http://localhost:3000/api/Feedbacks/ 重放10次即可通过

    image-20210212181709601

    CSRF

    考点:CSRF

    伪造一个来自Real-time HTML Editor (squarefree.com) (在线HTML编辑器)的修改用户名的请求

    1.直接修改正常的请求 Referer值为http://htmledit.squarefree.com/即可通过

    2.在Real-time HTML Editor (squarefree.com) 编辑CSRF POC,也可以使用Burp自动生成

    <form action="http://localhost:3000/profile" method="POST">
      <input name="username" value="CSRF"/>
      <input type="submit"/>
    </form>
    <script>document.forms[0].submit();</script>
    

    image-20210212182511716

    Database Schema

    考点:sqlite

    搜索框注出数据库结构,错误信息提示使用sqlite数据库

    payload为 '))UNION+SELECT+sql,'2','3','4','5','6','7','8','9'+FROM+sqlite_master--

    image-20210212183235815

    sqlite: sqlite_master是共有的表,存在sql字段类似MySQL的information_schema

    image-20210212183500219

    Deluxe Fraud

    考点:绕过

    修改 http://192.168.1.150:3000/rest/deluxe-membership 请求paymentMode值为none,即可通过

    image-20210212183703068

    image-20210212183857449

    Forged Feedback

    1.burp截取

    http://localhost:3000/api/Feedbacks/ 修改UserId即可

    image-20210212183958168

    2.前端修改,使上传表单UserId可以编辑删除 hidden,正常上传即可

    image-20210212184700247

    Forged Review

    burp截取

    http://localhost:3000/rest/products/1/reviews 修改author 值即可通过

    image-20210212185221948

    image-20210212185306599

    GDPR Data Erasure

    考点:sqlite

    在登录界面使用' or deletedAt IS NOT NULL--登录

    sqlite一段时间内删除的数据还可以访问

    image-20210212185351172

    Login Amy

    考点:社会工程

    amy的账号为amy@juice-sh.op

    搜索93.83 billion trillion trillion centuries

    你的针藏的有多好?网站里发现

    image-20210219111255091

    可得一个示例密码 D0g…

    得到最终密码为 K1f…

    amy wang出自动画片《飞出个未来》,她的丈夫是Kif Kroker

    image-20210212185612760

    Login Bender

    考点:sqlite

    使用万能密码登录

    ’ or 1=1 limit 2,1--

    image-20210212190038479

    Login Jim

    考点:sqlite

    使用万能密码登录

    ’ or 1=1 limit 1,1--

    image-20210212190834142

    Manipulate Basket

    burp截取添加购物车请求

    http://192.168.1.150:3000/api/BasketItems/ 再添加一个BasketId即可

    image-20210212191338420

    image-20210212190900960

    Payback Time

    burp截取

    http://192.168.1.150:3000/api/BasketItems/ 修改quantity值为负数,正常支付即可通过

    image-20210212192210577

    image-20210212191428661

    Privacy Policy Inspection

    隐私政策中存在特殊css

    image-20210212192513461

    可以得到 http://localhost We may also instruct you to refuse all reasonably necessary responsibility

    请求 http://localhost:3000/we/may/also/instruct/you/to/refuse/all/reasonably/necessary/responsibility 即可通过

    image-20210212192748754

    Product Tampering

    修改跳转链接为https://owasp.slack.com

    任选一个请求修改为PUT

    使用接口 /api/Products/9 可以更改了商品描述,请求头需要添加content-type

    Headers  ->  Content-Type:application/json
    Body ->  
    {"description": "<a href=\"https://owasp.slack.com\" target=\"_blank\">More...</a>"}
    

    image-20210212192822543

    Reset Jim’s Password

    账号jim@juice-sh.op 密保问题 哥哥的中间名

    账号中保存的地址

    123

    jim 应该是星际迷航的角色 James Tiberius Kirk,剧中他的兄弟是George Samuel Kirk

    image-20210212193134651

    Upload Size

    考点:前端绕过

    上传一个不满100kb的文件,使用burp截取在文件中增加到100kb以上即可

    !文件超过200kb就会报错

    image-20210212194405833

    Upload Type

    考点:前端绕过

    上传正常文件,修改文件后缀即可

    image-20210212194709390

    4.挑战4星⭐️⭐️⭐️⭐️

    Access Log

    考点:暴力破解

    使用 The OWASP ZAP进行暴力破解,遍历所有目录

    访问 http://localhost:3000/support/logs 即可通过

    image-20210212195151018

    image-20210212195227284

    Allowlist Bypass

    上文中有关于重定向的问题,可以重定向到

    https://localhost:3000/redirect?to=https://blockchain.info/address/1AbKfgvw9psQ41NbLi8kufDQTezwG8DRZm

    重定向的地址设置了白名单,构造语句让重定向的后面不变,将重定向的地址隐藏在URL中

    https://localhost:3000/redirect?to=https://www.baidu.com?https://blockchain.info/address/1AbKfgvw9psQ41NbLi8kufDQTezwG8DRZm

    请求即可定向到任意地址

    image-20210212200557698

    Christmas Special

    考点:sqlite

    这个优惠应该与上文删除的账号一样,通过 --注释掉语句即可

    将数据库中所有的数据都查询出来

    image-20210212202536538

    image-20210212202632143

    正常购买,即可

    image-20210212201838631

    Easter Egg

    ftp目录下有eastere.gg文件,绕过下载可得

    “Congratulations, you found the easter egg!”

    • The incredibly funny developers

    Oh’ wait, this isn’t an easter egg at all! It’s just a boring text file! The real easter egg can be found here:

    L2d1ci9xcmlmL25lci9mYi9zaGFhbC9ndXJsL3V2cS9uYS9ybmZncmUvcnR0L2p2Z3V2YS9ndXIvcm5mZ3JlL3J0dA==

    Good luck, egg hunter!

    base64解码后可得/gur/qrif/ner/fb/shaal/gurl/uvq/na/rnfgre/rtt/jvguva/gur/rnfgre/rtt

    ROT13 解码此成/the/devs/are/so/funny/they/hid/an/easter/egg/within/the/easter/egg

    访问即可通过

    ROT13 是凯撒密码的一种变形,简易的置换暗码

    image-20210212202737439

    Ephemeral Accountant

    考点:sqlite

    根据上文获取的Users表中的结构,登录时注释掉后面的语句,直接请求返回一个User的完整数据payload为

    xxx' UNION SELECT 999, '', 'acc0unt4nt@juice-sh.op', 'password', 'accounting', '', '0.0.0.0', '/assets/public/images/uploads/default.svg', '', 1, '2020-08-15T18:22:49.161Z', '2020-08-15T18:22:49.161Z', null; --

    image-20210212203537935

    Expired Coupon

    根据上文获取的优惠券代码mNYT0f!Cal 正常支付,可以得到

    http://localhost:3000/rest/basket/1/checkout

    image-20210212213246543

    “couponData”:“bU5ZVDBmIUNhbC0xNjEzMDg0NDAwMDAw”

    base64解码得到mNYT0f!Cal-1613084400000

    查看源代码main-es2018.js,搜索campaign可得

    image-20210212214450604

    image-20210212215819460

    WMNSDY2019-15519996e5 <-base64-> V01OU0RZMjAxOS0xNTUxOTk5NmU1

    更改coupondata重放即可

    image-20210212220131946

    Forgotten Developer Backup

    http://localhost:30000/ftp/pakage.json.bak%2500.md

    %00截断下载即可通过

    image-20210212223903255

    Forgotten Sales Backup

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

    image-20210212224058507

    GDPR Data Theft

    查看用户的个人数据,发现在保存订单数据时会将Email脱敏后保存,只要用户名脱敏后一样订单数据也是一样的

    image-20210212224338751

    新建一个用户邮箱为 jim@juoce-sh.op,获取了jim的个人数据,导出jim的数据后即可通过。

    image-20210212224725697

    image-20210212224855937

    Legacy Typosquatting

    上文在ftp目录找到开发人员的备份文件 package.json.bak其中有系统组件

    在反馈中提交epilogue-js,即可通过

    image-20210212225631471

    Login Bjoern

    Bjoern通过google账户注册了账号 bjoern.kimminich@googlemail.com

    在源代码main-es2018.js中搜索OAuth,找到登录函数

    image-20210212230448055

    使用账号颠倒后进行base64编码就可以登录

    moc.liamg@hcinimmik.nreojb<=>bjoern.kimminich@gmail.com bW9jLmxpYW1nQGhjaW5pbW1pay5ucmVvamI=

    image-20210212230641672

    Misplaced Signature File

    ftp目录下suspicious_errors.yuml文件

    参考 SIEM签名文件

    image-20210212231057456

    image-20210212231142073

    NoSQL Manipulation

    考点:NoSQL

    截取正常评论URL http://localhost:3000/rest/products/1/reviews

    修改为PATCH方法,URL为http://localhost:3000/rest/products/reviews

    添加请求体 { “id”: { “$ne”: -1 }, “message”: “NoSQL Injection!” }

    注:HTTP头需要添加Content-Type: application/json

    image-20210212231903492

    image-20210212231339758

    Poison Null Byte

    %00截断下在ftp目录下非md、pdf文件即可

    image-20210212232321709

    Reset Bender’s Password

    考点:社会工程

    账户 bender@juice-sh.op 密保问题 成年后在哪工作

    image-20210212233011391

    根据地址 确定bender是 飞出个未来中的机器人班德

    参考维基百科-班德维基百科-自杀电话亭

    班德最开始工作在一个金属加工厂弯曲钢梁建设自杀电话亭。自从2008年出现自杀电话亭,最主要的品牌是Stop’n’Drop。

    Bender

    可以得知它的密保是 Stop’n’Drop

    image-20210212232406444

    Reset Uvogin’s Password

    考点:社会工程

    账户 uvogin@juice-sh.op 密保问题 最喜欢的电影

    twitter上有个@uv0gin的账号,存在一条删除的推特显示最喜欢的电影是

    Uvogin's Twitter Snapshot

    Silence of the Lambs(沉默的羔羊)

    image-20210212232421151

    Steganography

    image-20210212234053232

    查看客户反馈发现只有一个反馈背景图片是png文件

    img

    使用OpenStego提取 图片隐藏数据,可以提取到

    image-20210219141458972

    Pickle Rick unveiled

    这是Pickle Rick(泡菜瑞克)出自Rick_and_Morty(瑞克与莫蒂)

    image-20210212233710314

    User Credentials

    考点:sqlite

    遍历出所有的用户名/邮箱、密码

    image-20210212235215421

    在Users表中获取数据 payload

    '))+UNION+SELECT+id,username,password,email,'5','6','7','8','9'+FROM+Users--

    image-20210212235059291

    Vulnerable Library

    配置文件package.json.bak中搜索组件版本信息

    可知

    • sanitize-html:HTML 字符串的规范化不会递归地应用于输入,从而允许攻击者可能注入脚本和其他标记(请参阅https://snyk.io/vuln/npm:sanitize-html:20160801)
    • express-jwt:从其依赖项继承身份验证旁路和其他漏洞(请参阅https://app.snyk.io/test/npm/express-jwt/0.1.3)

    image-20210212235332777

    5.五星挑战⭐️⭐️⭐️⭐️⭐️

    Blockchain Hype

    1. 在浏览器的开发人员工具中打开 ,搜索一些关键字,如"ico",“令牌”,“比特币"或"altcoin”。main-es2015.js

    2. 请注意 JavaScript 函数的名称,这些函数发生在 和 中,如 和 。这些名称是混淆的,因此它们可能会有所不同。Vu()``Hu(l)

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JTSj2vyf-1613716853429)(https://github.com/bkimminich/pwning-juice-shop/raw/master/appendix/img/minified_js-tokensale.png)]

    3. 搜索 中对这些函数的引用可能会产生一些更多的函数,如和一些可能的路由名称main-es2015.js``zu(l)``app-token-sale

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cFcDFYTx-1613716853429)(https://github.com/bkimminich/pwning-juice-shop/raw/master/appendix/img/minified_js-tokensale_trail.png)]

    4. 导航到http://localhost:3000/#/app-token-sale或变体http://localhost:3000/#/token-sale只是为了意识到这些路由不存在。

    5. 经过一些更多的追逐通过分明代码,你应该意识到,在路由映射中引用,已经帮助查找仔细隐藏的"分数板"页面和访问存储的管理部分,但不是静态标题。它映射到另一个变量(可能以不同的方式命名您)Vu``Ca

      Tokensale route mapping in main-es2015.js

    6. 搜索以查找应将匹配器返回到要查找的路由名称的函数的声明。function Ca(

      Tokensale route matcher in main-es2015.js

    7. 将模糊函数复制到浏览器的 JavaScript 控制台中,并立即通过追加 执行。这可能会产生 一个 。当您将值传递时,喜欢 或 您会注意到输入值只是返回。()``Uncaught SyntaxError: Unexpected token )``(1)``('a')

    8. 将路由映射与其他映射进行比较表明,此处的 a 映射到 ,而大多数其他映射映射到其 。matcher``component``path``component

    9. 为您提供抢手路径的代码是传递到函数中的代码块!match()``Ca(l)

      Code block returning the Tokensale path

    10. 复制内部代码块并在主机中执行该代码块仍会产生错误!

    11. 您需要将它追加到一个字符串中,使其正常工作,这将最终生成路径。/tokensale-ico-ea

    12. 导航到http://localhost:3000/#/tokensale-ico-ea以解决此难题。

    "" + function() {
                    for (var l = [], n = 0; n < arguments.length; n++)
                        l[n] = arguments[n];
                    var e = Array.prototype.slice.call(l)
                      , t = e.shift();
                    return e.reverse().map(function(l, n) {
                        return String.fromCharCode(l - t - 45 - n)
                    }).join("")
                }(25, 184, 174, 179, 182, 186) + 36669..toString(36).toLowerCase() + function() {
                    for (var l = [], n = 0; n < arguments.length; n++)
                        l[n] = arguments[n];
                    var e = Array.prototype.slice.call(arguments)
                      , t = e.shift();
                    return e.reverse().map(function(l, n) {
                        return String.fromCharCode(l - t - 24 - n)
                    }).join("")
                }(13, 144, 87, 152, 139, 144, 83, 138) + 10..toString(36).toLowerCase()
    

    image-20210213000132316

    image-20210213000157035

    Change Bender’s Password

    万能密码登录bender@juice-sh.op

    截取更改密码请求URL

    http://localhost:3000/rest/user/change-password?current=1&new=slurmCl4ssic&repeat=slurmCl4ssic 删除原密码仍可成功更改密码

    image-20210213000620969

    image-20210213000910174

    Cross-Site Imaging

    链接可爱的跨域小猫 (placekitten.com)

    在高级成员页面查看页面源代码

    image-20210213002831645

    图片JuiceShop_Logo.png被连续引用,搜索源代码

    image-20210213003646102

    http://localhost:3000/#/deluxe-membership?testDecal=…%2F…%2F…%2F…%2Fredirect%3Fto%3Dhttps:%2F%2Fplacekitten.com%2Fg%2F400%2F500%3Fx%3Dhttps:%2F%2Fgithub.com%2Fbkimminich%2Fjuice-shop

    通过重定向将链接图片复制给testDecal

    image-20210213003922672

    image-20210213003937905

    Email Leak

    API支持JSONP,添加URL参数callback返回一个JSONP数据

    JSONP 只支持GET,必须要跨域

    image-20210211152754635

    image-20210213004208396

    Extra Language

    正常请求语言文件 http://localhost:3000/assets/i18n/zh_CN.json

    image-20210211135810601

    语言文件组成 区位代码_国家代码.json

    暴力破解得到 tlh-AA

    image-20210213010141786

    tlh指克林贡语,星际迷航中人造的外星语

    image-20210213004722887

    Frontend Typosquatting

    http://localhost:3000/3rdpartylicenses.txt 检索默认第三方许可证列表

    image-20210213005050812

    anuglar2-qrcode 在反馈中提交即可

    image-20210213004851645

    Kill Chatbot

    image-20210211182808997

    chatbot会读取用户名不进行过滤

    image-20210211182919335

    将用户名设为 admin"); process=null; users.addUser(“1337”, "test即可关闭chatbot

    image-20210213005453607

    Leaked Access Logs

    在https://stackoverflow.com/questions/tagged/access-log搜索juice-shop得到

    GET``161.194.17.103 - - [27/Jan/2019:11:18:35 +0000] “GET /rest/user/change-password?current=0Y8rMnww$*9VFYE%C2%A759-!Fg1L6t&6lB&new=sjss22%@%E2%82%AC55jaJasj!.k&repeat=sjss22%@%E2%82%AC55jaJasj!.k8 HTTP/1.1” 401 39 “http://localhost:3000/” “Mozilla/5.0 (Linux; Android 8.1.0; Nexus 5X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36”

    image-20210211141106542

    对比哈希 J12934@juice-sh.op 0Y8rMnww$*9VFYE§59-!Fg1L6t&6lB

    image-20210213010451679

    Login CISO

    用OAuth 2.0 Login Ciso@juice-sh.op

    添加自定义Http头

    image-20210211125938472

    image-20210213011202420

    Reset Bjoern’s Password

    账号 bjoern@juice-sh.op 密保问题 年轻时的邮政编码

    bjoern是juice-shop的项目负责人,来自德国

    邮政编码是 West-2082

    image-20210213011241614

    Reset Morty’s Password

    账号 morty@juice-sh.op 密保问题 宠物的名字

    猜测莫蒂是 莫蒂 史密斯 来自瑞克与莫蒂

    Morty Smith

    他莫蒂有一条狗叫snuffles或snowball

    通过leet(黑客语)变形破解得到 结果5N0wb41L

    image-20210213011256010

    Retrieve Blueprint

    *OWASP 果汁店徽标(3D 打印)产品的描述表明,该产品实际上可能具有某种蓝图,exif信息中OpenSCAD显示可能存在.stl文件

    下载http://localhost:3000/public/images/products/JuiceShop.stl 成功

    image-20210213012117237

    Supply Chain Attack

    Software Supply Chain Attack ???软件供应链攻击

    从软件依赖中提交漏洞原始报告https://github.com/eslint/eslint-scope/issues/39

    image-20210213012255446

    Two Factor Authentication

    通过注入得到 wustbrot@juice-sh.op的deluxe Token为IFTXE3SPOEYVURT2MRYGI52TKJ4HC3KH

    通过TFA二步验证APP得到不断变化的6位验证码,登录即可

    image-20210211161011716

    image-20210213012344069

    Unsigned JWT

    jwtn3d@juice-sh.op的JWT令牌需要用base64url编码

    推荐burp插件JWT

    eyJ0eXAiOiJKV1QiLCJhbGciOiJub25lIn0.eyJzdGF0dXMiOiJzdWNjZXNzIiwiZGF0YSI6eyJpZCI6MSwidXNlcm5hbWUiOiJjb3Vwb24gY29kZSIsImVtYWlsIjoiand0bjNkQGp1aWNlLXNoLm9wIiwicGFzc3dvcmQiOiIwMTkyMDIzYTdiYmQ3MzI1MDUxNmYwNjlkZjE4YjUwMCIsInJvbGUiOiJhZG1pbiIsImRlbHV4ZVRva2VuIjoiIiwibGFzdExvZ2luSXAiOiJ1bmRlZmluZWQiLCJwcm9maWxlSW1hZ2UiOiJhc3NldHMvcHVibGljL2ltYWdlcy91cGxvYWRzL2RlZmF1bHRBZG1pbi5wbmciLCJ0b3RwU2VjcmV0IjoiIiwiaXNBY3RpdmUiOnRydWUsImNyZWF0ZWRBdCI6IjIwMjEtMDItMTAgMTI6NDk6MjguMDg2ICswMDowMCIsInVwZGF0ZWRBdCI6IjIwMjEtMDItMTAgMTM6Mjc6MDMuMzU5ICswMDowMCIsImRlbGV0ZWRBdCI6bnVsbH0sImlhdCI6MTYxMzAzNzY5MCwiZXhwIjoxNjEzMDU1NjkwfQ.

    image-20210213012553765

    6.六星挑战 ⭐️⭐️⭐️⭐️⭐️⭐️

    Forged Coupon

    阅读源码可知加密算法为Z85,优惠券构成为 月份缩写 年份数字-折扣

    image-20210211191720196

    image-20210211191659698

    z85算法可以通过npm下载https://www.npmjs.com/package/z85-cli

    npm install -g z85-cli
    

    Forged Signed JWT

    rsa_lord@juice-sh.op

    爆破目录在(http://localhost:3000/encryptionkeys)找到密钥

    image-20210211194100929

    使用burp插件JWT修改电子邮件参数为 rsa_lord@juice-sh.op

    1

    Imaginary Challenge

    在cookie中探索continueCode的生成机制

    参考:Hashids - generate short unique ids from integers

     var hashids = new Hashids("this is my salt", 60, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890");
    
      var id = hashids.encode(999);
      var numbers = hashids.decode(id);
    
      $("#input").text("["+numbers.join(", ")+"]");
      $("#output").text(id);
    

    以PUT请求,http://192.168.1.150:3000/rest/continue-code/apply/69OxrZ8aJEgxONZyWoz1Dw4BvXmRGkM6Ae9M7k2rK63YpqQLPjnlb5V5LvDj

    image-20210211202426702

    image-20210213013044400

    Login Support Team

    ftp下有一个kdbx文件,是keepass的数据库使用

    在源代码中搜索support

    Support team login hint in minified JS

    翻译后得到Support Team: Our secret is still common Caoimhe master password empty! 1.keepass数据库被一个文件保护着

    2.Caoimhe 一个爱尔兰女性的名字

    http://localhost:3000/assets/public/images/carousel/6.jpg

    图片文件可以解锁

    image-20210211193315808

    image-20210213013106512

    Multiple Likes

    使用race-the-web,短时间连续请求时间差在150ms以内即可通过

    image-20210211230906302

    image-20210213013128758

    Premium Paywall

    解锁高级挑战 (blockchain.info)

    审查元素得到密文

    IvLuRfBJYlmStf9XfL6ckJFngyd9LfV1JaaN/KRTPQPidTuJ7FR+D/nkWJUF+0xUF07CeCeqYfxq+OJVVa0gNbqgYkUNvn//UbE7e95C+6e+7GtdpqJ8mqm4WcPvUGIUxmGLTTAC2+G9UuFCD1DUjg==

    爆破目录在(http://localhost:3000/encryptionkeys)找到密钥

    image-20210211194100929

    为1337133713371337.EA99A61D92D2955B1E9285B55BF2AD42

    image-20210211201615614

    解密,结果**/this/page/is/hidden/behind/an/incredibly/high/paywall/that/could/only/be/unlocked/by/sending/1btc/to/us**

    image-20210211195933545

    image-20210213013151076

    SSRF

    在用户的个人资料处可以指定图片链接http://localhost:3000/solve/challenges/server-side?key=tRy_H4rd3r_n0thIng_iS_Imp0ssibl3 造成SSRF

    image-20210213013217327

    展开全文
  • fail to run juice shop

    2021-01-10 11:41:09
    <div><p>root:~/Desktop/juice-shop1# npm start <p>juice-shop.3.0 start /root/Desktop/juice-shop1 node app <pre><code> info: All dependencies in ./package.json are satisfied (OK) (node:49520) ...
  • 12-Juice饮料

    2019-10-09 07:21:27
    Juice饮料 转载于:https://www.cnblogs.com/StevenHuSir/p/Juice.html
  • Harvesting Smartphone Privacy Through Enhanced Juice Filming Charging Attacks
  • For several versions (atleast since 515 if I remember correctly), Fruit juice has not been localized correctly: material.juice is shown instead. <p><strong>Versions Forge: not relevant GTCE: 1.12.2-...
  • Juice - EMA 偏差

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,514
精华内容 605
关键字:

juice