TikTok: Loglar, Loglar, Loglar //Çeviri

Bu konuyu okuyanlar

defacerGLD

Profesör
Katılım
16 Ocak 2020
Mesajlar
3,339
Reaksiyon puanı
3,074
Puanları
113
ceviri yapılmıştır altta link var bir teşekkür ü çok görmeyin



TikTok: Loglar, Loglar, Loglar





2020 yılındayız. Amerika başbakanı video paylaşım sosyal medya uygulaması TikTok'u yasaklamak üzere. Çünkü Amerikan ulusal güvenliği için risk teşkil ediyor. Aynı zamanda Microsoft, TikTok'un Amerika'da satın alınmasıyla ilgili tartışmalar başlattı. TikTok son zamanlarda medyada çok yer aldı. Ama ne kadar doğru ? Bunlar makalemde cevap vereceğim konular. Her makale bir özel soruya cevap verir. Gerçekleri konuşmanın zamanı geldi.


Sorumluluk Reddi


• TikTok, kullanıcılarına milyonlarca satır uzun kodlar sayesinde bir çok özellik sunar. Bu nedenle, tek bir makale bu kadar geniş ve belirsiz bir soruyu kapsayamaz "TikTok Amerikan ulusal güvenliğini tehlikeye atar mı ?". Bu yüzden, meseleleri birçok makalede özel konulara odaklanarak anlatacağım.

• Benim adım Baptiste Robert. Fransız bir güvenlik araştırma uzmanıyım. Senelerdir mobil uygulamaların analizini yapıyorum. Halka açık olan çalışma alanımı bu linkten fs0c131y.com/press, ve komik twitlerimi de buradan twitter.com/fs0c131y bulabilirsiniz.

• Benim buradaki hedefim tamamen şeffaf olmak. Her şeyi paylaşacağım, senin burada yazdığım her şeyi 2 kez kontrol etmen gerek.

• Teknik detayları atlamak istiyorsanız, makalenin sonunda "Sonuç" mevcut.


I) Giriş


2 Ağustos 2020'de TikTok analizine başladım ve bunun hakkında twit attım.





Twit'ten birkaç dakika sonra takipçilerimden biri yorum yaptı.





Özel mesajlarla ilgili tartıştık ve bana açıklama yaptı. O, TikTok tarafından gelen ağ isteklerini dinledi ve 2 dakikada bir istek geldiğini farketti. Fakat, içerikler şifrelenmişti ve kırılmıyordu.


Yolculuğumuz için güzel bir başlangıç gibi;


• TikTok düzenli olarak ne gönderir ?

• Ne zaman gönderir ?

• Nereye gönderilir ?

• İçerik nasıl şifrelenmiş ?


II) TikTok düzenli olarak ne gönderir ?


Bir şeyi ayıklarken, İşin %90 ı tekrar üretebilmektir. İlk önce bu sorunu yeniden üretmeyi denedim.


1. Fransa PlayStore'sinden TikTok'un son versiyonunu indirdim.

2. Telefonumun yaptığı ağ isteklerini kesmek için Burp Suite'yi kurdum.

3. SSL pin uygulamasını bypasslaması için Frida scriptini kurdum ve TikTok uygulamasını başlattım.







Bingo ! TikTok 5 dakikada şifrelenmiş içerikli bir ağ isteği gönderiyor.


II.1) The /service/2/app_log/ endpoint


Hadi isteklerin yapıldığı bitiş noktası /service/2/app_log/ 'na odaklanalım.







Parametreler


Şifrelenmiş içerikleri incelemeden önce, Zaten bu isteğin çok büyük miktarda parametre içerdiğini görebiliyoruz.







İsimlerin çoğu kendilerine konuşur. Burada 3 çeşit parametre görüyorum.


• Cihaz hakkında bilgi: device_id, device_type, device_brand, os_api, os_version, …

• Uygulama hakkında bilgi: app_type, app_language, version_code, version_name, build_number, …

• Kullanıcı hakkında bilgi: current_region, locale, region


Bu kulağa şaşırtıcı gelse de, aslında değil. Bu oldukça standarttır. Kullandığınız çoğu uygulamanın aynı veri-geri çekme işlemlerine sahip olduğundan emin olabilirsiniz.


Şifrelenmiş İçerik


Şifrelenmiş içeriğe bakma zamanı geldi ! Burası eğlenceli kısım !. Uygulamayı kaynak kodlarına ayırdım ve "app_log" adında bir arama yaptım. Hemen sınıfta sendEncryptLog adında bir yöntem buldum. com.ss.android.common.applog.NetUtil







Kodu okumadınız mı ? Sıkıntı yok. Endişelenmeyin. Yöntemin imzasına bakın. 4 parametre almış. arg4 url, arg5 ise isteğin içeriği (şifrelenmemiş). Ve gerisini şu anda umursamıyoruz.


Şimdi, bu yöntemi çağırmak ve şifrelemeden önce isteğin içeriğini görmek için Frida'yı kullanabilirim.







TTencryptedLog yöntemini kullandım ve şu çıktıyı aldım;







JSON dosyasının içeriğine geçersek, standart bir veri olduğunu görebiliriz.


• Eskisi gibi, cihaz hakkında bir sürü bilgi

• Uygulamanın en son ne zaman güncellendiği

• Giriş etkinlikleri. Etkinliklerin içerisine daha yakından bakmam lazım. Söyleyebileceğim kadarıyla, standart bir analitik çözüm.


III) Ne zaman gönderilir ?


sendEncryptLog yöntemini çağırınca verilen yanıt bu sorunun cevabıyla aynıdır. JEB'le X'e basarken, tüm çapraz referansları kolayca alabilirsiniz.







4 adet yöntem görebiliyoruz:


• doUpdateConfig

• sendTimelyEvent

• sendLog

deviceRegister paketinde bilinmeyen bir metod


sendEncryptLog yöntemi farklı bir JSON tipi göndermek için kullanılır. Bu yüzden, TikTok'un verilerini temizledim ve her şeye kaşımakla başladım. Aşağıdaki JSON'ları yakalamayı başardım.

Cihaz kaydı yapıldığındaki isteğin içeriği







TikTok log ayarlarını değiştirdiğinde ki isteğin içeriği







Tekrar, İsimlerin çoğu kendilerine konuşur. Bu JSON'ların içerisinde herhangi bir şüpheli veya özel bir şey göremiyorum.


IV) Nereye gönderir ?


Önceki ekran görüntülerinde de gördüğünüz gibi, istekler log16-normal-c-useast1a.tiktokv.com adresine gönderilir. Bunu görmek komikti. Ben Avrupa'da oturuyorum ve benim loglarım Amerika'nın doğusuna gönderiliyor. TikTok dünya çapında kullanılan bir uygulamadır. Muhtemelen birçok log yükleme noktaları bulunuyor.

Kodları derinlemesine araştırdıktan sonra, URLConfig sınıfını bulabiliriz.







Burada 7 tane URL konfigürasyonu var. Çin, Amerika, AmerikaHTTP, SIG AWS, SIG ALIYUN (Alicloud Singapur), Musically, Musically HTTP.

Tekrar, Tuhaf görünüyor. Hiç Avrupa URL konfigürasyonu yok ama sıkıntı yok.


V) İçerikler nasıl şifrelenmiş ?


sendEncryptLog yöntemini hatırladınız mı ?







v5 = b.a(v5, v5.length); satırında içerikler şifrelenmiş.







Eğlencenin olduğu yer EncryptorUtil







Bingo! Şifreleme işlemi yerel kitaplıkta yapılmış. TikTok tarafından kullanılan tüm yerel kütüphaneler telefonunuzdaki /data/data/com.zhiliaoapp.musically/app_librarian/<version> klasöründe bulunur. Şimdilik duruyorum. TikTok'un verileri gerçekten nasıl şifrelediğine gelince, ona özel bir makale yazacağım. Ve 12 de başlayacağım. Çok açım.


Sonuç


Bu makalede, TikTok'un düzenli olarak sunuculara ne gönderdiğini anlamaya çalıştım. İsteklerin şifrelerini kırdım ve onları analiz ettim. Gördüğümüz kadarıyla, bu durumda, TikTok'ta şüpheli ve veri çalma amaçlı davranışlar yok. TikTok'da kullanıcının cihazı hakkında bilgi almak konusunda dünyadaki diğer Facebook, Snapchat, Instagram vb.. uygulamaların aldığı şekilde alıyor
Mesaj otomatik birleştirildi:

Sabit alacak içeriklerden olabilir
 

Özgür Ç..

Dekan
Katılım
18 Eyl 2018
Mesajlar
6,151
Reaksiyon puanı
6,523
Puanları
113
Başlığı okuyup el alta indim burda tiktok'un durumu merak eden var mı harbiden varsa burda ne işi var veya?
 
S

SDN Anonim 645270

SDN Okuru
Teşekkürler, okulda ders olarak okutacağız.
 
Üst