Reverse Engineering Giriş – 2

Merhaba Arkadaşlar ,

Bu kategorinin 2.yazısı ilk yazıda monitor ettiğimiz verilerin anlamlandırılması üzerine olacak.

Bu noktada kolayca yapabileceğimiz ve sıkça kullandığım yöntem Serial port monitorde yer alan ilk okuma verisini bir txt dosyasına kaydetmek. Sonrasında ise orjinal yazılım ile çok küçük değişiklikler yaparak telsizi tekrar programlamak. Ve eltima serial port monitor açık iken telsizi tekrar okumak. Böylece içinde çok küçük bir değişiklik barındıran 2 dosyamız olmuş olacak. Bu dosyaları compare ederek adım adım haberleşme yapısını çözümleyebiliriz.

Telsizimin 1 kanalındaki gönderme frekansı default olarak (rx için) 439.160. (tx frekansı 431.550) Bunu 449.160 olarak tekrar programlayıp. Telsizin içinden okuyorum.

Sol taraftaki görüntü 439.160 , sağ taraftaki görüntü 449.160. Kullandığım araç Notepad++ ve Compare eklentisi.

Veri cihazın içinden okunur iken iki satıra bölünmüş gördüğünüz gibi. İki defa Read Data satırının alt alta gelmesinden bu iki satırın tek data olduğunu anlıyoruz. Aslında bizim toplam verimiz

439.160 için : 57 00 10 08 00 60 91 43 00 50 15 43

449.160 için : 57 00 10 08 00 60 91 44 00 50 15 43

şeklinde olacak.

Verimizi incelediğimiz zaman gözümüze çarpan 43 ve 44 kısımlarını hemen farketmiş olmalısınız. Bu kısım 439 ve 449 olarak değiştirdiğimiz kısmı ifade ediyor.

Bu veriyi anlamdırmayı denediğimiz zaman (Frekansları daha önceden tanıdığım için ekstra başka karşılaştırma yapmaya gerek duymuyorum. Farklı konularda byte bazında işlem yapmak gerekebilir.)

Şimdi bu hexadecimal veriyi(449.160) parçalarına ayıralım.

Nu. Veri
1 57
2 00
3 10
4 08
5 00
6 60
7 91
8 44
9 00
10 50
11 15
12 43

Kalın ile işaretlediğim 8 , 7 ve 6 numaralarda yer alan kısımlar bizim gönderme frekansımızı veriyor.

Yani 449160 (tx frekansımız)

Bazı kısımlar okuyan arkadaşlarımız için netleşmeye başlamıştır diye tahmin ediyorum.

Şimdi alma frekansımızı da bulalım.

12,11,10

Yani 431550 olacak. (rx frekansımız)

Bu data bloğunu telegram olarak isimlendireceğim. (M-Bus ile ilgili çalışırken benzer data yapısına telegram deniyordu literatürde)

Aşağıdaki görüntü bi önceki görüntünün biraz daha geniş kapsamlı hali. Burada dikkat etmenizi istediğim yer

Written Data

52 00 10 08 olarak belirtilen satır.

Frequency_Read_First_Channel

 

Bu satırdan hemen sonra ise bir read işlemi gerçekleşmiş ve bu gerçekleşen read işlemi 1.Kanal verisini veriyor. O halde bu satır muhtemelen 1. Kanalı okuma komutu. (1 Kanal üzerinden konuşuyor olmamızın sebebi telsizin orjinal yazılımında yalnızca 1.kanalı değiştirmiş olmamız. Bu yüzden compare işleminde farklı çıkan her satır 1.kanalı ilgilendiriyor olmalı.) Hemen alttaki görüntüde ise aynı telegramın 20 olarak tekrar gönderildiğini görüyoruz. Kanal verisini de anlamlandırdığımzıda 2.kanal verisi olduğunu görünce

52 00 XX 08 telegramının cihazdan kanal okumak için kullanıldığını XX yerine de kanal numarası geldiğinden emin oluyoruz.

 

Amatör telsizcilik hobisinde frekanslarda alma ve gönderme tonları bulunur. Fakat yukarıda incelediğimiz data içerisinde alma gönderme tonlarını bulamadığımız için 08 ‘in de kanal bilgisini okumak için kullanıldığını , cihazında bu telegrama 57 00 10 08 ile cevap verdiğini görüyoruz.  (Birinci kanal için.) Bu da

57 -> Response From Radio

00 -> Kanal Numarası Rez.

10 -> Birinci Kanal

08-> Alma Gönderme Frekansı olarak anlamlandırabiliyoruz.

 

Genel olarak tüm eltima serial monitor yazılımından aldığımız dökümanı incelediğimizde

52 00 10 08 -> 1.Kanal

52 00 20 08-> 2.Kanal

52 00 30 08-> 3.Kanal

şeklinde devam ettiğini görüyoruz.

Yani çevrim işlemi yapacak olursak 1 kanal 16 2.kanal 32 3.kanal 48 decimal oluyor.

Böylece 52 00 XX 08 -> XX -> 240 ‘a kadar 16 artış ile hexadecimal (Yani ilk 15 Kanal Bu XX sayesinde okunuyor)

52 01 00 08 -> 16 Kanalı okumak için kullanılıyor. (Cihazım 16 kanal özelliğine sahipti. Bu yüzden sadece bu kısma kadar çözümleyebiliyorum.)

Kanal Bilgilerini okumak için gerekli telegramlar sırası ile şu şekilde oluyor ,

 

Ch.Nu. Telegram
1 52 00 10 08
2 52 00 20 08
3 52 00 30 08
4 52 00 40 08
5 52 00 50 08
6 52 00 60 08
7 52 00 70 08
8 52 00 80 08
9 52 00 90 08
10 52 00 a0 08
11 52 00 b0 08
12 52 00 c0 08
13 52 00 d0 08
14 52 00 e0 08
15 52 00 f0 08
16 52 01 00 08

Bir sonraki yazım Ton ve Kanal ayarlarının (TxPower , BusyLock vs) çözümlenmesi ile ilgili olacak.

 

You may also like...

1 Response

  1. 30 Eylül 2018

    […] 52 00 18 08 ile 1.kanal ton verisini okuyoruz. Diğer kanalların ton okuma telegramları için bu linkte yer alan tablodan […]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

5 + 4 =