관리 메뉴

Information Security

Insecure DOR (Change Secret) 본문

Web Security/Bee-Box

Insecure DOR (Change Secret)

HackingPractice 2019. 9. 8. 11:18

Insecure DOR (Change Secret)

사용자의 비밀번호 수정할 수 있는 페이지로 직접 객체 참조 취약점

 

Level (Low)

New secret 비밀번호를 1234로 변경했다.

그림 1-1 비밀번호 변경

그림 1-1에서 입력한 비밀번호가 변경되는 것을 알 수 있다.

그림 1-2 비밀번호 변경

버프 스위트로 확인한 결과 패스워드가 1234로 전달되는 것을 알 수 있다.

그림 1-3 버프스위트

버프스위트를 이용해 A.I.M 계정을 패스워드 1234로 변경을 시도했습니다.

그림 1-4 패스워드 변경

A.I.M 계정이 패스워드 1234로 변경된 것을 알 수 있다.

그림 1-5 A.I.M 계정

Level (Medium)

난이도 중에서는 그림 1-3과는 다르게 token 값이 생성되는 것을 알 수 있다.

그림 1-6 token 값

대응방안

mysqli_real_escape_string 함수를 사용하여 Null, \n, \r, \ ‘, “, ^Z에 백슬래시를 추가하여 SQL 인젝션 공격을 방어한다. htmlspecialchars 함수를 호출하여 입력 데이터를 UTF-8로 반환하여 HTML 코드에 사용되는 문자들을 HTML 엔티티 코드로 변환한다.

그림 1-7 insecure_direct_object_ref_1.php 소스코드

'Web Security > Bee-Box' 카테고리의 다른 글

Insecure DOR (Order Tickets)  (0) 2019.09.08
Insecure DOR (Reset Secret)  (0) 2019.09.08
XSS – Reflected (HREF)  (0) 2019.09.08
XSS – Reflected (PHP_SELF)  (0) 2019.09.08
phpMyAdmin BBCode Tag XSS  (0) 2019.09.07