Without a Break

V2V(Vehicle to Vehicle) 본문

Network/자율주행

V2V(Vehicle to Vehicle)

와븨 2023. 5. 2. 02:46

V2V란?

: 차량 간 통신. 차량이 서로 통신할 수 있도록 전용 단거리 통신(DSRC)을 위해 설계된 자동차 기술로, 모든 형태의 무선 구성 요소를 활용하고 도로상에서 차량 애드혹 네트워크-VANET(Vehicle Ad Hoc Network)를 형성한다.

*애드혹 네트워크 : 고정된 기반 망의 도움없이 이동 노드들간에 자율적으로 구성되는 망으로, 네트워크에 자율성과 융통성을 부여한 네트워크

  • 운전자에게 필요할 때 중요한 정보를 제공하고 충돌 가능성에 대한 경고를 제공
  • V2V 통신을 통해 차량은 인접한 거리에 있는 다수의 차량과 다양한 메시지를 송수신하게 됨
  • 보안 시스템은 개인 정보를 익명으로 유지하고 차량을 추적하지 않음
  • 운전자는 시각적 디스플레이, 시트 진동 또는 톤을 통해 잠재적인 위험을 알려주는 경고를 받게 됨. 하지만 경고일 뿐, 운전자는 항상 차량을 제어할 수 있음 => 운전자가 잠재적인 충돌을 피하기 위해서 신속하게 대응하는 데 도움이 될 수 있음
  • 통신 목표 : 운송 중인 차량이 주변 환경에 대한 360도 인식을 개발할 수 있도록 하는 것
  • V2V의 통신 데이터는 지능형 전송 시스템에서 추가로 사용하여 교통 관리를 개선할 수 있음

 

왜 V2V?

: 인적 오류 극복하고 도로 사고 75% 이상 줄일 수 있음

 

DSRC

: 단거리 양방향 통신이 가능한 노변기지국을 설치하고, 주행하는 차량에 설치된 하이패스 단말기로 교통정보를 수집하여, 이를 기반으로 가공된 교통정보를 도로이용자에게 전달하는 교통정보시스템으로, WIFI와 유사한 무선 프로토콜. 

 

-> DSRC가 GPS 기술과 결합되면 통신 범위 내에서 유사하게 장착된 차량의 360도 보기를 제공하는 저비용 V2V 통신 시스템이 탄생

 

V2V 기능

V2V 포함
현재 GPS 위치
차량 속도 가속도 및 방향
변속기 상태
브레이크 상태
차량 제어 정보 (ex. 스티어링 휠 각도)
차량 경로 기록 및 경로 예측
V2V 포함하지 않음
내비게이션
인터넷 액세스
보조 서비스
후방 카메라
기타 고급 기술

 

 

V2V 애플리케이션

교차로 이동 보조(IMA), 좌회전 보조(LTA), 비상 전자식 제동등(EEBL), 전방 충돌 경고(FCW), 사각지대 경고(BSW)

IMA (Intersection Movement Assist) 교차로 이동 보조.
교차로에 진입하는 것이 안전하지 않을 때 운전자에게 경고
DNP (Do Not Pass) 느리게 움직이는 차량을 추월하는 것이 안전하지 않을 때 운전자에게 경고
EEBL (Emergency Electronic Brake Light) 비상 전자식 제동등
앞의 여러 차량이 시야에서 벗어난 차량이 브레이크를 밟을 때 운전자에게 알림
BSW (Blind Spot Warning) 사각지대 경고
운전자는 자신의 사각지대에서 일어나는 일을 가상으로 볼 수 있음
그 외 : FCW(전반 충돌 경고)

 

V2V 통신환경에서의 DoS 공격

자율주행 자동차는 폐쇄적인 기존 차량과 달리 외부와 연결되어야 함 -> 외부 IT 시스템에 존재하는 위협이 차량 내부로 침투할 수 있음

그렇기 때문에 자율주행자동차는 다수의 메시지를 실시간으로 처리하기 위해서 가용성을 확보하는 것이 중요한데, 기존 IT 시스템에서 가용성을 위협하는 공격은 대표적으로 DoS 공격이 있음.

 

이론

VANET(Vehicular Ad-hoc Network)

: 이동하는 차량이 노드로 구성되어 차량 간 메시지를 교환하는 애드혹 네트워크 형태

WAVE (Wireless Access in Vehicular Environment)

: ITS(Intelligent Transportation System) 환경에서 원활하고 상호운용 가능한 서비스를 제공하기 위한 무선통신 시스템

AODV(Ad-hoc On Demand Vector)

: Ad-hoc 네트워크에서 사용되는 라우팅 프로토콜로, 출발지-목적지 간 경로를 사전에 탐색하는 것이 아니라 On-demand 형식으로 필요할 때 경로를 탐색하므로 라우팅을 위한 부하가 적음. 

: 경로 재사용이 가능하지만, 새로운 경로에 대해서는 다시 새롭게 탐색해야함. 

: RREQ(Route Request), RREP(Route Replay) 패킷 사용

 

1. TCP SYN Flooding attack

Three-way handshake : SYN(클라이언트) -> SYN+ACK (서버, half-open)-> ACK(클라이언트, half-open 연결 정보 비움)

TCP SYN Flooding은 half-open 상태를 악용.

  1. 악의적인 클라이언트가 마지막 단계인 ACK 패킷을 보내는 대신 SYN 패킷을 전송하게 되면 서버는 새로운 half-open  연결 정보를 저장
  2. 1을 반복
  3. 서버의 백로그 Queue의 저장 공간이 부족해져 이후에 오는 정상적인 클라이언트의 연결 요청에 대해 응답할 수 없게 됨

 

2. Duplicate Address Detection(DAD) DoS

DAD : IPv6에서 노드가 서브 네트워크에 참여하기 위해 설정한 주소가 다른 노드의 주소와 중복되는지 판단하기 위해 진행하는 작업

  1. 노드에서 임시 주소가 생성되면 노드는 임시 주소가 포함된 NS 패킷을 전송 => 생성된 임시 주소가 고유하다는 것을 확인 수 있음
  2. 전송된 NS 패킷에 대해 응답이 없는 경우, 노드는 주소가 고유하다고 가정하고 사용

위의 DAD 과정에서, 공격자가 자신이 해당 주소를 사용한다고 거짓된 주장을 하여 DoS 공격을 수행

-> 노드는 다시 주소를 생성하고 DAD 반복

 

즉, 공격자는 매 반복마다 거짓된 정보를 전송하여 해당 노드가 주소를 얻지 못하게 한다.

 

3. RREQ Flooding attack

AODV 라우팅 프로토콜에서 경로 탐색은 on-demand 방식으로 수행됨

  1. 출발지 노드는 자신으로부터 경로가 설정되지 않은 목적지로 패킷을 전송하기 전에 자신의 이웃에게 RREQ 패킷을 전송
  2. RREQ 받은 이웃은 자신의 라우트 테이블을 확인하고 경로가 있을 경우 RREP 패킷을 통해 경로를 알려주고, 없을 경우 다시 RREQ 패킷을 다른 이웃에게 전송

전체 네트워크에서 RREQ 패킷을 계속해서 전송하는 것은 많은 자원을 소비하기 때문에 한 노드가 초당 일정 수 이상의 패킷을 전송할 수 없도록 설계되어 있음 => 공격자는 이 특성을 위반하여 RREQ Flooding 공격 수행

  1. 공격자는 임의의 IP 주소를 선택함. (공격자가 공격 대상의  IP 주소 네트워크 범위를 아는 경우 범위 밖의 IP 주소를 선택)
  2. 선택한 IP 주소에 대해 대량의 RREQ 메시지를 연속적으로 발생시킴
  3. 전체 네트워크에는 공격자가 전송한 RREQ 패킷이 가득 차게 되고, 이를 처리하기 위해 많은 자원이 소비됨 => RREQ 패킷을 수신한 이웃 노드들은 경로를 저장할 수 있는 라우트 테이블 저장 공간이 가득 차 새로운 RREQ 패킷을 수신할 수 없게 됨

 

4. BSM DoS

BSM : 차량이 V2V 통신을 수행할 때 인접한 차량에 지속적으로 브로드캐스트하는 메시지로, 송신 차량의 시간 위치, 속도, 경로 기록 및 기타 관련 정보가 포함되며 디지털 서명이 되어있다.

- 수신 차량은 각 메시지에 대한 서명을 확인하고 평가한 후 운전자에게 경고를 표시할지 결정

 

BSM을 통해 DoS 공격을 발생시킬 수 있는 방법은 2가지가 있다.

  1. 서명 검증 악용 : 공격자가 잘못된 서명을 붙인 대량의 거짓 메시지를 위조하여 전송 -> 자원 소모
  2. BSM을 전송하기 위해 사용되는 MAC 계층인 802.11계층의 취약점 악용 : WAVE의 서비스 채널과 통제 채널의 전송 시간 앞부분에는 보호 간격이 존재하며 이 동안에는 전송이 불가능하며 보호 간격이 끝난 직후 메시지를 전송하기 위해 유휴 상태를 확인해야 하는 절차가 있음. 공격자는 다른 차량들에서 이 절차가 완료되기 전에 BSM을 전송 -> 다른 차들의 BSM 전송 지연

 

DoS 공격 대응기술

1. Greedy Detection for VANET

VANET에서 greedy 행동에 기반한 공격은 MAC 계층의 취약점을 이용한다. 공격자 노드는 자신의 대기시간을 감소시켜 채널에 더 빠른 접근을 하며, 다른 일반 노드들의 정상적인 동작을 방해한다.

*greedy 행동 : 무식하게 지금 당장 좋은 것을 고르는 방법

 

이러한 공격을 탐지하기 위해 두 단계로 구성된 GDVAN(Greedy Detection for VANET)이라는알고리즘을 개발했다

GDVAN 알고리즘의 목적은 VANET을 감시하는 것이며, 알고리즘은 크게 Suspicion 단계와 Decision 단계로 나누어 진다.

 

- Suspicion 단계

  • 네트워크의 상태가 정상인지 비정상인지 일차적으로 확인하는 단계
  • 네트워크의 상태가 정상이면 한 노드가 채널에 접근할 때 다른 노드는 접근한 노드의 전송이 끝날 때 까지 해당 채널에 접근할 수 없음 => 네트워크가 정상적인 상황이라면 노드들의 연결시간은 선형적인 형태를 갖게 됨
  • 이러한 특성을 사용하여 Suspicion 단계에서는 네트워크의 상태를 관찰함
  • 관찰을 통해 Greedy 행동으로 의심되는 경우를 상관계수가 1과 가깝지 않은 경우, 상관계가 1에 가깝지만 선형 회귀 직선의 기울기가 1에 가깝지 않은 경우로 나눔
  • 두 가지 경우에 대해 watchdog을 사용하여 두 개의 연속된 전송 사이의 지속 시간, 노드의 패킷 전송시간, 노드의 채널 접근 시도 횟수를 확인함

- Decision 단계

  • 퍼지 논리를 사용하여 특정 차량의 상태를 결정
  • 최종적으로 차량은 normal, suspected, greedy로 분류

 

2. Puzzle-based co-authentication (PCA)

: 익명 인증을 최초 검증하는 데 걸리는 시간으로 인해 서로 다른 ID를 가진 메시지가 다량으로 수신되는 경우 DoS의 위협이 발생할 수 있는데, 이에 대응하기 위해 제안한 알고리즘 

: 퍼즐 설계 단계와 상호 신뢰 클러스터 설계 단계로 구분

 

- 퍼즐 설계 단계

  • 해시의 단방향성을 이용해서 공격자가 무차별적으로 메시지를 보내는 것을 방지하기 위한 퍼즐을 생성
  • 퍼즐은 메시지와 퍼즐에 대한 답으로 구성되며, 퍼즐을 사용하여 인증을 거친다

- 상호 신뢰 클러스터 설계 단계

  • 정상적인 단일 사용자들의 자원을 통합하기 위한 협력 인증 체계
  • 상호 신뢰 클러스터는 이미 서로 신뢰하는 구성원으로 구성되며 같은 클러스터의 구성원끼리는 함께 퍼즐을 생성하거나 인증서를 검증하기 위해 함께 협력할 수 있음

 

3.IP-CHOCK based detection

: 악의적인 노드가 IP 주소를스푸핑하여DoS 공격을 수행하는 것을 탐지.

: Detection Engine 단계와 Bloom-filter 단계로 구성

 

- Detection Engine 단계

  • 다시 두 가지로 나뉨
  • 첫 번째 Detection Engine 단계 : 들어오는 모든 교통정보를 확인(교통의 변화는 차량의 센서를 통해 감지)하고, 두 번째 Detection Engine 단계에 필요한 차량 IP 주소를 수집
  • 두 번째 Detection Engine 단계 : 첫 번째 단계에서 센서를 통해 감지된 값을 처리하여 이 값이 네트워크에 영향을 미칠 가능성이 있는지 결정 -> 네트워크에 악의적인 영향을 미칠 가능성이 있는 차량 IP 주소를 발견하지 못하면 해당 정보를 데이터베이스에 저장하고 발견한다면 이를 Decision Engine에 전달

- Bloom-filter 단계

  • 의사결정 엔진에서 수집된 정보에 악의적인 IP 주소가 포함되어 있으면 Bloom-filter 과정을 거치게됨
  • 그 결과로 생성된 참조 링크를 연결된 차량에 전송하여 VANET에서 악의적인 IP 주소가 포함된 메시지가 사용되지 못하도록 막음

 

V2V 오작동

V2V 오작동 정의

 

차량 수준의 Hazard 도출

*Hazard : 잠재적으로 해를 끼칠 수 있는 것

 

HARA

앞서 도출된 오작동과 Hazard를 기반으로 수행.

HARA는 잠재적 위험원으로부터 위험 사건과 위험 사건으로 인한 위험을 분석하여 아이템의 ASIL 등급과 안전 목표를 정의하는 단계이다.

*ASIL 등급 : 사고 발생에 대한 상해(S)와 노출빈도(E), 제어가능성(C)을 조합하여 도출된 등급. 최저 A부터 최고 D등급까지 존재. (qm=안전성과 관련이 없음)

 

1) V2V 데이터의 신뢰도가 높은 경우

 

2) 자율주행 센서 데이터 신뢰도가 높은 경우

=> ASIL 등급은 V2V 데이터의 신뢰도가 높은 경우가 더 높은 것을 알 수 있음

 

 

참고 자료

https://www.youtube.com/watch?v=3z09fCqmILU 

https://scienceon.kisti.re.kr/commons/util/originalView.do?cn=JAKO202013965595414&oCn=JAKO202013965595414&dbt=JAKO&journal=NJOU00291864 

 

원문보기 - ScienceON

 

scienceon.kisti.re.kr

https://www-dbpia-co-kr.libproxy.swu.ac.kr/pdf/pdfView.do?nodeId=NODE10519375 

 

https://www-dbpia-co-kr.libproxy.swu.ac.kr/pdf/pdfView.do?nodeId=NODE10519375

 

www-dbpia-co-kr.libproxy.swu.ac.kr

 

'Network > 자율주행' 카테고리의 다른 글

V2I (Vehicle-to-Infrastructure)  (0) 2023.05.08
V2X (Vehicle to Everything)  (0) 2023.04.10
LIN (Local Interconnect Network)  (0) 2023.04.10
CAN 통신  (0) 2023.04.04
커넥티드카  (0) 2023.03.25