728x90
1. Introduction (Summary)
- Charger Surfing: touch screen을 타겟으로 하여 powerline을 통한 side-channel 유출에 의한 새로운 보안 위협
- 특히 공공시설에서의 USB 충전기는 사용자가 관리할 수 없는 것이기 때문에 특히 보안 위협에 노출되기 좋다.
- 데이터라인(dataline)을 통해 전송되는 데이터를 전력선에서의 crosstalk 유출에 의해 탈취 혹은 감시할 수 있다.
- 공격자는 전력선(powerline)에서 전력 소비 정보를 추출해 인터넷 검색 기록, 비밀번호 길이 등의 구체적인 정보를 추론해낼 수 있다.
- 충전할 때의 power trace를 통해 충전 중 사용자의 기기의 touchscreen에서 특정 번호를 입력하는 경우, 해당 번호들을 인식하고 입력한 passcode를 알아낸다.
2. Threat Model & Background
2.1. Threat Model
- 공공 시설에서 사용되는 usb charger를 통해 사용자의 정보를 추출
- charger surfing을 통해 유출시킬 수 있는 정보 = touch screen을 통해 사용자가 입력하는 내용 (ex. passcode, credit card number, banking information)
- 그 중에서도 “passcode-based lock”을 해제하는 것을 논문의 목표로 설정
2.2. USB Charging
- Standard USB plugins: 4 pins + 1 shield
2.3. LCD/OLED Touch Screen
- LCD: a backlight + filters + liquid crystals
- 최대 전압 → crystal: 수평 정렬 → 빛 모두 차단 ⇒ black (검정색) 표현
- 최저 전압 → crystal: 수직 정렬 → 빛 모두 통과 ⇒ white (하얀색) 표현
- OLED: 유기 분자를 이용해 구멍을 생성하고 전자를 이용해 발광층에 빛을 생성
- 최저 전원 → black pixel 표현
- 최고 전원 → white pixel 표현
⇒ LCD와 OLED는 색을 표현하는 방식이 반대이기 때문에 분석할 때 해당 기기의 display 방식이 LCD 방식인지, OLED 방식인지 (혹은 그 외의 방법인지) 미리 확인해야한다.
2.4. Animations on the Touchscreen
- animation
사용자가 데이터를 입력할 수 있도록 그래픽 인터페이스를 제공하고, 입력이 제대로 등록되었음을 animation을 통해 사용자에게 알린다. - 대부분 “static screen”에서 이러한 animation이 작동하고, 스크린의 고정된 위치에서 발생한다.
3. Power Line Leakage Exploration
실험 결과를 보여주고, 특히 데이터 유출 패턴을 강조하면서 스마트폰의 배터리 상태가 side-channel에 어떠한 감쇠효과를 일으키지 않음을 보여준다.
3.1. Button Press Detection
- 오실리스코프와 충전 케이블 설정을 통해 스마트폰을 충전하는 동안의 USB 케이블 신호를 관찰한다.
→ 사용자가 화면을 터치하고 비밀번호를 누를 때, 각 버튼을 누를 때마다 분명한 업다운을 보인다
3.2. Button Press Location Identification
- 버튼이 눌릴 때 전압이 쭉 오른다.
- 비슷해보이는 신호들을 구분하고 전력 유출을 통해 애니메이션의 위치를 추출하는 것이 중요하다.
3.3. Impact of Battery Charging
- ‘스마트폰 배터리의 상태가 전력 사이드 채널에서 어떠한 감쇠효과를 일으키지는 않는지’가 중요하다.
4. Sensitive Information Interface
Charger surfing에 의한 보안 위협을 탐지하는 과정
- Raw Signals Acquisition
USB charger에 미리 몰래 전압 모니터를 부착해두고 USB charger를 이용해 충전하는 동안의 신호들을 수집한다. - Button Sequence Detection
1번 과정을 통해 알아낸 power trace를 가공해 버튼을 누를 때마다의 신호를 따로 분리한다. - Individual Button Isolation
step2에서는 버튼을 누르는 동작에 대한 신호를 분리했다면, step3에서는 각 버튼들에 대한 신호를 구분한다. - Phone Detection
핸드폰의 기종을 탐지하는 것을 목표로 한다. 이 과정에서 각 버튼을 누를 때 마다 구별된 신호로 훈련된 신경망(? 중심 네트워크?)를 활용한다. - Signal Preprocessing
핸드폰의 기종을 알아낸 후, 해당 기종의 특성에 따라 전원 신호를 스케일링하고 표준화 한다. - Animation Inference
미리 처리된 전원 신호들은 피해자가 장치에 입력하는 멀티 프레스 시퀀스를 재구성하기 위해 해당 기종의 장치에 대해 훈련된 신경망으로 전송된다.
5. 개인적인 생각
# usb charging으로 smart phone의 정보를 leak 했는데, 최근에는 C-type 충전기로 노트북과 스마트폰의 충전기 포트가 같아졌다. 그렇다면 smartphone의 정보를 leak하는 것을 넘어서 노트북의 정보(ex. keyboard 정보, 노트북 touch screen 등)를 leak할 수 있지 않을까?
# banking 앱과 같이 민감한 정보를 입력할 때는 키보드 배열을 바꾸는 경우도 많은데, 이러한 경우에도 passcode 를 leak할 수 있는 것인가?
SMALL