Popis: |
CAN (Kontrol Alan Ağı), gerçek zamanlı kontrol uygulamaları için kullanılan bir seri iletişimprotokolüdür. İlk olarak otomobillerde kullanılmak üzere geliştirilmesi sebebiyle, CAN’ın en yaygınuygulaması araç elektronik ağlarıdır. Ağdaki tüm elektronik birimler, herhangi bir zamanda iletişimegeçerek, CAN veriyolu üzerinden temel kontrol verilerini birbirleriyle paylaşabilirler. Bu çalışmanın amacı,açık kaynaklı SocketCAN yazılımı kullanarak, CAN ağı için bir tersine mühendislik yaklaşımı sunmaktır.SocketCAN, Linux işletim sistemi üzerinde çalışan ve CAN ağını taklit edebilen bir emülatöruygulamasıdır. Esnek ve kontrol edilebilir olması sebebiyle, tersine mühendislik uygulamaları için elverişlibir ortam sunar. Tersine mühendislik, bir ürün ya da yazılım hakkında bilgi edinilmesine ve sisteminişlevselliğinin ortaya çıkarılmasına olanak tanır. CAN veriyolu üzerinde hangi düğümün öncelikli olarakveriyolunu kullanacağı, CAN tanımlayıcılar (CAN ID) ile belirlenir. Yapılmak istenen tersine mühendislikuygulaması için, sanal bir CAN ortamında, CAN ID değerlerine filtreleme uygulanarak, bir veri akışısağlanmıştır. Belirli bir CAN mesajının ID değerini belirledikten sonra, sistemin çalışması gözlemlenmiştir.Ardından bu mesajın içeriği değiştirilerek, farklı bir işlem yürütmesi sağlanmıştır. Gönderilen paketlerinID değerleri ile, cihazların davranışlarının nasıl etkilendiği gözlemlenebilmiştir. Burada dikkat edilmesigereken nokta, giriş verilerindeki küçük değişikliklerin, büyük sonuçlara yol açabilecek olmasıdır. Gerçekdonanımlarda işlem yapılırken bu durum, hayati sorunlara yol açabilir. Bu çalışmada, otomotiv bileşenleriiçin kullanılan yazılımların taklit edilmesinin mümkün olduğunu gösteren bir sonuca varılmıştır. |