ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • BWAPP 5주차(cross-site scripting stored)
    보안/WEB HACKING 2024. 3. 14. 14:59

    Cross-Site Scripting – Stored(Blog)

     

    난이도 : low

    Quest. 다음 화면과 같이 경고창을 띄워봅시다.

    <h1>bee</h1>를 입력하면

    이 나온다.

    따라서 <script>alert("success")</script> 를 빈칸에 적자.


    Quest. 사용자의 쿠키 값을 경고창에 띄워봅시다.

    Hint1. 사용자의 쿠키값은 document.cookie에 저장되어 있습니다.

    hint 를 이용해서 <script>alert(document.cookie)</script> 를 입력한다.


    Quest. (게시판에 등록된 내용을 삭제하지 않았다면) XSS 공격을 시도할 때마다 경고창이 여러 개가 뜨는 것을 확인했습니다. 왜 그럴까요? 이유를 작성해주세요.

    Hint1. Stored XSS 방식에 대해 잘 생각해봅시다.

    Hint2. 소스코드를 확인해봅시다. 테이블에 어떻게 저장되어 있나요?

    hint2를 참고해서 소스코드를 확인해보자. 쿠키값과 success 경고창이 나왔던 것이 그대로 나와있다. stored XXS 방식은 코드를 서버에 저장한다. 따라서 게시판에 등록된 내용을 삭제하지 않으면 시도했던 코드가 나오면서 경고창이 여러 개 뜬다.

     


    난이도 : high

    Quest. 공격할 수 없습니다. 이유를 적어주세요.

    Hint1. 특수 문자를 막는 함수가 있는 것 같습니다.

    Hint2. xss_stored_1.php에서 확인할 수 있습니다.

     

    xxs_stored_1에서

    level 2이므로 functions_external 에서 xxs_check_3를 확인해보자.

    xxs_check_3에서는 특수문자를 UTF-8로 반환해주는 함수인 htmlspecialchars 을 사용하기 때문에 공격할 수 없다.


    Cross-Site Scripting – Stored (Change Secret)

    난이도 : low

    Quest. Change Secret 페이지에서 XSS 공격 후 SQL Injection(Login From/users) 페이지에서 확인할 수 있습니다. 다음 화면을 출력해보세요. (bee/bug)

    먼저 경고창이 뜨도록 new secret 에 <script>alert("success")</script> 를 작성한다.

    이후 SQL Injection(Login From/users) 에서 bee bug를 login과 password 에 작성하면 된다.

     


     

    Quest. secret을 사용자의 쿠키 정보로 바꿔봅시다.

    new secret 에 <script>alert(document.cookie)</script> 을 작성한 후 SQL Injection(Login From/users) 에서 bee bug를 login과 password 에 작성하면 된다.

     


    난이도 : high

    Quest. 공격할 수 없습니다. Secret은 두 개의 함수를 이용해 방어하고 있습니다. 함수의 이름을 적어주세요.

    Hint1. xss_stored_3.php에서 확인할 수 있습니다.

    Hint2. DB에 저장되기 전에 변수를 어떻게 처리하는지 살펴보세요.

    hint1에 나온대로 xss_stored_3.php에 들어가자. level high 이므로 case 2이다. case 2는 xxs_check_3를 사용한다.

    htmlspecialshars 함수와 mysql_real_escape_string 을 사용한다.

     
     

    '보안 > WEB HACKING' 카테고리의 다른 글

    XSS game 03, 04 (7주차)  (1) 2024.03.14
    XSS game 01, 02 (6주차)  (0) 2024.03.14
    BWAPP 4주차(cross-site scripting get, post)  (0) 2024.03.14
    BWAPP 3주차(post, search)  (0) 2024.03.14
    BWAPP 2주차(reflected-post, stored)  (0) 2024.03.14
Designed by Tistory.