12. Session Management Vulnerabilities
1) Session Management Vulnerabilities
- 인증 및 세션은 인증이 필요한 페이지를 의미.
- 취약점이 발생하는 페이지는 누구나 접근이 가능한 페이지를 의미.
- 주로 취약점은 아래와 같이 세가지로 나뉨.
☞ 관리자 페이지 접근 미흡 (관리자 페이지 노출 취약점)
☞ 다른 사용자 게시물 수정 및 삭제 가능 (URL Jumping or URL 강제노출)
☞ 정보 수정을 통한 서비스 접근 (쿠키 변조)
2) 관리자 페이지 노출 취약점 (관리자 페이지 노출 취약점)
1. 추측 공격, 무작위 대입 공격, 사전 대입 공격
☞ 방어 : 임계치 설정
☞ 'or 1=1-- 로도 로그인이 가능.
2. SQL Injection을 이용한 인증 우회
3) 다른 사용자 게시물 수정 및 삭제 가능 (URL Jumping)
- 수정 및 삭제 페이지에는 해당 글을 작성한 사용자만 접근할 수 있거나 비밀번호 등의 인증을 거쳐야만 접근이 가능해야 함.
- 많이 발견됨.
- CSRF와 차이점
☞ CSRF : 나의 권한이 아닌 읽는 사람의 권한으로 수정함.
☞ URL Jumping : 현재 나의 권한으로 다른사람의 글을 수정.
- 실습
1. 현재는 hack의 계정으로 로그인이 되어있고 관리자의 글은 1번글임을 알 수 있음.
2. hack 계정의 글인 6번글을 수정함
3. URL 창에 num을 1로 바꾸면 관리자의 글을 수정가능한 것을 확인할 수 있음.
4) 정보 수정을 통한 서비스 접근 (쿠키 변조)
- 남의 쿠키를 가져오는게 아닌 현재 내가 가지고있는 나의 쿠키값을 변조.
☞ 남의 쿠키를 훔쳐와 사용 == 세션 재사용 공격
- 공인 인증서의 인증을 우회
- 쿠키 정보를 조작하여 인증을 우회.
5) 방어
1. 관리자 페이지 노출 : IP 접근제한 (관리자의 IP만 접근가능하게)
2. URL Jumping : 조회, 수정, 삭제에 항상 접근 권한 확인 로직 추가
3. 쿠키 변조 : 모든 페이지의 헤더에 인증 및 세션처리 (변조가 확인되면 연결을 끊음)
i2sec 대구지점 23기 수료생.
'해킹&보안 > 웹 해킹&보안' 카테고리의 다른 글
[D+14] SQL Injection (2) (0) | 2017.05.23 |
---|---|
[D+13] SQL Injection (0) | 2017.05.22 |
[D+11] FileUpload & FileDownlaod (0) | 2017.05.21 |
[D+10] CSRF (Cross Site Request Forgery) (0) | 2017.05.21 |
[D+9] XSS (Cross Site Scripting) (2) (0) | 2017.05.17 |