-
Oniux는 리눅스 앱의 모든 트래픽을 Tor 네트워크로 강제 우회하여 데이터 유출 위험을 최소화하는 커널 레벨 격리 도구임
-
Linux 네임스페이스를 활용해, 각 앱을 독립된 네트워크 환경에 격리시키고 Tor를 통한 안전한 통신 구현함
- 기존 torsocks와는 달리, libc를 사용하지 않거나 정적 바이너리에도 동작해, 악성 앱의 직접적인 데이터 유출 경로 차단함
- Oniux는 새로운 Arti, onionmasq 기반으로 Rust 언어로 작성되어, 보안성과 확장성 모두 강화함
- 현재 Oniux는 실험적 도구로, 안정성 면에서 검증된 torsocks와는 다르나, 차세대 Tor 트래픽 격리 솔루션으로 주목받음
Oniux 소개
Oniux는 리눅스에서 Tor 네트워크 격리를 통해 개인정보 보안 수준을 비약적으로 높이는 커맨드라인 유틸리티임. 개발자, 활동가, 연구자가 틀린 프록시 설정이나 약간의 부주의로 인한 데이터 유출 가능성을 완전히 봉쇄할 수 있도록 설계됨. Oniux는 Arti와 onionmasq 위에서 동작하며, 어떤 리눅스 앱도 별도의 네트워크 네임스페이스에 격리해 Tor 네트워크로만 트래픽을 강제 우회함.
리눅스 네임스페이스란 무엇인가
-
네임스페이스는 리눅스 커널의 주요 격리 기능임
- 어플리케이션의 일부 리소스를 시스템 전체와 논리적으로 분리해줌
- 네트워크, 마운트, 프로세스 등 다양한 자원을 이 기법으로 격리 가능함
- 각각의 네임스페이스는 운영체제 자원을 분리해, 컨테이너 환경이나 보안 목적에 사용됨
- Docker 등 대표적인 컨테이너 솔루션이 네임스페이스를 기본 원리로 활용함
Tor와 네임스페이스 결합의 의미
- 네임스페이스는 임의 애플리케이션의 Tor 네트워크 접근을 완전 격리로 보호함
- 각 앱을 네트워크 네임스페이스에 독립적으로 배치하고, onion0이라는 커스텀 인터페이스만을 노출함
- 앱이 OS 전체 네트워크 인터페이스(예: eth0)에 접근 불가하여 안전성 극대화 달성 가능함
- SOCKS 기반 프록시 방식과 달리, 어떠한 실수나 결함으로도 직접 트래픽 누출 위험 없음
Oniux와 torsocks 비교
- Torsocks는 libc의 네트워크 함수들을 LD_PRELOAD 기법으로 후킹해 Tor의 SOCKS 프록시로 우회시킴
- Oniux는 네임스페이스 격리로 작동하여, 정적 바이너리나 Zig 등에서도 트래픽 유출을 100% 방지함
- 주요 비교 내용
- Oniux: 별도 Tor 데몬 불필요, 네임스페이스 사용, 모든 앱 지원, 악성 앱의 raw 시스템콜도 차단, 리눅스 전용, 신규/실험적, Arti 기반, Rust 작성
- Torsocks: Tor 데몬 필요, ld.so 해킹, libc 연결 앱만 지원, raw 시스템콜은 유출 가능, 크로스플랫폼, 15년 이상 검증, CTor 엔진, C 언어 작성
Oniux 사용 방법
- Rust 개발 환경이 구축된 리눅스 시스템 필요
- 커맨드라인에서 간단히 oniux를 설치 및 실행 가능
주요 사용 예시:
- $ oniux curl https://icanhazip.com # Tor 우회 얻은 IP 조회
- $ oniux bash # 쉘 전체를 Tor 격리로 실행
- $ oniux hexchat # GUI 앱도 Tor로 강제 우회 가능
- $ RUST_LOG=debug oniux curl ... # 디버깅 로깅 지원
내부 동작 원리
- Oniux는 clone(2) 시스템콜로 독립된 네트워크·마운트·PID·사용자 네임스페이스에서 자식 프로세스를 생성함
- 자식 프로세스는 /proc을 개별적으로 마운트하고, UID/GID 매핑으로 권한 맞춤
- 네임서버 정보가 담긴 임시 파일을 /etc/resolv.conf에 바인드 마운트해, Tor 기반 네임리졸버 강제 사용
- onionmasq로 TUN 인터페이스 (onion0) 생성 후 IP 할당·설정
- 자식 프로세스가 인터페이스 fd를 유닉스 도메인 소켓으로 부모 프로세스에 전달하고, 권한을 최소화함
- Rust 기능을 이용해 최종적으로 사용자가 입력한 명령을 실행함
Oniux의 실험적 특성
- Oniux는 Arti, onionmasq 등 신기술을 기반으로 만들어진 초기 버전임
- 현 시점에서 정상적으로 동작하지만, torsocks처럼 오랜 기간에 걸친 성숙 사례 경험은 부족함
- 안정성 확보와 성능 개선을 위해 다양한 실사용 피드백이 필요함
크레딧 및 지원
- Rust기반 IP 스택인 smoltcp와, 사용자 네임스페이스 활용법을 개발에 조언한 7ppKb5bW 등 개발자들에게 감사함 표명
- The Tor Project 및 커뮤니티 지원으로 oniux 프로젝트가 유지되고 있으며, 프라이버시와 오픈 소프트웨어 발전을 위해 후원을 권장함