내 친구가 예전에 비슷한 터널링을 했는데, 크루즈선에서도 작동했음
일부 항공사(아마 American Airlines)는 Fortinet 방화벽을 써서 단순히 SNI만 보는 게 아니라, 서버 인증서의 호스트명과 인증기관까지 검증함
친구는 aa.com의 SNI를 사용하고 실제 aa.com의 TLS 1.2 핸드셰이크를 그대로 전달하는 방식으로 이를 우회했음
이후 암호화된 데이터 단계에서는 그 핸드셰이크를 무시하고 단순히 암호화된 터널로 사용했음
요즘은 TLS 1.3을 쓰면 인증서가 암호화되어 방화벽이 내용을 볼 수 없으므로 이런 문제를 피할 수 있음
이건 사실 Xray가 하는 방식과 거의 같음
특정 SNI에 맞는 요청이 비밀키 없이 들어오면 SSL 핸드셰이크 전체를 위장용 웹사이트로 프록시함
그렇지 않으면 SSL 트래픽으로 위장한 일반 프록시로 동작함
원래는 중국의 GFW(만리방화벽) 을 우회하기 위해 만들어졌지만, 친구가 Google Analytics를 SNI로 설정하자 American 항공의 기내 방화벽에서도 작동했다고 함
나도 최근 3주짜리 크루즈 여행을 다녀왔는데, 인터넷이 하루에 50달러로 터무니없이 비쌌음
Wi-Fi와 앱은 무료로 작동하지만 대부분의 트래픽은 차단됨
Wireshark로 보니 TCP 연결 초기에 몇 개의 패킷만 허용하고, 이후 ClientHello를 검사해 화이트리스트 도메인만 통과시킴
크루즈 앱은 회사 도메인이 화이트리스트에 있어서 작동함
이런 허점을 악용하지 말고 조용히 써야 함. 너무 알려지면 막힐 테니까 아쉬움
요즘 크루즈선의 진짜 해결책은 Starlink Mini를 들고 가는 것임
접시값과 요금이 비싸도, 크루즈 회사에 대한 일종의 ‘자유 선언’으로 충분히 가치 있음
나는 공공 Wi-Fi(기내 포함)를 UDP 53 포트 VPN 서버로 우회한 적이 많음
요즘은 캡티브 포털이 외부 트래픽을 거의 막지만, 여전히 많은 곳이 취약함
SoftEther를 추천함 — Azure Relay 기능 덕분에 화이트리스트 네트워크에서도 잘 작동함
아직 iodine을 써서 DNS 양방향 통신까지는 안 해봤지만, 느리더라도 대부분의 경우 통할 듯함
결제 위젯을 띄우기 위해 일시적으로 모든 트래픽을 허용하는 포털이 있음
결제 과정을 반복해서 시작하면 그걸로 우회 가능함
예전에 Hetzner 서버에 8개의 IP를 두고, 하나는 모든 포트에서 OpenVPN을 허용하도록 설정했음
여러 포트를 시도하느라 시작은 느렸지만, 성공률이 놀라울 정도로 높았음
나도 WireGuard와 OpenVPN을 각각 다른 VPS에서 53포트로 돌림
하지만 요즘은 DNS 트래픽만 허용하고, 임의의 리졸버는 막는 경우가 많음
일부 항공사 Wi-Fi는 무료 메시징(WhatsApp, Messenger) 만 허용함
만약 TCP-over-WhatsApp VPN을 만들 수 있다면 정말 멋질 것 같음
누군가가 말한 “요청 페이로드를 서브도메인으로 보내고, TXT 레코드로 응답을 받는” 방식은 바로 iodine임
나도 12년 전쯤 비슷한 걸 해봤음
DNS는 아니고 HTTP(S)를 UDP 터널링으로 돌렸는데, Stansted 공항에서 무료 Wi-Fi 30분 제한 안에 세팅 성공했을 때 꽤 뿌듯했음
예전에 British Airways 사이버보안 면접을 봤는데, 꽤 이상한 경험이었음
웹사이트의 심각한 취약점을 언급했더니 “중요하면 pentest에서 걸릴 것”이라며 대수롭지 않게 넘겼음
서로 별로 인상적이지 않은 채로 끝났음
BA는 실제로 결제 페이지에 카드 스키머 스크립트가 삽입돼 털린 적이 있음
기내 Wi-Fi 보안은 사실상 돈벌이용 장치일 뿐, 회사 보안과는 별개임
어쩌면 그들의 면접 자체가 pentest였을지도 모름
pentest는 영국식 주택 조사처럼 쓸모없다고 느껴짐
많은 회사가 연례 pentest만 하면 보안이 끝났다고 생각하지만, 실제로 제품을 아는 엔지니어들은 투자 승인을 받지 못함
나는 불법 복제는 절도와 다르다고 생각하지만, 이건 진짜 절도에 가까움
기술 업계는 고소득 직종인데, Wi-Fi 요금 정도는 내야 한다고 봄
나는 tuningfork라는 프로젝트를 만들었음
트래픽을 다른 노드를 통해 프록시하는 도구로, 네트워크를 이해하려고 직접 구현했음
영국의 연령 인증 법을 우회하려는 목적도 있었음 GitHub 링크
Hacker News 의견
일부 항공사(아마 American Airlines)는 Fortinet 방화벽을 써서 단순히 SNI만 보는 게 아니라, 서버 인증서의 호스트명과 인증기관까지 검증함
친구는 aa.com의 SNI를 사용하고 실제 aa.com의 TLS 1.2 핸드셰이크를 그대로 전달하는 방식으로 이를 우회했음
이후 암호화된 데이터 단계에서는 그 핸드셰이크를 무시하고 단순히 암호화된 터널로 사용했음
요즘은 TLS 1.3을 쓰면 인증서가 암호화되어 방화벽이 내용을 볼 수 없으므로 이런 문제를 피할 수 있음
특정 SNI에 맞는 요청이 비밀키 없이 들어오면 SSL 핸드셰이크 전체를 위장용 웹사이트로 프록시함
그렇지 않으면 SSL 트래픽으로 위장한 일반 프록시로 동작함
원래는 중국의 GFW(만리방화벽) 을 우회하기 위해 만들어졌지만, 친구가 Google Analytics를 SNI로 설정하자 American 항공의 기내 방화벽에서도 작동했다고 함
Wi-Fi와 앱은 무료로 작동하지만 대부분의 트래픽은 차단됨
Wireshark로 보니 TCP 연결 초기에 몇 개의 패킷만 허용하고, 이후 ClientHello를 검사해 화이트리스트 도메인만 통과시킴
크루즈 앱은 회사 도메인이 화이트리스트에 있어서 작동함
이런 허점을 악용하지 말고 조용히 써야 함. 너무 알려지면 막힐 테니까 아쉬움
접시값과 요금이 비싸도, 크루즈 회사에 대한 일종의 ‘자유 선언’으로 충분히 가치 있음
요즘은 캡티브 포털이 외부 트래픽을 거의 막지만, 여전히 많은 곳이 취약함
SoftEther를 추천함 — Azure Relay 기능 덕분에 화이트리스트 네트워크에서도 잘 작동함
아직 iodine을 써서 DNS 양방향 통신까지는 안 해봤지만, 느리더라도 대부분의 경우 통할 듯함
결제 과정을 반복해서 시작하면 그걸로 우회 가능함
여러 포트를 시도하느라 시작은 느렸지만, 성공률이 놀라울 정도로 높았음
하지만 요즘은 DNS 트래픽만 허용하고, 임의의 리졸버는 막는 경우가 많음
만약 TCP-over-WhatsApp VPN을 만들 수 있다면 정말 멋질 것 같음
DNS는 아니고 HTTP(S)를 UDP 터널링으로 돌렸는데, Stansted 공항에서 무료 Wi-Fi 30분 제한 안에 세팅 성공했을 때 꽤 뿌듯했음
웹사이트의 심각한 취약점을 언급했더니 “중요하면 pentest에서 걸릴 것”이라며 대수롭지 않게 넘겼음
서로 별로 인상적이지 않은 채로 끝났음
기내 Wi-Fi 보안은 사실상 돈벌이용 장치일 뿐, 회사 보안과는 별개임
많은 회사가 연례 pentest만 하면 보안이 끝났다고 생각하지만, 실제로 제품을 아는 엔지니어들은 투자 승인을 받지 못함
기술 업계는 고소득 직종인데, Wi-Fi 요금 정도는 내야 한다고 봄
트래픽을 다른 노드를 통해 프록시하는 도구로, 네트워크를 이해하려고 직접 구현했음
영국의 연령 인증 법을 우회하려는 목적도 있었음
GitHub 링크
잠시 세상과 단절되는 그 시간이 좋음. 그래서 모두가 무료 Wi-Fi를 쓰게 되는 건 반갑지 않음
네가 원하지 않으면 접속하지 않으면 됨. 남들이 쓴다고 해서 네게 영향은 없음
무료 메시징 플랜을 켜고 WireGuard 터널을 사용 중인데, 방화벽이 완벽히 차단하도록 설계된 것 같지는 않음
예전에 시도했는데 잘 안 됐던 기억이 있음