관리 메뉴

Information Security

인증 결함 본문

Web Security/Bee-Box

인증 결함

HackingPractice 2019. 8. 25. 14:48

인증 결함

- 인증에 필요한 사용자의 계정 정보를 노출하는 취약점으로, 보통 웹 페이지의 HTML 코드에 계정 정보를 노출하거나 인증을 GET 메서드로 요청하여 URL에 계정 정보가 노출한다.

- 웹 사이트 가입할 때 추측할 수 있거나 무차별 대입 공격이 가능한 비밀번호 입력을 허용하는 경우도 포함한다.

 

Level (Low)

아이디 bee 비밀번호 bug를 입력했는데 Invalid credentials! 문구가 나타났다.

그림 1-1 로그인 실패

소스 코드를 확인한 결과 아이디 tonystark 비밀번호 I am Iron Man을 확인할 수 있다.

그림 1-2 소스코드 

그림 1-2에 아이디 tonystark 비밀번호 I am Iron Man 입력 시 로그인 성공했다.

그림 1-3 로그인 성공

Level (Medium)

Name 입력란에 brucebanner가 입력되어 있다.

그림 1-4 로그인 폼

아이디와 패스워드가 노출하지 않는다. unlock_secret()함수를 호출하는 것을 알 수 있다.

그림 1-5 소스코드

소스 코드에 passphrasesecrect 변수의 값이 일치하는 경우 로그인 성공하는 것을 알 수 있다.

그림 1-6 비밀번호 조건

구를 크롬 개발자 도구를 이용해 실행한 결과 hul smash!라는라는 패스워드를 얻었다.

그림 1-7 패스워드

그림 1-7에서 획득한 패스워드를 입력해 로그인을 성공했다.

그림 1-8 로그인 성공

대응방안

다른 단계들은 모두 코드 안에 로그인 정보가 들어있지만, High에서는 웹 페이지에도 PHP 소스 코드에도 아이디와 비밀번호를 노출하지 않는다.

그림 1-8 ba_inseucre_login_3.php 소스 코드

 

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

Broken Auth – Password Attacks  (0) 2019.08.25
Broken Auth – Weak Passwords  (0) 2019.08.25
Time Based  (0) 2019.08.25
Blind SQL Injection 공격  (0) 2019.08.25
SQL Injection (Login Form/User)  (0) 2019.08.25