mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/todo/radio-hacking/infrared.md'] to ko
This commit is contained in:
parent
2cdd944a15
commit
2ac9a48d49
@ -20,28 +20,28 @@ IR 프로토콜은 3가지 요소에서 다릅니다:
|
||||
|
||||
**1. 펄스 간격 인코딩**
|
||||
|
||||
비트는 펄스 간의 간격 지속 시간을 조절하여 인코딩됩니다. 펄스 자체의 너비는 일정합니다.
|
||||
비트는 펄스 간의 간격 지속 시간을 변조하여 인코딩됩니다. 펄스 자체의 너비는 일정합니다.
|
||||
|
||||
<figure><img src="../../images/image (295).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
**2. 펄스 너비 인코딩**
|
||||
**2. 펄스 폭 인코딩**
|
||||
|
||||
비트는 펄스 너비의 변조로 인코딩됩니다. 펄스 폭 뒤의 간격 너비는 일정합니다.
|
||||
비트는 펄스 폭의 변조로 인코딩됩니다. 펄스 폭 후의 간격 너비는 일정합니다.
|
||||
|
||||
<figure><img src="../../images/image (282).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
**3. 위상 인코딩**
|
||||
|
||||
맨체스터 인코딩으로도 알려져 있습니다. 논리 값은 펄스 폭과 간격 사이의 전환의 극성에 의해 정의됩니다. "간격에서 펄스 폭으로"는 논리 "0"을 나타내고, "펄스 폭에서 간격으로"는 논리 "1"을 나타냅니다.
|
||||
맨체스터 인코딩으로도 알려져 있습니다. 논리 값은 펄스 폭과 간격 사이의 전환의 극성에 의해 정의됩니다. "간격에서 펄스 폭"은 논리 "0"을 나타내고, "펄스 폭에서 간격"은 논리 "1"을 나타냅니다.
|
||||
|
||||
<figure><img src="../../images/image (634).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
**4. 이전 방식과 기타 이국적인 조합**
|
||||
|
||||
> [!NOTE]
|
||||
> 여러 유형의 장치에 대해 **보편적이 되려고 하는** IR 프로토콜이 있습니다. 가장 유명한 것은 RC5와 NEC입니다. 불행히도, 가장 유명하다고 해서 가장 일반적이라는 의미는 아닙니다. 제 환경에서는 NEC 리모컨 두 개만 보았고 RC5는 없었습니다.
|
||||
> [!TIP]
|
||||
> 여러 종류의 장치에 대해 **보편적이 되려고 하는** IR 프로토콜이 있습니다. 가장 유명한 것은 RC5와 NEC입니다. 불행히도, 가장 유명하다고 해서 가장 일반적이라는 의미는 아닙니다. 제 환경에서는 NEC 리모컨 두 개만 보았고 RC5는 없었습니다.
|
||||
>
|
||||
> 제조업체는 동일한 장치 범위 내에서도 고유한 IR 프로토콜을 사용하는 것을 좋아합니다 (예: TV 박스). 따라서 서로 다른 회사의 리모컨과 때로는 동일한 회사의 서로 다른 모델의 리모컨은 동일한 유형의 다른 장치와 작동할 수 없습니다.
|
||||
> 제조업체들은 동일한 장치 범위 내에서도 고유한 IR 프로토콜을 사용하는 것을 좋아합니다 (예: TV 박스). 따라서 서로 다른 회사의 리모컨이나 때로는 동일한 회사의 서로 다른 모델의 리모컨은 동일한 유형의 다른 장치와 작동할 수 없습니다.
|
||||
|
||||
### IR 신호 탐색
|
||||
|
||||
@ -51,11 +51,11 @@ IR 프로토콜은 3가지 요소에서 다릅니다:
|
||||
|
||||
일반적으로 인코딩된 패킷의 시작 부분에는 프리앰블이 있습니다. 이는 수신기가 이득 수준과 배경을 결정할 수 있게 해줍니다. 프리앰블이 없는 프로토콜도 있으며, 예를 들어 Sharp가 있습니다.
|
||||
|
||||
그런 다음 데이터가 전송됩니다. 구조, 프리앰블 및 비트 인코딩 방법은 특정 프로토콜에 의해 결정됩니다.
|
||||
그 다음 데이터가 전송됩니다. 구조, 프리앰블 및 비트 인코딩 방법은 특정 프로토콜에 의해 결정됩니다.
|
||||
|
||||
**NEC IR 프로토콜**은 짧은 명령과 반복 코드를 포함하며, 버튼이 눌리는 동안 전송됩니다. 명령과 반복 코드 모두 시작 부분에 동일한 프리앰블을 가지고 있습니다.
|
||||
**NEC IR 프로토콜**은 짧은 명령과 버튼이 눌려 있는 동안 전송되는 반복 코드로 구성됩니다. 명령과 반복 코드 모두 시작 부분에 동일한 프리앰블을 가지고 있습니다.
|
||||
|
||||
NEC **명령**은 프리앰블 외에도 주소 바이트와 명령 번호 바이트로 구성되어 있으며, 이를 통해 장치는 수행해야 할 작업을 이해합니다. 주소 및 명령 번호 바이트는 전송의 무결성을 확인하기 위해 역값으로 복제됩니다. 명령 끝에는 추가적인 정지 비트가 있습니다.
|
||||
NEC **명령**은 프리앰블 외에도 장치가 수행해야 할 작업을 이해할 수 있도록 주소 바이트와 명령 번호 바이트로 구성됩니다. 주소 및 명령 번호 바이트는 전송의 무결성을 확인하기 위해 역값으로 복제됩니다. 명령의 끝에는 추가적인 정지 비트가 있습니다.
|
||||
|
||||
**반복 코드**는 프리앰블 뒤에 "1"이 있으며, 이는 정지 비트입니다.
|
||||
|
||||
@ -63,10 +63,12 @@ NEC **명령**은 프리앰블 외에도 주소 바이트와 명령 번호 바
|
||||
|
||||
### 에어컨
|
||||
|
||||
다른 리모컨과 달리 **에어컨은 눌린 버튼의 코드만 전송하지 않습니다**. 버튼이 눌릴 때 **모든 정보를 전송**하여 **에어컨과 리모컨이 동기화되도록** 합니다.\
|
||||
이렇게 하면 20ºC로 설정된 기계가 한 리모컨으로 21ºC로 증가하고, 다른 리모컨이 여전히 20ºC로 설정되어 있을 때 온도를 더 높이려고 하면 21ºC로 "증가"하게 됩니다 (21ºC에 있다고 생각하고 22ºC로 증가하지 않음).
|
||||
다른 리모컨과 달리 **에어컨은 눌린 버튼의 코드만 전송하지 않습니다**. 버튼이 눌리면 **모든 정보를 전송**하여 **에어컨과 리모컨이 동기화되도록** 합니다.\
|
||||
이렇게 하면 20ºC로 설정된 기계가 한 리모컨으로 21ºC로 증가하고, 이후 20ºC로 설정된 다른 리모컨을 사용하여 온도를 더 높이면 "21ºC로 증가"하게 되어 (21ºC에 있다고 생각하지 않고 22ºC로 증가하지 않음) 방지할 수 있습니다.
|
||||
|
||||
### 공격
|
||||
---
|
||||
|
||||
## 공격 및 공격적 연구 <a href="#attacks" id="attacks"></a>
|
||||
|
||||
Flipper Zero로 적외선을 공격할 수 있습니다:
|
||||
|
||||
@ -74,8 +76,66 @@ Flipper Zero로 적외선을 공격할 수 있습니다:
|
||||
flipper-zero/fz-infrared.md
|
||||
{{#endref}}
|
||||
|
||||
### 스마트-TV / 셋톱 박스 탈취 (EvilScreen)
|
||||
|
||||
최근의 학술 연구(EvilScreen, 2022)는 **적외선과 블루투스를 결합한 다채널 리모컨이 현대 스마트-TV를 완전히 탈취하는 데 악용될 수 있음을 보여주었습니다**. 이 공격은 높은 권한의 IR 서비스 코드를 인증된 블루투스 패킷과 연결하여 채널 격리를 우회하고 임의의 앱 실행, 마이크 활성화 또는 물리적 접근 없이 공장 초기화를 허용합니다. 삼성 모델을 포함한 8개의 주요 TV가 취약한 것으로 확인되었습니다. 완화 조치는 공급업체의 펌웨어 수정 또는 사용하지 않는 IR 수신기를 완전히 비활성화하는 것을 요구합니다.
|
||||
|
||||
### IR LED를 통한 공기 간섭 데이터 유출 (aIR-Jumper 패밀리)
|
||||
|
||||
보안 카메라, 라우터 또는 악성 USB 스틱은 종종 **야간 시야 IR LED**를 포함합니다. 연구에 따르면 맬웨어는 이러한 LED를 변조하여 (<10–20 kbit/s의 간단한 OOK) **벽과 창을 통해 비밀을 외부 카메라로 유출**할 수 있습니다. 빛이 가시 스펙트럼 밖에 있기 때문에 운영자는 거의 알아차리지 못합니다. 대응 조치:
|
||||
|
||||
* 민감한 지역에서 IR LED를 물리적으로 차폐하거나 제거
|
||||
* 카메라 LED 듀티 사이클 및 펌웨어 무결성 모니터링
|
||||
* 창문 및 감시 카메라에 IR 컷 필터 배치
|
||||
|
||||
공격자는 또한 강력한 IR 프로젝터를 사용하여 **명령을 침투**시켜 불안전한 카메라로 데이터를 플래시할 수 있습니다.
|
||||
|
||||
### Flipper Zero 1.0을 통한 장거리 무차별 대입 및 확장 프로토콜
|
||||
|
||||
펌웨어 1.0(2024년 9월)은 **수십 개의 추가 IR 프로토콜 및 선택적 외부 증폭기 모듈**을 추가했습니다. 범용 리모컨 무차별 대입 모드와 결합하여 Flipper는 최대 30m 거리에서 고출력 다이오드를 사용하여 대부분의 공공 TV/에어컨을 비활성화하거나 재구성할 수 있습니다.
|
||||
|
||||
---
|
||||
|
||||
## 도구 및 실용적인 예 <a href="#tooling" id="tooling"></a>
|
||||
|
||||
### 하드웨어
|
||||
|
||||
* **Flipper Zero** – 학습, 재생 및 사전 정의된 무차별 대입 모드가 있는 휴대용 송수신기(위 참조).
|
||||
* **Arduino / ESP32** + IR LED / TSOP38xx 수신기 – 저렴한 DIY 분석기/송신기. `Arduino-IRremote` 라이브러리와 결합 (v4.x는 >40 프로토콜 지원).
|
||||
* **로직 분석기** (Saleae/FX2) – 프로토콜이 알려지지 않았을 때 원시 타이밍 캡처.
|
||||
* **IR 블래스터가 있는 스마트폰** (예: Xiaomi) – 빠른 현장 테스트지만 범위가 제한적입니다.
|
||||
|
||||
### 소프트웨어
|
||||
|
||||
* **`Arduino-IRremote`** – 적극적으로 유지 관리되는 C++ 라이브러리:
|
||||
```cpp
|
||||
#include <IRremote.hpp>
|
||||
IRsend sender;
|
||||
void setup(){ sender.begin(); }
|
||||
void loop(){
|
||||
sender.sendNEC(0x20DF10EF, 32); // 삼성 TV 전원
|
||||
delay(5000);
|
||||
}
|
||||
```
|
||||
* **IRscrutinizer / AnalysIR** – 원시 캡처를 가져오고 프로토콜을 자동으로 식별 + Pronto/Arduino 코드를 생성하는 GUI 디코더.
|
||||
* **LIRC / ir-keytable (Linux)** – 명령줄에서 IR 수신 및 주입:
|
||||
```bash
|
||||
sudo ir-keytable -p nec,rc5 -t # 실시간 덤프 디코딩된 스캔 코드
|
||||
irsend SEND_ONCE samsung KEY_POWER
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 방어 조치 <a href="#defense" id="defense"></a>
|
||||
|
||||
* 필요하지 않을 때 공공 장소에 배치된 장치의 IR 수신기를 비활성화하거나 덮습니다.
|
||||
* 스마트-TV와 리모컨 간의 *페어링* 또는 암호화 검사를 시행하고, 특권 "서비스" 코드를 격리합니다.
|
||||
* 기밀 지역 주변에 IR 컷 필터 또는 연속파 탐지기를 배치하여 광학 은밀 채널을 차단합니다.
|
||||
* 제어 가능한 IR LED를 노출하는 카메라/IoT 기기의 펌웨어 무결성을 모니터링합니다.
|
||||
|
||||
## 참고 문헌
|
||||
|
||||
- [https://blog.flipperzero.one/infrared/](https://blog.flipperzero.one/infrared/)
|
||||
- [Flipper Zero 적외선 블로그 게시물](https://blog.flipperzero.one/infrared/)
|
||||
- EvilScreen: 리모컨 모방을 통한 스마트 TV 탈취 (arXiv 2210.03014)
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user