이 도구를 이용하여 허용받지 않은 서비스 대상으로 해킹을 시도하는 행위는 범죄 행위입니다. 해킹을 시도할 때에 발생하는 법적인 책임은 그것을 행한 사용자에게 있다는 것을 명심하시기 바랍니다.
인증 결함(Broken Authentication)이란 인증에 필요한 사용자의 계정 정보를 노출하는 취약점으로 보통 웹 페이지의 HTML 코드에 계정 정보를 노출하거나 인증을 GET 메서드로 요청하여 URL에 계정 정보가 노출되기도 합니다. 웹 사이트 가입 시 추측할 수 있거나 무차별 대입 공격이 가능한 비밀번호(예 1234, admin 등) 입력을 허용하는 경우도 포함됩니다. 이외에도 비밀번호 찾기 기능에서 사용자의 계정 정보를 노출하기도 합니다.
A2 - Broken Auth - Forgotten Function
해당 문제는 비밀번호를 잊어 버렸을 경우 E-mail 주소 인증을 통하여 비밀번호를 알려주는 페이지입니다.
의미 없는 E-Mail 주소 입력 시 잘못된 사용자라는 문구가 출력되는 것을 확인할 수 있습니다. 그럼 BWAPP에 등록된 E-Mail 주소를 찾아 확인을 해보도록 하겠습니다.
사용자 정보 확인은 앞에서 다룬 SQL Injection을 참고하여 확인하실 수 있습니다.
https://securitycode.tistory.com/133?category=865775
또 다른 방법으로는 DB에서 사용자 정보를 조회하여 확인하는 방법이 있습니다.
확인한 정보로 E-mail 주소를 입력 시 아무런 검증 없이 계정 정보와 패스워드가 노출되는 것을 확인할수 있습니다.
Level Medium 단계에서는 이메일을 통하여 계정정보와 패스워드를 그대로 발송하는 것을 확인할 수 있습니다.
Level High 단계에서는 랜덤 문자열을 SHA-1 암호화 해시 함수로 reset_code를 만들어 보내주고 있습니다. Level Medium 단계에서 기존의 비밀번호를 알려주는 방법보다 이처럼 reset_code를 통해 강제로 초기화를 수행하게 하는 방법이 더 안전한 인증이라고 볼 수 있습니다.
'Code::Security > 비박스(BWAPP)' 카테고리의 다른 글
비박스(bWAPP) A2 Broken Auth. - Logout Management (0) | 2022.06.16 |
---|---|
비박스(bWAPP) A2 Broken Auth. - Insecure Login Forms (0) | 2022.06.14 |
비박스(bWAPP) A2 - Broken Auth & Session Mgmt (인증 및 세션 관리 취약점) (0) | 2022.06.13 |
비박스(bWAPP) XML/XPath Injection (Search) (0) | 2021.08.12 |
비박스(bWAPP) XML/XPath Injection (Login Form) (0) | 2021.06.24 |