본문 바로가기
Security Project

33. 다른 사용자 게시물 수정 삭제

by 귀멸 2023. 1. 1.

beebox 안에 취약 쇼핑몰 웹페이지(gmshop) 설치 후 Kali로 실습

 

1. 인증 처리 미흡

  • 회원 가입 시 아이디 중복/적절하지 않은 ID 스크리닝을 우회 할 수 있는지
  • 필수로 입력해야하는 값들을 입력하지 않고 우회 할 수 있는지
    submit buttom   form action
  • html / javascript 클라이언트 단계에서 제한하는가 php등 서버 사이드에서도 제한하고 있는가
  • 다른 사용자의 게시물 수정, 삭제 가능한가?
  • 1:1 문의 게시판, 비공개 글을 다른 사용자가 열람만 하게 되더라도 취약점

     A 사용자(chrome) - B 사용자(IEX)

     A 사용자 → 관리자

 

  1) attacker와 victim으로 각각 회원 가입

 

  2) victim이 자유게시판에 비밀번호를 설정한 게시글 작성 / 비밀 게시글 작성

  3) attacker로 로그인 하여 victim의 비밀번호가 설정되어 있는 게시글을 수정가능한지 본다

      당연히 비밀번호를 모르기 때문에 수정이 불가능하며 비밀글은 열람 자체가 불가능하다.

   

  4) attacker로 임의의 게시글을 작성하여 비밀번호를 설정하고 올린 뒤,

      해당 게시글을 비밀번호를 입력하고 수정해보면서 Burp Suite으로 아래와 같이 Reponse packet을 잡아보면

      value idx=147값이 게시글 번호임을 알 수 있다. 

      이를 victim이 작성한 게시글에 해당하는 parameter로 바꿔 주면 144, 145 

      해당 게시글의 수정 페이지로 접속 되는 것을 볼 수 있다. 접속해서 마음대로 열람, 수정해주면 끝

<form name="boardForm" method="post" action="board_edit.php">
<input type="hidden" name="data" value="idx=147">
<input type="hidden" name="boardIndex" value="6">
</form>
<script language='javascript'>
		function Auto_Submit()
		{
			document.boardForm.submit();
		}
		</script>
		<body onload='Auto_Submit()'></body>

    

Reponse packet에서 javascript를 읽어내어 제한조건들을 우회할 수 있도록 찾아본다.

댓글