푸시앱이 ssl+xe에서는 잘 동작하는데, ssl+라이믹스 에서는 동작하지 않는 문제가 있습니다.

뭔가 세션처리 관련해서 xe와의 차별점이나 개선된 점이 있는 것 같은데,

예를 들면 앱단에서 httpurlconnection으로 cookie와 referer만 설정해서 접속하면 서버쪽에서 웹뷰와 동일한 접속으로 간주하여 세션을 공유하는데(xe에서는 이게 되는데), 라이믹스에서는 이게 안 되는 것 같습니다.

라이믹스쪽에서 ssl세션관련 어떤 것을 좀 더 검사하는 것 같아요.

이부분을 알려면 라이믹스 소스의 어디를 살펴봐야 알 수 있을까요?

도움 간절히 부탁드립니다.

 

 

  • ?
    https://github.com/rhymix/rhymix/pull/567
    https://github.com/rhymix/rhymix/pull/707
    https://github.com/rhymix/rhymix/pull/714

    무식해서 모르지만 이것들과 관계가 있지 않을까요?
  • ? profile
    도움 감사합니다. 해당링크를 보고 연구해보도록 하겠습니다. 감사합니다. ^^
  • profile
    XE는 PHP 기본 세션쿠키(PHPSESSID)만 사용하지만 라이믹스는 보안 강화를 위해 2개의 쿠키가 추가로 들어갑니다. 이 쿠키들은 secure, httpOnly 등의 속성이 지정되어 있기 때문에 일부 요청에서만 접근이 가능합니다.

    secure 속성이 지정된 쿠키는 SSL 요청에서만 접근이 가능합니다. SSL이 아닌 요청에서 쿠키를 추출하면 이 쿠키가 누락되기 때문에, 추후 SSL 요청에서 사용하려고 하면 세션 탈취 공격으로 간주되어 로그인이 자동으로 풀립니다.

    httpOnly 속성이 지정된 쿠키는 스크립트에서 접근이 불가능하기 때문에 만약 스크립트로 이 쿠키값을 가져오려고 한다면 빈 값이 나올 것입니다. 이 쿠키가 누락된 경우에도 마찬가지로 세션 탈취 공격으로 간주됩니다.

    위의 두 쿠키값은 수시로 바뀝니다. 따라서 한 번 가져온 쿠키를 계속 재사용할 경우 문제가 생길 수 있습니다. 항상 최신 쿠키값을 확인해야 합니다.

    라이믹스 시스템 설정에서 세션 보안키를 사용하지 않도록 하면 이런 쿠키들을 체크하는 기능을 끌 수 있습니다. 이게 꺼져 있는 상태에서는 XE와 다르지 않습니다.
  • profile profile
    답변 감사드립니다. 말씀하신 내용을 다 이해한 것은 아니지만, 그래도 어느정도 방향은 잡은 것 같습니다.
    앱단에서 httpsurlconnection에 말씀하신 httponly속성을 줄 수 있는 부분이 있는데, 이걸로 ssl연결하면 해결될 수 있을 듯 합니다. 연구해보도록 하겠습니다. 도움 주셔서 감사합니다. ^^