본 글은 논문의 전체를 요약하지 않았으며, 개인 공부에 필요한 내용을 취사 선택하여 정리한 내용입니다.
Abstruct
논문 목표 : 자율주행 차량을 향한 공격과 방어 기법 분류
Background
왜 자율주행차량은 공격에 더 민감하고, 자율주행 차량의 보안에 대한 접근은 왜 일반 차량과 다른가 ?
A) Increase in communication channels
1) 자율주행 차량과 외부 환경 간 통신이 많아짐.
- VANETs 통신
- 외부와 통신이 많이지므로, 한 차량이 감염되면, 연결 된 주변의 모든 인프라와 차량들이 악성 공격자에 의해 감염될 수 있음.
2) 자율 주행 차량 내부에서도 통신이 많아짐.
자율 주행 차량의 내부는 수 많은 ECU들이 CAN bus를 통해 통신함.
CAN 버스 사용의 장점
- CAN 버스가 ECU 통신의 중심 네트워크 역할을 하므로, 다른 모듈이 추가되거나 제거되어도 다른 모듈은 영향을 받지 않음
CAN 버스 구성
- Data linke layer (Data 통신 역할)
- High-speed CAN physical layer
- Low-speed, fault tolerant CAN physical layer
CAN 버스가 취약한 이유
- 자율주행 차량 내에서, CAN 패킷은 모든 노드에게 전달됨. -> 악성 공격자가 내부 네트워크에 침입한다면, 모든 통신을 스누핑할 수 있고, 모든 컴포넌트에 악성 패킷을 보낼 수 있음.
- CAN 패킷은 authenticator 필드 or source identifier 필드가 없음. -> 어떤 컴포넌트든 다른 컴포넌트에게 패킷을 보낼 수 있음.
B) Security Tesing Approaches
실제 안전성 테스트에 관한 내용. 필요한 내용이 아니라 정리 안함.
ECU가 취약한 이유는 직・간접적 접근 가능
ATTACK TAXONOMY
자율주행 차량을 향한 잠재적 위협, 취약점, 공격을 공격자(Source), 공격 벡터(Method) , 대상, 모티브(objecitve/reason) , 잠재적 결과(outcome)으로 구분 할 예정.
A. Attacker(공격자)
공격의 소스나 기원
공격자는 물리적・비물리적으로 비인가 접근을 할 수 있음.
B. Attack Vector(공격벡터)
1) Physical Access
Non-invasive Attacks
임베디드 디바이스를 디스어셈블하거나 물리적으로 템퍼링 X
AV에 가까이 접근해야 함
Side-channel attacks
- transmitted data 나 internal working of the system 과정에서 정보를 획득하는 것!
- 정보를 간접적으로 획득
- 정보 유출 목적
방어법
- 프로세스 과정이 동기적으로 일어나며, 방어 메카니즘이 갖춰져야 함
Vasive-Attacks
OBD-II 포트를 통해 접근 가능
AV에 연결된 Smartphone을 통해 원격 공격 가능
Code Modification
- OBD-II 스캐너 중 고급 스캐너들은 ECU 코드를 뽑아내거나 수정할 수 있음.
방어법
- 차량 연결 시 비밀번호 설정(비인가된 접근 X)
- Authorized and verified 코드 수정만 일어나도록 해야함
Code Injection
- 공격자가 차량 네트워크와 ECU에 대한 접근 권한을 획득한 뒤 , ECU에 harmful code 삽입.
방어법
- IDS
- priviliged access를 허가된 사람에게만 줌.
Packet Sniffing
- 패킷 스니퍼를 통해 로그 트래픽 인터셉트 (특히 네트워크 진단시 발생할 수 있음)
- 둘 또는 여러 노드 사이의 커뮤니케이션을 볼 수 있음.
- 공격자는 암호화 안된 데이터들 도청가능
- 리플레이 공격 가능.
방어법
- 전송 패킷의 기밀성을 위해 암호화 도입
- 송수신 통신 신호의 Freshness 보장하는 기술 도입.
Packet Fuzzing
- Invalid 데이터를 타겟 시스템이나 모듈에 전송 for 에러 컨디션 or 폴트를 찾기 위해서.
- 에러 조건은 취약점 일으킬 수 있음.
- 패킷 퍼징은 주로 security testing을 위해 사용.
방어법
- Security testing 중 보안 취약점이 발견되면 , 이슈 fix를 위해 시스템 업데이트를 해야함.
- 시스템 업데이트 전 authentic을 verified 해야함.
In-Vehicle Spoofing
- 가짜 데이터를 진짜처럼 위조
- 공격자는 실제 차량 구성 요소나 모듈을 스푸핑 장치로 교체하거나, IVN 신호를 위조
방어법
- Replay attack 저항 기술 도입
- 모듈 핑거프린팅을 통해 위조 모듈 구분
2) Remote Access
공격자는 자율주행차량에 연결성을 활용해 Exploit할 수 있음 (LiDAR , Camera , GPS etc)
External Signal Spoofing
GPS Spoofing
- GPS reciever를 속이기 위해 다른 디바이스에서 Incorrect GPS signal을 보냄. (실제 GPS 신호처럼 보이는 가짜 신호 or 이전에 캡쳐한 실제 GPS 신호를 보냄.)
- 공격자는 가짜 신호 전력 강도를 높이면서 실제 신호를 대체하고, 수신기는 가짜 신호만 받아들이게 됨.
방어법
- GPS 시스템을 안전하게 만들기
- GPS가 받는 신호들이 실제 신호임을 확인하기 위한 Verification 테크닉을 사용
LiDAR Spoofing
- LiDAR에서 발생하는 신호 펄스를 레이저 포인터로 기록.
- 가짜 LiDAR와 실제 신호와 섞어서 보냄.
- LiDAR가 실제 존재하지 않는 방해물들을 인식하게 됨 -> DoS 공격
방어법
- 차량 생산자들이 외부 센서나 차량에서 오는 공격을 방어하는 기법을 적용해야함.
- 수집된 데이터들을 크로스 체크해서 가짜 신호들 필터해야함
Jamming
- 무선 미디어나 외부 센서를 향한 가용성(Availability) 공격 -> 그 결과, 허가된 커뮤니케이션 방해.
- 센서(LiDAR, 카메라)를 향한 시그널을 재머 디바이스가 막아버림.
- AV 카메라를 향한 신호를 막는 블라인딩 공격도 가해질 수 있음.
방어법
- 카메라에 탈착 가능한 근적외선 차단 필터 설치
- Photocromic 렌즈(특정 타입에 대한 컬러를 필터하는 것) 설치
C. Attack Target
ECUs , 센서들, GPS, 네트워크 사이의 시스템 건강도는 매우 중요.
D. Attack Motive
- 공격자의 모티브를 아는 것 중요.
AV의 어떤 부분을 방어해야 하는지 알 수 있음.
e.g) 다른 차량에 잘못된 행동 신호 전파(VANET을 향해 간 악성 노드들은 다른 차량에게 전파됨) -> 도로 위 차량에 안좋은 상황을 만들 수 있음. - 경제적 원인 (차 문 열고 금품 훔치기)
- 살해나 신체적 위협 목적
E. Potential Consequence
- DoS
- AV 기능을 방해할 수 있음.
- AV의 올바른 기능에 사보타지를 가하거나, 도로 위에서 차량 컨트롤을 잃어버리게 할 수 있음.
- AV의 시스템 건강이 약화됨
- 공격을 당하게 될 가능성 증가
- 공격 당하면 쉽게 당함.
DEFENCE TAXONOMY
예방(Preventive defence), 수동적 방어(passive defence),적극적 방어(active defence), 협력 방어(collaborative defence) 로 방어 구분.
A. Preventive Defence
시스템 정상 운영 조건에 초점.
공격 발생 시, 공격 발생 이후에 대한 방어 X
1) Secure Communication
- 차량 관련 data 전송에 있어 암호화는 매우 중요
- 암호화는 데이터 전송의 기밀성을 보장해줌
- MAC(Message Authentication Code)를 통해 data 무결성 보장할 수 있음.
2) In-Vehicle Device Authentication
- 자율주행차의 컨트롤러가 신뢰할 수 있는지 보장하기 위해, 인증 프로세스를 지원하기 위해 인증서를 발급할 수 있음.
- 각각의 컨트롤러는 해당 컨트롤러의 식별자, 공개 키 및 권한을 포함한 인증서를 소지
- 게이트웨이는 차량의 인증된 원본 제조업체 (OEM)들의 공개 키 목록을 보유하게 됩니다.
- 인증 프로세스가 성공하면, 해당 컨트롤러와 해당 컨트롤러의 권한이 게이트웨이의 유효한 컨트롤러 목록에 추가
3) User Authentication
- AV 컨트롤에 대한 인가된 사용을 보장하기 위해, 생체인증을 추가할 수 있음.
(차 문 잠그거나 열때, 엔진 시동에 대해)
4) Firewall
- Trusted 네트워크와 untrusted 또는 less-trusted 네트워크 차량 내 통신 또는 V2X 환경에서 방화벽을 사용해 보안성을 높일 수 있음.
B. Passive Defence
수동 방어는 moving target이나 적응형 보안 메커니즘 고려 X , 분석가의 상호작용을 요구 x
1) Attack Detection
Intrusion Detection
- AV 시스템에 가해지는 사이버 공격은 덜 명확하고 탐지가 잘 되지 않음.
Anti-Malware
- 안티-멀웨어는 AV를 향한 악성 소프트웨어 방어에 효과적.
- AV를 향한 멀웨어는 아직 활성화되지 않음.
- AV를 향한 멀웨어는 시그니처 기반 탐지가 우선.
- AV 공격 모델링, AV를 향한 새로운 멀웨어, 동작 기반 멀웽. 탐지 등에 대한 연구가 활발해져야함.
2) Attack Response
Nullification
- Nullification (무효화)은 개체가 전자적 또는 사이버 능력을 사용하여 사이버 공격을 무효화하거나 중화시킬 수 있는 능력(사이버 공격에 대응하여 해당 공격을 무효화하거나 효과를 상쇄시키는 능력을 의미함.) 예를 들어, GPS에 대한 anti-jamming 이 있음.
Isolation
- AV의 Self-Isolation은 다른 차량에 False information을 보내는 것을 막아줌.
- 엔진이 돌아갈 때 , ECUs의 re-programming을 막아줌
- AV가 공격을 받았을 때, 주변 차량에게 공격 받은 사실을 알려 다른 차량이 보안 메커니즘을 구축할 수 있도록 해야함.
- AV self-Isolation의 시스템 레벨에서, 감염된 모듈이나 악성 코드가 발견되면, 엔진이 돌아갈 때 , 해당 악성 모듈과 코드가 차량에 위험한 영향을 미치지 않도록 격리해야함
Availability
AV에서 가용성은 가장 탑승자와 도로 위 다른 사람들의 안전을 위해 가장 중요한 보안성
C. Active Defence
1) Continuos Security Monioring
Real-time에 가까운 차량 보안 상태 관찰이 필요함.
계속된 보안 모니터링이 필요하고, 일정한 인터벌에 맞춰, 차량 상태에 대한 스냅샷을 찍어 보안 상태를 확인하는 것이 중요.
2) Adoptive Security
- 오늘날 차량을 향한 공격은 정적이지 않음. 공격 방법, 침투 경로 등 빠르게 발전하고 변화.->차량 그 자체로 방어대상이 될 수 있도록 되어야 함.
- 탐지 모델은 self-learning 하면서 진화해야 함. (새로운 타입과 형태의 공격 방어)
D. Collaborative Defence
1) Cloud Computing
- VANET 환경에서 여러 AV가 협력해서 보안을 강화할 수 있음.
- V2IoT는 클라우드로 옮겨가게 될 것 -> 미래 보안 공격의 타겟이 될 것.
=> 클라우드 수준에서 보안 강화가 중요해질것
Conclusions
본 논문에선,
- 자율주행 차량 보안을 취약점, 공격, 방어의 관점에서 살펴봄.
- 자율주행 차량을 향한 공격과 방어에 대한 종합적인 분류를 제시함.