[:tr]
Otomobil sızma teknikleri, farkını ortaya koyan alanlardan biri gibi dursa da günümüz ve gelecek için önem taşıyan test yöntemlerinden biri olacaktır. Otomobillerimiz giderek daha akıllı hale geldikçe, giderek daha fazla elektronikleştikçe otomobilleri daha savunmasız hale getiriyor.
Kelimenin tam anlamıyla sürücüsüz veya otonom araba çağına dönüştüğümüz için, otomobillerin güvenlikleri önemli hale geldi ve gelmeye devam edecek.
Otomobil sızma tekniklerine geçmeden önce, temelleri anlamamız gerekiyor. Otomobil elektroniği, çoklu mikro kontrolörler, sensörler, göstergeler, aktüatörler vb. arasında iletişim kurmak için birkaç farklı protokol kullanır. Bu protokollerin en yaygın olarak kullanılanı Controller Area Network veya CAN’dır.
CAN, Ağdaki her düğüm, her iletimi “görebilir”. Ethernet veya TCP/IP’den farklı olarak (ancak SCADA sistemlerindeki modbus’a benzer şekilde) tek bir düğüme mesaj gönderemezsiniz, ancak CAN yerel filtreleme sağlar, böylece her düğüm yalnızca kendi çalışmasıyla ilgili mesajlara göre hareket eder. Bunu, içeriğin hedef düğümü belirlediği “içerik mesajlaşması” olarak düşünebilirsiniz.
CAN; yüksek ve düşük olmak üzere iki kablo üzerinden çalışır. Otomobil sistemlerinin doğasında bulunan “gürültü” nedeniyle CAN, diferansiyel sinyalleme kullanır. Bu, protokolün iletişim kurmak için iki kablodaki voltajı yükselttiği ve azalttığı yerdir. Hem yüksek hızda hem de düşük hızda CAN’de sinyalleme, sıfır (0) iletirken yüksek kabloyu 5v’ye ve düşük kabloyu 0v’ye doğru sürer. Ancak bir (1) gönderirken her iki kabloyu da sürmez.
CAN dört (4) farklı türde mesaj kullanır;
- Data Frame
- Remote Frame
- Error Frame
- Overload Frame
Data Frame
Bu aslında veri iletimi için kullanılan tek çerçevedir. Çoğu durumda, veri kaynağı nodu veri çerçevesini gönderir. Standart ve genişletilmiş olmak üzere iki çeşidi vardır. Standardın 11 tanımlayıcı biti ve genişletilmişin 29 biti vardır. CAN standardı, temel veri çerçevesinin MUTLAKA kabul edilmesini ve genişletilmiş çerçevenin MUTLAKA TOLERANS EDİLMESİNİ gerektirir. Başka bir deyişle, protokolü veya iletimi bozmaz.
Remote Frame
Veri hedef düğümü kaynaktan veri istediğinde kullanılır.
Error Frame
İki farklı alanı vardır, ilki Error Flags tarafından verilir ve farklı istasyonlar tarafından katkıda bulunur. Ve ikincisi, sadece hata mesajının sonunu gösteren Error Delimeter’dir.
Overload Frame
Overload Frame’in iki alanı vardır. Bunlar Aşırı Yük Bayrağı ve Aşırı Yük Sınırlayıcıdır. Aşırı yük çerçevesi, bir alıcının dahili koşulları veya iletim sırasında baskın bit (0)’ın algılanmasıyla tetiklenir.
Yerleşik Tanılama (OBD)-II Konnektörü
Çoğu araç bir ODB-II konektörü ile birlikte gelir. Arabanızı tamir için bir dükkâna götürdüyseniz, tamircinin bilgisayar ile bir okuma almak için bilgisayarını bağladığı, gösterge panelinin altındaki bu konektördür.
OBD-II’nin 16 pimi vardır ve aşağıdaki şemaya benzer.
Bir pentester olarak biz de bu OBD-II konnektörüne bağlanıp CAN ağı üzerinden çeşitli cihazlara mesaj gönderebiliriz.
CAN Bus Paket Düzeni
Standart ve genişletilmiş olmak üzere iki tür CAN paketi vardır. Genişletilmiş paketler, standart paketle aynı öğeleri paylaşır. Ancak genişletilmiş paketler, kimlikleri dahil etmek için ek alana sahiptir.
Standart Paketler
Her CAN paketinin dört kritik bölümü vardır. Bunlar;
- Arbirition ID
Paketi gönderen cihazın kimliğidir.
- Identifier Extension
Bu bit, standart CAN için her zaman 0’dır.
- Data Length Code (DLC)
Bu, 0 ila 8 bayt arasındaki verilerin boyutunu gösterir.
- Data
Bu, mesajdaki verilerdir. Yukarıda belirtildiği gibi, 8 byte kadar olabilir.
Yukarıda bahsedildiği gibi, tüm CAN paketleri yayınlanır. Böylece her cihaz veya kontrolör her paketi görebilir. Herhangi bir aygıtın paketi hangi denetleyicinin gönderdiğini (dönüş adresi yok) bilmesinin bir yolu yoktur. Bu nedenle CAN ağındaki sahte mesajlar önemsizdir. Bu, CAN’ın temel zayıf yönlerinden biridir.
Genişletilmiş CAN Paketleri
Genişletilmiş CAN paketleri, standart CAN paketleriyle aynıdır. Ancak daha uzun kimlikler oluşturmak için birlikte zincirlenirler. Genişletilmiş CAN, standart CAN ile geriye dönük olarak uyumludur. Bu, bir sensor genişletilmiş CAN paketlerini kabul edecek şekilde tasarlanmadıysa, bu sistemin bozulmayacağı anlamına gelir.
Güvenlik
CAN düşük seviyeli bir protokol olduğundan, yerleşik herhangi bir güvenlik özelliğine sahip değildir. Varsayılan olarak şifreleme veya kimlik doğrulaması YOKTUR. Bu, ortadaki adam saldırılarına (şifreleme yok) ve sızdırma saldırılarına (kimlik doğrulama yok) yol açabilir. Bazı durumlarda üreticiler, yazılımın değiştirilmesi ve frenlerin kontrol edilmesi gibi kritik görev sistemlerinde kimlik doğrulama mekanizmaları uygulamışlardır, ancak bunlar tüm üreticiler tarafından uygulanmamıştır. Parolaların uygulandığı durumlarda bile, kırılmaları nispeten kolaydır.
Bu içerik dizisinin diğer bölümlerine aşağıdaki linklerden ulaşabilirsiniz:
- Yeni Nesil Otomobil Güvenlik Testleri Nasıl Yapılmalı? [2]
- Yeni Nesil Otomobil Güvenlik Testleri Nasıl Yapılmalı? [3]
- Yeni Nesil Otomobil Güvenlik Testleri Nasıl Yapılmalı? [4]
Sorumluluk Reddi Beyanı
Değerli ziyaretçimiz,
Bu blog yazımız bilgi amaçlı olup, saldırılara karşı farkındalığı arttırabilmek ve bu doğrultuda tedbirler alınabilmesi amacı ile hazırlanmıştır. Bu yazıda geçen bilgilerin amacı dışında kullanılmasının hukuki olmadığını hatırlatırız. Anlatılanlardan kaynaklanabilecek doğrudan ya da dolaylı zarar ve kayıplardan CyberArts firmasının sorumlu tutulamayacağını beyan ederiz.
Siber Güvenlik, Dijital Dönüşüm, MSSP, Sızma Testi, KVKK, GDPR, ISO 27001, ISO 27701 ve DDO Bilgi ve İletişim Güvenliği Rehberi başlıklarıyla ilgili teklif almak için lütfen tıklayın.
Although automobile penetration techniques seem to be one of the areas that show the difference, it will be one of the important test methods for today and the future. As our cars become smarter, more electronic, it makes cars more vulnerable.
As we enter the era of literally driverless or autonomous cars, the safety of cars has become and will become more important.
Before we move on to automobile infiltration techniques, we need to understand the basics. Automobile electronics, multiple microcontrollers, sensors , indicators, actuators , etc. It uses several different protocols to communicate between The most widely used of these protocols is Controller Area Network or CAN .
CAN, Every node in the Network can “see” every transmission. Unlike Ethernet or TCP/IP (but similar to modbus in SCADA systems ) you cannot send messages to a single node, but CAN provides local filtering so each node only acts on messages related to its own operation. You can think of it as “content messaging” where the content determines the target node.
BELL; It works over two wires, high and low. Because of the “noise” inherent in automobile systems, CAN uses differential signaling . This is where the protocol raises and lowers the voltage on the two wires to communicate. In both high speed and low speed CAN signaling drives the high wire towards 5v and the low wire towards 0v while transmitting zero (0). But when sending one (1) it doesn’t drive both wires.
CAN uses four (4) different types of messages;
- Data Frame
- Remote Frame
- Error frame
- Overload frame
Data Frame
This is actually the only frame used for data transmission. In most cases, the data source node sends the data frame. There are two types, standard and extended . The standard has 11 identifier bits and the extended has 29 bits. The CAN standard requires that the basic data frame MUST be accepted and the extended frame MUST BE TOLERANCED. In other words, it does not break the protocol or transmission.
Remote Frame
data destination node requests data from the source.
Error frame
It has two different fields, the first is Error It is given by Flags and contributed by different stations. And second, Error which only shows the end of the error message It is delimeter.
Overload frame
Overload The Frame has two fields. These are the Overload Flag and the Overload Limiter. The overload frame is triggered by the internal conditions of a receiver or by detecting the dominant bit (0) during transmission.
Onboard Diagnostic (OBD)-II Connector
With an ODB-II connector . If you’ve taken your car to a shop for repairs, it’s this connector at the bottom of the dashboard that the mechanic connects to his computer to get a reading.
OBD – II has 16 pins and looks like the diagram below.
As a pentester , we can connect to this OBD-II connector and send messages to various devices over the CAN network.
CAN Bus Packet Layout
There are two types of CAN packages, standard and extended. Extended packs share the same elements as the standard pack. But extended packages have additional space to include IDs.
Standard Packages
Each CAN packet has four critical sections. These;
- Arbitration ID
The ID of the device that sent the packet.
- identifier extension
This bit is always 0 for standard CAN.
- DataLength _ Code (DLC)
This indicates the size of data from 0 to 8 bytes.
- Data
This is the data in the message. As mentioned above, it can be up to 8 bytes.
As mentioned above, all CAN packets are broadcast. So every device or controller can see every packet. There is no way for any device to know which controller sent the packet (no return address). Therefore, fake messages in the CAN network are irrelevant. This is one of the main weaknesses of CAN.
Extended CAN Packages
Extended CAN packages are the same as standard CAN packages. But they are chained together to form longer identities. Extended CAN is backward compatible with standard CAN. This means that if a sensor is not designed to accept extended CAN packets, this system will not fail.
Security
Because CAN is a low-level protocol, it does not have any built-in security features. By default there is NO encryption or authentication. This can lead to man-in-the-middle attacks (no encryption) and spoofing attacks (no authentication). In some cases, manufacturers have implemented authentication mechanisms in mission-critical systems such as modifying software and checking brakes, but not all manufacturers have implemented them. Even where passwords are enforced, they are relatively easy to crack.
You can access other parts of this content series at the following links:
- How Should New Generation Automobile Safety Tests Be Done? [2]
- How Should New Generation Automobile Safety Tests Be Done? [3]
Disclaimer
Dear visitor,
This blog post is for information purposes and has been prepared with the aim of raising awareness against attacks and taking measures in this direction. We remind you that it is not legal to use the information in this article for any other purpose. We declare that CyberArts company cannot be held responsible for direct or indirect damages and losses that may arise from what is explained.
To request a quotation for the following: Cyber Security, Digital Transformation, MSSP, Penetration Testing, KVKK, GDPR, ISO 27001 and ISO 27701, please click here.