← WindowsHelper(으)로 돌아가기

보안 모델

WindowsHelper이(가) 귀하의 PC와 휴대전화를 보호하는 방법, 당사가 사용하는 암호화 방식, 명시적으로 방어하지 않는 항목. 최종 업데이트 날짜: 2026-04-25.

취약점 보고

이메일 support@windowshelper.app 주제와 함께 [security]. 공개된 GitHub 문제를 열지 마십시오. 공개되기 전에 수정 사항을 제공할 수 있는 창구를 제공하십시오.

페어링 코드 수명 주기

페어링 코드는 공유 비밀 다른 모든 암호화 작업은 다음에서 파생됩니다. 전체 수명주기:

[ Phone GENERATES random 8-char code ]
   ↓
[ Phone WRITES code + sessionId to Firestore in pc_connections doc ]
   ↓
[ Phone DISPLAYS code to user on screen ]
   ↓
[ User READS code, types it into companion's input field ]
   ↓
[ Companion QUERIES Firestore for waiting session matching the code ]
   ↓
[ Both sides DERIVE crypto keys from SHA-256(code, sessionId) ]
   ↓
[ Code STAYS in memory on both sides; never written to Firestore by either ]
   ↓
[ Disconnect / re-pair WIPES the code from both sides ]

암호화

AES-256-GCM(명령 기밀성 + 무결성)

유선을 통해 전송되는 모든 명령은 인증 암호화 모드인 AES-256-GCM으로 암호화됩니다.

HMAC-SHA256(명령 신뢰성)

모든 명령에는 HMAC 서명도 포함되어 있으므로 페어링 코드를 모르는 전화기는 Firestore에 쓸 수 있더라도 명령을 삽입할 수 없습니다.

위협 모델

위협상태메모
로컬 네트워크의 도청자완화됨AES-GCM 암호문은 MITM 관찰자에게 불투명합니다.
Firestore 서버의 도청자완화됨Google sees AESGCM:... blobs, not commands.
Firestore에 쓸 수 있지만 코드를 모르는 공격자완화됨HMAC 확인이 실패합니다. 동반자는 거부를 기록하고 실행을 거부합니다.
페어링 코드를 크랙/피싱한 공격자잔여마치 자신이 사용자인 것처럼 명령을 내릴 수 있습니다. 해결 방법: 트레이 메뉴에서 코드를 순환합니다.
기록된 명령 재생잔여sentAtMillis is HMAC-bound; companion doesn't yet enforce a freshness window. Future fix adds a TTL.
LAN 모드 인증되지 않은 공격자완화됨WebSocket 쌍 핸드셰이크는 코드의 유효성을 검사합니다. HMAC + AES는 모든 후속 명령을 게이트합니다.
도난당한 페어링 키로 손상된 휴대폰잔여"사용자 자신"과 구별할 수 없습니다. 완화: 속도 제한(10cmd/min) + 파괴 명령 확인에는 PC 측 클릭이 필요합니다.
전화 앱에서 명령을 잘못 입력했습니다.완화됨전화측 허용 목록은 인식되지 않는 접두사를 차단합니다. 존재하지 않는 서비스를 대상으로 하는 동반자측 비행 전 차단 명령.
실수로 파괴적인 명령이 실행됨완화됨Companion-side modal requires user click to approve Remove-Item, Format-Volume, reg delete, shutdown /r, etc.
정지/런어웨이 PowerShell 프로세스완화됨5분 제한 시간 초과로 인해 전체 프로세스 트리가 종료됩니다.
Companion 다운로드와 실행 사이의 .exe 변조완화됨SHA-256 published in companion-version.json; users can verify. Authenticode signing landing soon.
Companion 충돌로 인해 민감한 상태가 유출됨완화됨비정상 종료 보고서 + Firestore 오류 쓰기 저장 삭제 %USERPROFILE% / %MACHINE% / %USER%.
도난당한 기기, 영구 레지스트리 페어링 키잔여디스크 + 로그인 액세스 권한이 있는 공격자는 지속된 코드를 읽을 수 있습니다. 향후 수정에서는 이를 Windows DPAPI로 래핑합니다.

범위 외

WindowsHelper이(가) 명시적으로 수행하는 작업 아니 방어하다:

공개