인증과 인가 취약점은 말 그대로 인증과 인가가 불충분해서 발생하는 취약점이다.
인증과 인가의 개념과 대응방안에 대해 알아보자.
① 인증(Authentication)
인증은 자신이 A라고 주장하는 사람이 실제로 A가 맞는지 확인하는 과정으로 로그인 인증, 본인 인증, 휴대전화 인증, 카드 인증 등을 예시로 들 수 있다. 인증이 불충분하다면, 사용자를 식별하는 과정에서 우회나 변조가 발생할 수 있다.
인증 우회는 대표적으로 XSS을 통한 세션을 탈취나 중간자 공격(MITM : Man In The Middle attack)을 통해 발생할 수 있다.
[대응방안]
만약 개인정보를 확인할 수 있는 페이지에서 인증 프로세스가 제대로 구현되지 않는다면, 세션을 탈취하는 것만으로 개인정보에 접근하거나 정보를 수정할 수 있게 된다. 따라서 인증에 성공한다면, 일회용 토큰을 발급하여 토큰이 있어야만 개인정보를 볼 수 있도록 프로세스를 구축해야 한다.
또한 다른 취약점에서도 여러 번 작성했듯이, 클라이언트 측에서 인증을 하는 경우 프록시 툴을 사용하면 우회가 가능하므로, 서버 측에서 인증과정을 거쳐야 한다.
② 인가(Authorization)
인가는 사용자에게 권한을 부여하는 것으로, 작성자만 글을 수정하거나 삭제할 수 있도록 허용하는 것을 예시로 들 수 있다. 인가가 불충분하다면, 권한이 부여되지 않은 사용자가 허가되지 않은 페이지에 접근하게 될 수 있다.
[대응방안]
해당 요청을 하는 사람이 허가된 사람이 맞는지 세션을 이용하여 서버 측에서 검증해야 한다.
'WEB HACKING > 웹 해킹[이론]' 카테고리의 다른 글
File Download 공격 (0) | 2021.12.21 |
---|---|
File Upload 공격(3) (0) | 2021.12.18 |
File Upload 공격(2) (0) | 2021.12.12 |
File Upload 공격 (0) | 2021.12.11 |
CSRF : Cross-Site Request Forgery (0) | 2021.11.26 |
댓글