본문 바로가기

Security/Hacking & Security

[보안 해킹] 홈페이지 보안 취약점 - 권한 인증 취약점(세션 탈취)

[보안 해킹] 홈페이지 보안 취약점 - 권한 인증 취약점(세션 탈취)



■ 취약점 설명 및 사례

    ⑴ 취약점 설명

        - 인증 시 일정한 규칙이 존재하는 세션 ID가 발급되거나 세션 타임아웃을 너무 길게 설정된 경우 공격자에 의해 사용자 권한이 도용될 수 있는 취약점



    ⑵ 사례

        ① OO대학 홈페이지에 로그인 후 로그아웃을 하지 않고, 웹 브라우저를 종료 후 재접속하면 세션(Session)이 유지되어 로그인 상태로 접속됨


■ 점검 방법

    ⑴ 자신의 아이디로 로그인 후 세션 값을 이용하여 다른 웹 브라우저에서 중복 로그인 가능 여부 확인

        ① 일반 계정으로 로그인



        ② 프록시 프로그램을 활용하여 세션 값 확인



        ③ 새로운 웹 브라우저 실행 (예:Firefox)



        ④ 프록시 프로그램을 활용하여 기존의 세션 값으로 변조



        ⑤ 결과(변조된 세션 값으로 로그인 성공)



    ⑵ 여러 번 로그인을 시도하여 다음 로그인 대상의 세션 값이 특정한 규칙을 가지고 바뀌는지 확인

        ① 일반 계정으로 로그인


        ② 프록시 프로그램을 활용하여 세션 값 확인



        ③ 로그인 후 같은 아이디로 로그인



        ④ 세션값이 1씩 커지는 것을 확인



        ⑤ 로그아웃 후 프록시 프로그램을 활용하여 기존 세션 값에 1을 더한 값으로 변조



        ⑥ 결과(로그인 성공)



■ 대응 방안

    ⑴ 홈페이지 개발 보안 조치

        ① 홈페이지의 세션 ID는 로그인 시 마다 추측할 수 없는 새로운 세션 ID로 발급

        ② 세션 타음아웃 설졍을 통해 일정시간(최대 30분 이상) 동안 움직임이 없을 경우 자동 로그아웃 되도록 구현


※ 기재될 홈페이지 개발 보안 방안 - 불충분한 세션 관리를 참조, 소스코드를 수정하여 보안취약점을 조치




※ 문의 사항은 메일 : jyuhm@sntkor.com 이나 070-8611-4853


문의 사항 남기기