ArpCut
ARP 스푸핑 기반 LAN 네트워크 차단 도구 (Root 필요).
LAN 장치에 위조 ARP 응답을 지속적으로 전송하여 네트워크 연결을 차단하며, 장치 식별, 메모, 화이트리스트 및 작업 기록을 제공합니다.
프로젝트 홈페이지
기능 개요
- LAN 장치 스캔 (root 스캔, 5초 자동 새로고침, IP / MAC / 본机 / 게이트웨이 자동 식별).
- 단일 장치 「연결 끊기 / 복구」 토글, 및 「전체 연결 끊기」/「전체 복구」 일괄 작업.
- IEEE 전체 OUI 제조사 식별 (54330건, 오프라인 내장) 및 랜덤 MAC (프라이버시 보호) 식별.
- 장치 메모, 화이트리스트, 검색 및 IP / 메모 / 연결 끊김 / 연결됨 정렬.
- 연결 끊기 및 복구 작업 기록, 영구 공격 선택 가능.
- 컬러 유동광 배경, 리퀴드 글래스 플로팅 하단 바, miuix / InstallerX Revived 스타일 인터페이스.
주요 기능
장치 스캔
- root로 LAN 장치를 스캔하여 IP / MAC 표시.
- 본机과 게이트웨이를 자동 식별 및 표시하며, 본机은 항상 최상단에 고정.
- 5초마다 자동 새로고침, 전 과정 조용히 진행되어 깜빡임 없음.
- Wi-Fi에 연결되지 않은 경우 빈 상태 안내 표시.
연결 끊기 제어
- 단일 장치 토글: 대상 장치에 위조 ARP 응답을 지속적으로 전송, 1초 간격으로 GARP 브로드캐스트 오염.
- 「전체 연결 끊기」: 본机과 화이트리스트를 제외한 모든 장치를 원클릭으로 연결 끊기.
- 「전체 복구」: 공격 루프 종료, 이웃 테이블 복원 및 재해석 트리거.
- 자기 차단 지원: 본机의 이웃 테이블을 오염시켜 본机도 네트워크에서 차단.
장치 상세 및 식별
- 카드 빈 영역을 탭하면 상세 정보 펼침: 제조사 / 장치 유형 / 지연 / 화이트리스트 / 최근 기록.
- OUI 데이터는 IEEE 공식 MA-L / MA-M / MA-S 전체 라이브러리에서 가져오며 오프라인 조회.
- 랜덤 MAC (프라이버시 보호) 자동 식별 및 표시.
메모 및 화이트리스트
- IP를 탭하면 편집 팝업이 뜨며, 메모는 파란색 태그로 상시 표시.
- 메모 정렬 시 우선 배치; 팝업 내에서 화이트리스트 전환 가능, 「전체 연결 끊기」 시 화이트리스트 장치 건너뜀.
기록
- 연결 끊기 / 복구 작업 자동 기록 (≤500건).
- 휴지통 아이콘으로 원클릭 전체 삭제, 2차 확인 팝업 포함.
설정
- 영구 공격: 기본 꺼짐 — 백그라운드 정리 시 공격 자동 종료 및 네트워크 복구; 켜면 앱 종료 후에도 공격 프로세스 유지.
- 장치 상세 항상 펼침.
인터페이스
- 정보 페이지 전체 화면 AGSL 컬러 유동광 배경, 상태 표시줄 / 내비게이션 바 투명 풀블리드.
- 리퀴드 글래스 플로팅 하단 바, 페이지 간 전환 시 직접 이동.
- miuix 컴포넌트 및 InstallerX Revived 디자인 언어 (팝업 / 눌림 피드백 / 빈 상태 레이아웃).
- 「오로라 연결 끊기」 앱 아이콘 및 투명 컬러 로고.
사전 요구 사항
- Android 7.0 / API 24 이상.
- Root 권한 (KernelSU / Magisk / SuperSU 등).
- 대상 LAN Wi-Fi에 연결.
설치 방법
- Releases에서 최신 APK를 다운로드하여 설치합니다.
- 첫 실행 시 Root 권한을 부여합니다.
- LAN Wi-Fi에 연결하면 앱이 자동으로 장치 스캔을 시작합니다.
- 장치 토글을 움직여 해당 장치의 네트워크를 연결 끊기 / 복구할 수 있습니다.
사용 설명
- 네트워크 차단은 ARP 스푸핑을 기반으로 하므로, 본인 소유이거나 이미 승인된 네트워크에서만 사용하세요.
- 「전체 연결 끊기」는 기본적으로 이 기기와 화이트리스트 기기를 건너뜁니다.
- 백그라운드 정리 후에도 네트워크 차단을 계속하려면 설정에서 「지속 공격」을 켜세요.
- 네트워크 이상 시 「전체 복구」를 누르거나 네트워크 장비와 휴대폰을 재시작하세요.
- 목록은 5초마다 자동으로 새로고침되며 수동으로 새로고침할 필요가 없습니다.
적용 시나리오
- LAN 내 특정 기기의 네트워크 접근을 빠르게 제한하고 싶을 때.
- LAN 기기를 일괄적으로 연결 끊기하고 언제든 원클릭으로 복구하고 싶을 때.
- LAN 기기의 제조사와 유형을 식별하고 메모로 관리하고 싶을 때.
- 네트워크 보안 기술 연구, 교육 시연 및 자체 네트워크 테스트.
소스에서 빌드
프로젝트는 Kotlin, Jetpack Compose, Android Gradle Plugin 및 Gradle Wrapper를 사용합니다.
- JDK 17.
- compileSdk 37, minSdk 24, targetSdk 37.
자주 쓰는 명령:
./gradlew assembleRelease
빌드 산출물은 app/build/outputs/에 위치합니다. CI: push 후 GitHub Actions가 자동으로 패키지를 생성합니다(release는 고정 서명 키 저장소를 사용하여 서명이 안정적입니다).
구현 요점
- native/arpcut.c: AF_PACKET 원시 소켓으로 위조 ARP 응답을 전송하며, 이더넷 소스 주소는 본机的 실제 MAC을 사용한다(Wi-Fi 드라이버는 소스 MAC이 본机이 아닌 프레임을 버림). ARP 페이로드에는 가짜 MAC(
02:00:00:00:00:01)을 사용하여 공격 출처를 표시한다.
- 브로드캐스트 방식 GARP 오염 + 1초 전송 간격으로 브랜드 간 호환성을 향상시킨다.
- 자체 차단은 본机 이웃 테이블 순환 덮어쓰기(
ip neigh replace)로 처리하며, 위조 프레임은 본机 프로토콜 스택에 들어가지 않는다.
heal 모드는 실제 ARP 응답을 보내 매핑을 복원하며, 전체 복구 전에 먼저 공격 루프를 종료하고 이웃 테이블을 복원한 뒤 재해석을 트리거한다.
도움말 보기
면책 조항
- 본 도구는 ARP 스푸핑을 기반으로 구현되었으며, 자체 소유 또는 이미 승인된 네트워크에서의 테스트 및 학습 용도로만 사용해야 한다.
- 타인의 네트워크나 기기에 대해 승인 없이 수행하는 네트워크 차단 또는 방해 행위는 관련 법규를 위반할 수 있다.
- 본 도구 사용으로 인해 발생하는 모든 결과와 법적 책임은 사용자 본인이 부담하며, 개발자는 일절 책임지지 않는다.
- 자세한 내용은 앱 내 「정보 → 면책 조항」을 참조한다.
오픈소스 라이선스 및 감사의 말
License
See LICENSE.