Tips

리버스 프록시를 통한 iptime 공유기 외부접속 이슈(CSRF 차단) AS 후기

lovey25 2022. 12. 27. 15:11
반응형

오늘은 ipTime 공유기의 CSRF 차단 기능과 ipTime의 고객지원 기술팀에 대한 포스팅입니다. 리버스 프록시를 이용해서 공유기 설정 페이지로 접속할 때 CSRF 공격으로 오인해서 접속이 차단되는 문제가 있었으나 ipTime의 빠른 대응으로 이틀 만에 해결이 되어 그 후기 남깁니다.

유무선 공유기 많이들 사용하시는데요. 집에 공유기만 하나 설치해 놓으면 여러모로 편리한 기능들을 많이 사용할 수 있습니다. 공유기가 다양한 기능을 제공하기 때문인데요. 이 기능들을 사용하기 위해서는 컴퓨터에 조금 관심 있으신 분들은 다 아시다시피 공유기 설정 페이지에 접속해야 합니다.

다른 공유기들도 마찬가지겠지만 iptTime공유기 설정 페이지는 일단 최초 설정 시 로컬 네트워크로 접속을 해야 합니다. 보안을 이유로 기본적으로 외부네트워크에서의 접속은 차단되어 있죠.

하지만 공유기 설정페이지는 내부보다 외부에서 접속할 일이 더 많습니다. 일단 저는 그렇습니다.

외부 접속을 위해서는 먼저 외부접속 포트를 지정해줘야 하죠.

그리고 매번 바뀔 수 있는 IP주소를 대체하기 위해서 DDNS를 이용합니다. ipTime공유기에서는 이 기능을 기본적으로 지원해주고 있죠.

이제부터는 공유기 설정페이지 접속을 위해서는 다음과 같은 주소를 사용합니다.

[ID].iptime.org:[포트번호]

그런데 이렇게 주소에 번호가 붙어있는 건 뭔가 맘에 들지 않습니다.ㅎ 좀 더 깔끔하게 사용하기 위해서 리버스 프록시란걸 사용해서 내가 원하는 별도 url로부터 공유기로 포워딩되도록 설정해서 사용하고 있는데요. 그런데 여기서 문제가 발생했습니다. iptime.org 도메인을 사용하는 ipTime의 DDNS 주소로는 접속이 잘 되는데 별도로 만든 주소로는 접속이 되지 않는 겁니다. 좀 더 정확히 얘기하면 접속은 되지만 공유기에서 차단을 합니다. 화면에 아무것도 뜨지 않더라고요.

그래서 공유기 로그를 살펴봤더니 이런 내용이 있네요.

악성 스크립트 접근 감지(SCRF)??

그냥 도메인 포워딩만 했을 뿐인데 악성 스크립트라니 뭔가 좀 이상합니다. 찾아보니 SCRF(Cross-site request forgery)는 다른 도메인에서 사용자 권한을 가로채 주인행세를 하는 그런 공격 방법이라고 하는데 자세한 건 잘 모르겠고, ipTime 공유기에서는 등록된 도메인이 아니면 접근을 하지 못하도록 차단하는 역할을 한다고 합니다.

그리고 물론 사용자가 지정한 도메인을 등록해서 접속할 수 있도록 하는 기능도 지원합니다. "고급 설정 > 보안 기능 > 공유기 접속/보안 관리" 메뉴에 고급 보안 설정이라는 부분이 있는데요.(모델마다 상이할 수 있습니다.) 여기서 CSRF 설정 부분에 접근을 허용해야 하는 주소를 적어줄 수 있습니다. 총 3개까지 추가할 수 있다고 되어 있네요.

그런데 문제는 이게 안 되는 겁니다. 주소를 적는 방법이 틀렸나 해서 별 걸 다 해봤지만 안되더라고요. 그래서 더 시간 낭비하지 말고 제작자에게 물어보자 해서 ipTime 제품 20년도 넘게 사용하면서 처음으로 고객센터 게시판에 글을 남겼습니다.

그런데 이미 인지하고 계신 문제였나 봐요. 글 남긴 지 몇 시간 되지도 않았는데 답변이 달리고 바로 전화도 주시네요. 기술팀에서 대응 중이니 곧 다음 펌웨어에서 개선이 될 겁니다. 기다려주세요 하시더라고요. 그래서 몇 달 걸릴 수도 있겠다 했는데, 하루 지나서 오늘 또 전화를 주셨습니다. 베타 펌웨어를 보내드릴 테니 확인 좀 해 주실 수 있냐고요.

이야 엄청난 대응 속도 아닙니까? 다른 것도 아니고 펌웨어 오류인데 며칠 만에 바로 대응을 해 주십니다. 전화 끊고 나니 이메일에 펌웨어가 도착해 있습니다.

기존 펌웨어 버전 14.18.0 버전에서 14.18.1로 올라갔네요. 펌웨어 제작일자도 오늘 12시 21분이네요. 만들어진지 한 시간 반 만에 받은 따끈따끈한 펌웨어입니다.

따뜻한 펌웨어로 문제는 바로 해결이 되어 버렸습니다. 오랜만에 기분 좋은 AS 경험이었습니다. ipTime 응원합니다. 

 

끝!

반응형