작성
·
295
1
세션 과정을 위의 표와 같이 이해했습니다.
영한님께선 세션Id가 털려도 여기에는 중요한 정보가 없다.
즉 털려도 상관없다라는 식으로 말씀하셨는데,
위 표와 같이 제가 이해한게 맞다면 결국 해커가 세션 키만 안다면 해킹을 할 수 있는게 아닌가?라고 생각이 들었습니다.
맞는 방식인지는 모르겠으나 테스트를 해봤습니다
두 개의 창을 띄워 각 다른 아이디로 로그인 했습니다.
표 처럼 B의 세션키를 A에 적용했을 때 B로 바뀌는 모습을 확인할 수 있었습니다.
근데 이게 될 때도 있고 안 될 때도 있습니다.. 정확한 이유를 모르겠네요
물론 해킹을 100% 막을 순 없겠지만 생각보다 쉽게 털리는 것이 아닌지 의문점이 생겼는데, 제가 무엇을 잘못 알고있는걸까요?
답변 1
0
안녕하세요. 민혁님
생각하신 것 처럼 sessionId가 실시간으로 유출 된다면 문제가 발생할 수 있습니다.
다만 sessionId는 고객이 일정시간 사용하지 않거나 또는 로그아웃시에는 서버에서 파기되기 됩니다.
그래서 sessionId를 짧게 가지고 가는 보안 정책들을 시행하는 회사들도 있습니다.
감사합니다.
안녕하세요. 민혁님
sessionId가 파기 되기 전에 sessionId를 탈취 당한다면 당연히 문제가 될 수 있습니다.
그런데 30분이 아니라 세션이 100일 동안 살아있다면 해킹을 당할 소지가 훨씬 더 크게 됩니다.
예를 들어서 컴퓨터 어딘가 세션Id가 로그로 남아있게 되면다면, 해커가 그 정보를 99일 뒤에 찾아도 로그인이 될 수 있는 것이지요. 반면에 30분이면 내가 웹 브라우저에 실시간으로 로그인 했을 때 그 30분 안에 세션Id를 도용해야 해킹을 할 수 있게 됩니다.
감사합니다.
늦은 시간에 답변 달아주셔서 정말 감사합니다.
세션정보와 타임아웃 설정 강의에서 말씀하신 내용을 적용하는 방식은 이해를 했습니다.
적절한 가정인지 모르겠지만 세션 종료 시점을 30분이라고 했을 때, 해킹범이 sessionId가 파기 되기 전 저의 sessionId를 탈취해 제 아이디로 로그인을 한다면, 해킹범도 마찬가지로 서버에 요청한 기준으로 30분이 유지되어 지속적으로 악의적인 요청을 할 수 있는게 아닌지?라는 생각이 들었습니다.
결론적으로 해킹 측면에서 세션 종료 기준을 정하는게 큰 도움이 되는 것인지에 의문이 생겼습니다.
위 가정이 적절하다면 메모리 측면?에선 확실히 이점이 있는 것은 알겠는데 위와 같은 상황에선 제가 아직 실무 경험이 없어서 그런지 와닿지 않네요..
질문 자체가 이상한거면 죄송합니다 ㅠ