Notice
Recent Posts
Recent Comments
Link
«   2026/06   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Archives
Today
Total
관리 메뉴

IT공부방 (정보보안)

모의해킹 취업반 스터디 9기 16주차 (2) 인증/인가 취약점 본문

정보보안 공부/모의해킹 스터디 9기

모의해킹 취업반 스터디 9기 16주차 (2) 인증/인가 취약점

mister jeon 2026. 2. 3. 23:45

< 16주차  > 

인증/인가 취약점에 대해 알아보겠으며 실습을 통해

례를 알아보겠습니다. 우선 기본적인 용어는

접근 통제는 식별 > 인증 > 인가 3단계 원칙으로 하며

. 식별 : 본인이 누구라는 것을 시스템에 밝히는 것 

. 인증 : 본인이 주장하는 사용자가 맞다라는 것을

  시스템에 증명하는 것 (신원확인)

. 인가 : 무엇을 할 수 있는가? EX) 너 관리자 권한 맞아 ???

이 중에 인증/인가에 대해 더 자세히 알아보겠습니다.

 

 서버가 클라이언트를 믿는 경우 어떻게 되는지 알아보겠습니다.

<parc1> 페이지 변조

burp에서 확인한 결과 메서드 부분에 로그인 시 GET /part3/prac1/mypage.php?id=58 .

사용자 id를 지정하는 방식을 사용하고 있었습니다

이것도 조작이 가능한지 알아보겠습니다.

GET /part3/prac1/mypage.php?id=1 으로 하니

user1의 계정을 볼 수 있었으며 ID 번호 추가 검색 결과

이는 서버가 세션 아디로 판단 하는것이 아닌

id 번호로만으로 판단을 했다라는 것이 원인입니다.

 

<parc2> 쿠키 변조

이번에는 비슷한 마이페이지에서 admin 계정을 볼 수 있을까??

burp에서 확인한 결과uinfo=eyJpZCI6NTcsImxvZ2luX3RpbWUiOiIyMDI2LTAyLTAz

VDE0OjAzOjAxKzAwOjAwIiwiaXAiOiIyMTEuMjI1LjE1LjM0In

0%3D; 수상하게 보였습니다. 이를 decoder 기능으로 확인한 결과

{"id":57,"login_time":"2026-02-03T14:03:01+00:00","ip":"211.225.15.34"}%3D

볼 수 있었습니다. 이를 admin 관리자로 바꾸어 적용해보니

관리자 페이지도 볼 수 있었습니다. 이는 쿠키 변조를 사용하는

방법입니다. 이 또한 세션id를 체크하여 관리자 페이지에

접근 할 수 없도록 해야하는데 이 기능이 아닌 uinfo= 기능에

의존하여 발생하는 취약점이 되겠습니다.

 

<parc3> User-Agent 변조

현재에는 관리자 페이지에는 접근 할 수 없다라고 되어있습니다.

이 클라이언트에서는 관리자 페이지를 볼 수 없다라고 되어있는데

burp 에서 User-Agent 지워보도록 하겠습니다.

이는 User-Agent 기반으로 관리자 페이지의 접속을 판단 한다는

것 인데 일반적으로는 User-Agent 지울 경우 특정한 페이지가

보이면 안되도록 설계를 해야하지만 구성을 안했을 경우

웹 서버에서 특정 페이지를 보여주는 경우가 있습니다.

 

<parc4>memu.php 변조

 

parc4 CTF 문제는 특정 사이트를 burp로 확인결과

mypage.php말고 memu.php가 있습니다.

isAdmin":false ? 라고 표기가 되었있습니다. 이것을 true라고

바꿔주면 어떻게 될까요?

admin.php가 보여지게 됩니다.

실제 페이지에서도 admin 메뉴가 추가되는 모습입니다.

이는 관리자등 어떠한 메뉴를 요청을 할때 검증을 하지않아

발생되는 취약점이며 항상 특정 페이지를 요청할때는

세션ID 기반을 이용하여 사용해야겠다는 생각이 들었습니다.