Web Browser Forensics

25 Ağustos 2022 Perşembe

Web Browser Forensics



 


Web Browser Forensics

Web Browser yani internet tarayıcı uygulamaları, işletim sistemi kurulduğu anda browser kurulumunu da gerçekleştiririz. Bilgisayar kullanan her kullanıcının olmazsa olmazlarından biridir yani genel anlamda internette gezinmek, işletim sistemine ait dosyaları görüntülemek için Web Browserları kullanılmaktadır. Hepimizin kullanmış olduğu bu browser kendi içerisinde arama sorguları, kullanıcı adı, parola, form verileri, e-posta, kredi kartı bilgileri ve daha nice çok veriyi içinde kaydettiğini ayrıca indirilen medyalar, bookmark (yer imleri) ve tarayıcı geçmişi, kullanıcının sörf alışkanlığını gibi bilgileri de barındırdığını görmüşüzdür. Tabi bu özellikleri sayesinde kullanıcılara büyük kolaylıklar sağlar. Forensics bakış açısı ile bu tür bilgilere bakarsak bizlerinde işini bir nebze olsa kolaylaştırdığını söyleyebiliriz. Güvenliği ihlal edilmiş bir sistemin ana nedenini bulmak için analizi gerçekleştirdiğimiz artifackler bulunur bu artifacklerden biride browser artikfakleridir.

Browser forensics teknikleri ile bir saldırgan tarafından browser vasıtasıyla yetkisiz erişimin temel nedenini (root casue) belirleme süreci ve tekniğidir, analizin çoğu bölümü yetkisiz giriş etkinliğini ilişkilendirmek ve bir saldırının kaynağını belirlemektir. Browser forensics sayesinde indirilmiş dosya silinmiş olsa bile nereden indirildiği, kayıtlı parola bilgileri, web geçmişi gibi kritik bilgileri elde edebiliriz. İçerisinde bu kadar bilgiyi muhafaza eden browserlar analizi göz ardı edilemeyecek kadar önemlidir. Güvenliği ihlal edilen bir Windows sisteme sahip makine üzerinde analiz yapılırken olayın root casue bulunması açısından, browserlarda çok değerli bilgiler edilebiliriz. Olay öncesi sisteme bulaşan malware’ın nereden geldi mail aracılığıyla mı? browserdan kullanıcı kendisi mi indirdi gibi sorulara web browser forensics tekniklerini uygulayarak bulabiliriz.  Browser artifackleri sayesinde oluşturulan timeline yardımcı olabilecek çok fazla bilgiyi elde edebiliriz.

Genellikle malware kaynağı browserlarda bulunan artifcakler sayesinde bulunur. Malware analiz edilmesi kadar browser artifacklerinin analizi de bir o kadar değerlidir.  Kullanıcı bir phishing url adresine mi tıkladı tıkladıysa neye tıkladı ya da zararlı eklenen bir eklenti yüzünden mi güvenliği ihlal edildi gibi önemli bilgileri elde edebiliriz.  

Bu blog yazımda bu browser artifacklerinin toplanması ve nasıl analiz edildiğinden bahsedeceğim.

Browser Forensics Analiz sayesinde;

·       Browserlar içerisinde gezinme geçmişi (history kaydı), yer imleçleri (booksmark), indirilenler (downloands), önbellek verileri (cache), çerez bilgileri (cookies) gibi bilgileri elde edebiliriz.

·       History kayıtları sayesinde kullanıcının hangi web adreslerine eriştiğini tespit edebiliriz.

·       Cache, (önbellek), web sitelerinde gezinirken tarayıcı birçok nedenden dolayı her türlü önbellek verisini (resimler, javascrpit dosyaları vb.) oluşturur. Web sitelerinin yükleme süresini hızlandırmak için bu cache bilgileri kullanılır.

·       Form Data, formlar içine yazılan her şey genellikle tarayıcı tarafından depolanır, bu nedenle kullanıcı bir sonraki sefer formunu içine bir şey girdiğinde tarayıcı önceden girilmiş verileri önerebilir.

Kullanılan platforma bağlı olarak Chrome, Firefox, Safari, IE, Opera gibi bir çok web browser mevcuttur. Aşağıda kullanım yüzdelikleri verilmiştir.

 

Figure 1https://en.wikipedia.org/wiki/Usage_share_of_web_browsers

 

Browser Artifack Analizi:

Bu blog yazımda popüler olarak kullanılan Chrome, FireFox, Edge internet tarayıcılarını artifacklerini analiz edeceğiz, Bildiğimiz üzere çok çeşitli web browser sürümleri var hayliyle hepsinin farklı artifack lokasyonları bulunur. Artifackleri analiz etmek için çeşitli toollar kullanabiliriz. Benim popüler olarak kullanmış olduğum toollar, EseDatabaseView, Browser History Viewer,  DB Browser, Hindsight, araçlarını kullanmaktayım. Sizlerde ücretsiz bir şekilde elde edip kullanabilirsiniz. 

 

Chrome






Google tarafından geliştirilen ücretsiz bir web tarayıcısıdır. Eylül 2008'de Microsoft Windows sürümü yayımlanmış; daha sonra Linux, macOS, iOS ve Android sürümleri de geliştirilmiştir. Google, Chrome'un kaynak kodlarının büyük kısmını Chromium adlı açık kaynak projesi kapsamında paylaşır (https://tr.wikipedia.org/wiki/Google_Chrome)

 

 

Chrome artifacklerin genelde bulunduğu konum;

Linux:

/home/$USER/.config/google-chrome/

/home/$USER/.config/chromium/

Windows:

C:\Users\[USERNAME]\AppData\Local\Google\Chrome\

MacOS:

_/Users/$USER/Library/Application/ Support/Google/Chrome/

 

Bu yazımda Windows bir sistem üzerinde genel Chrome artifackleri analiz edilmesinden bahsedeceğim. (Genel mantalite diğer işletim sistemlerinde aynıdır.)

Bookmarks

Bookmarks yani yer imleleri olarak oluşturduğumuz sık kullanılan web adreslerini analiz etmek için Bookmarks dosyasına bakabiliriz. Chrome Bookmarks kayıtlarını Json dosya formatında saklar

C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default\Bookmarks

konumunda bulunur.


Bookmarks dosyasını parse etmek için notpead veya Sublime Text kullanılabilir.


Görüldüğü içerisini açıp bookmarks kısmını analiz edebiliriz.

 

Cache

Cache bilgileri geçmişte gidilen sitelere, aynı siteler sık ​​ziyaret edildiğinde aynı görüntülerin ve içeriğin tekrar tekrar indirilmesini önlemek için kullanılırdı. Chrome, önbellek içeriğini ve bilgilerini üç tür dosyada depolar: tümü önbellek klasörlerinin altındaki dizin, data_X ve f_XXXXXX dosyaları. Data_X dosyaları, veriler küçükse önbelleğe alınmış içeriği depolar, ancak daha büyük bir resim veya başka bir içerikse f_XXXXXX'e aktarılır

C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default\Cache

C:\Users\<username>\AppData\Local\Google\Chrome\User Data\ChromeDefaultData\Cache

Konumunda bulunur.


Bu dosyaları teker teker analiz etmek zor olabilir. Bu klasörün tümünü analiz etmemiz gerekmektedir. Bu dosyaları parse etmek için ise Browser History Viwer aracını kullanabiliriz.




Görüldüğü gibi parse etme işlemlerini gerçekleştirebiliyoruz.

 

Cookies

C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default\Network\Cookies


Cookies dosyasını parse etmek için DB Browser for SQLite aracını kullanabiliriz.


Favicons

Chrome Favicons SQLite Veritabanında favicon_bitmaps ve icon_mapping tablolarında saklanır. Favicons [SQLite Database] Favicons sayesinde geçmiş silinse bile ikonlar sayesinden silinen geçmiş tespit edilebilir.

C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default\Favicons

Favicons dosyasını parse etmek için DB Browser for SQLite aracını kullanabiliriz



From geçmişi



Chrome Form Geçmişi, otomatik doldurma (autofill) web verileri SQLite veritabanında saklar.

C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default\Web Data

WebData dosyasını parse etmek için DB Browser for SQLite aracını kullanabiliriz


Logins

Chrome girişleri, SQLite veritabanı dosyası olan “Web Data” dosyası içerisinde login tablosundata tutar.  

Oturum verileri (Session Data)

Chrome oturum verilerini, “Session” klasöründe tutar.

C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default\Sessions


Thumbnails (Küçük Resimler)

Chrome Thumbnails bilgilerini “Top Sites” dosyasında tutar.

C:\Users\MA\AppData\Local\Google\Chrome\User Data\Default\Top Sites


Top Sites dosyasını parse etmek için DB Browser for SQLite aracını kullanabiliriz

 



History

History dosyası bir veritabanı dosyasıdır. Ve SQLLite kullanılarak incelenebilir. Veritabanında mevcutta bulunan tablolar; Downloads, presentation, urls, keyword_search_terms, segment_usage, visits, meta, segments, Cache

Şeklindedir.

C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default\History


Link:User Clied on a link

Type: The url was written

Auto Bookmark

Start page

From submit

Downloands: Chrome indirilen geçmişleri SQLite veritabanında “History” dosyasındak, downloand table içeisinde tutmaktadır.

Searches: Chrome aramaları “History” SQLite veritabanı dosyasındaki “Keyword_serach_terms” tablosunda tutar. İlişkili url bilgilerinide görebiliriz.

Website Visits (Web adres ziyareti): Chrome Web sitesi ziyaretlerini “History” SQLite veritabanı dosyasındaki “visits” tablolarında tutar. İlişkili url bilgilerini “url” tablosunda tutar.

URLS – urls tablosu, Chrome için temel tarama geçmişini içerir. Bu, ziyaret edilen tüm URL'ler için tek bir örnek, son ziyaret edilen zaman için bir zaman damgası ve ziyaret edilenlerin sayısı için bir sayaç içerecektir.

Visit- Visit tablosu: Chromium kullanan taraycılara özeldir. Sayfa her ziyaret edildiğinde aynı URL için birden fazla kayıt içermektedir. Kullanıcı bir url adresine birden fazla gidebilir her gittiğinde ise ayrı bir zaman damgası oluşturur.  Burada zorluk olarak url listelenmeketeidr. Yalnızca URL tablosunda eşleşen url kaydını gösterir. Bu veriler manuel analiz ediliyorsa iki tablonun birleştirilmesi gerektiği ve silinen kayıtları oyan herhangi bir aracın eşleşen kaydı bir tabloda bulması gerektiği veya kısmi sonuçlara anlamına gelir.

Visit_Source: Belirli bir url’in kaynağı da dahil olmak üzere tüm geçmişi, yerel olarak mı taranmış, başka bir yerden senkronize edilmiş veya başka bir tarayıcda içe mi aktarılmış diye tespit edilmesine imkan tanır.



Yukarda Google Chrome’un artifaklerini ve lokasyonlarını anlattım bu kadar locasyon ve teker teker parse etmekle uğraşmak istemiyorsak Hindsight aracını kullanabiliriz.


 



Aracımızı çift tıklayıp çalıştırıyoruz. Görüldüğü gibi karşımıza cmd ekranı çıkmakta ve localhost:8080 listenig modunda olduğunu belirtmekte. Herhangi bir internet tarayıcısını kullanarak http://localhost:8080/ adresine gidiyoruz.


Adresine gittiğimizde karşımıza bu şekilde bir sayfa çıkmaktadır.


Şuan bu tool ile chrome ve Brave tarayıcılarını parse edebiliyoruz.

Chrome artifacklerini path yolunu Profile path kısmına cache pathinide cach dosyasınının bulunduğu path’i veriyoruz Run diyerek aracımızı çalıştırıyoruz.


 



 Parse etme işlemleri tamamlandıktan sonar karşıma bu şekilde bir ekran geliyor.



Burada görüldüğü gibi bize neleri parse ettiği gibi mahiyetinde özet bilgiler sunmakta asıl artifackleri ise Save XLSX diyerek bir excel dosyasında inceleyebiliriz ya da farklı formatlardaki dosya tiplerinde çıktı larak analiaz edebiliriz benim favori olarak kullanmış olduğum excel vazgeçilmez :)


Excel dosyamızı açtığımız zaman alt tarafta farklı sayfaları da görebilmekteyiz. Buradaki bilgileri alarak analizimizi gerçekleştirebiliriz.

 

Microsoft Edge


Microsoft Edge; Windows 10, Windows 11, Windows 10 Mobile ve Xbox One'da kullanılmak üzere Microsoft tarafından geliştirilen web tarayıcısı. Tüm cihaz türlerinde Internet Explorer'ın yerini alarak varsayılan web tarayıcısı olmak üzere tasarlandı. (https://tr.wikipedia.org/wiki/Microsoft_Edge)

Artifackleri analiz etmek için çeşitli toollar kullanabiliriz. Benim popüler olarak kullanmış olduğum toollar, EseDatabaseView, Browser History Viewer,  DB Browser, Hindsight, araçlarını kullanmaktayım

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default

Lokasyonunda artifackler bulunur.

Yukarda Chrome’da detaylı açıklanan tüm artifakler bu lokasyonda bulunur.

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default\History

Dosyasında












Bilgileri bulunur. Yukarda chrome da bu sekmeler detaylı bir şekilde anlatılmıştır.

 

Cookies

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default\Extension Cookies-journal

Thumbnails (Küçük Resimler)

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default\Top Sites

 

Favicons

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default\Favicons

Cache

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default\Cache\Cache_Data

Bookmarks

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default\Bookmarks

From geçmişi

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default\Web Data

Sessions

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default\Sessions\Top Sites

 

Thumbnails (Küçük Resimler)

C:\Users\MA\AppData\Local\Microsoft\Edge\User Data\Default

Profile Path: C:\Users\XX\AppData\Local\Packages\Microsoft.MicrosoftEdge_XXX\AC

History, Cookies and Downloads:

[ESE Database]

C:\Users\XX\AppData\Local\Microsoft\Windows\WebCache\WebCacheV01.dat

Settings, Bookmarks, and Reading List: C:\Users\XX\AppData\Local\Packages\Microsoft.MicrosoftEdge_XXX\AC\MicrosoftEdge\User\Default\DataStore\Data\nouser1\XXX\DBStore\spartan.edb

Cache: C:\Users\XXX\AppData\Local\Packages\Microsoft.MicrosoftEdge_XXX\AC#!XXX\MicrosoftEdge\Cache

Last active sessions: C:\Users\XX\AppData\Local\Packages\Microsoft.MicrosoftEdge_XXX\AC\MicrosoftEdge\User\Default\Recovery\Active

History

History dosyası bir veritabanı dosyasıdır. Ve SQLLite kullanılarak incelenebilir. Veritabanında mevcutta bulunan tablolar; Downloads, presentation, urls, keyword_search_terms, segment_usage, visits, meta, segments, Cache

Şeklindedir.

C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default\History

Link:User Clied on a link

Type: The url was written

Auto Bookmark

Start page

From submit

Downloands: Chrome indirilen geçmişleri SQLite veritabanında “History” dosyasındaki downloand table içerisinde tutmaktadır.

Searches: Chrome aramaları “History” SQLite veritabanı dosyasındaki “Keyword_serach_terms” tablosunda tutar. İlişkili url bilgilerini de görebiliriz.

Website Visits (Web adres ziyareti): Chrome Web sitesi ziyaretlerini “History” SQLite veritabanı dosyasındaki “visits” tablolarında tutar. İlişkili url bilgilerini “url” tablosunda tutar.

URLS – urls tablosu, Chrome için temel tarama geçmişini içerir. Bu, ziyaret edilen tüm URL'ler için tek bir örnek, son ziyaret edilen zaman için bir zaman damgası ve ziyaret edilenlerin sayısı için bir sayaç içerecektir.

Visit- Visit tablosu: Chromium kullanan tarayıcılara özeldir. Sayfa her ziyaret edildiğinde aynı URL için birden fazla kayıt içermektedir. Kullanıcı bir url adresine birden fazla gidebilir her gittiğinde ise ayrı bir zaman damgası oluşturur.  Burada zorluk olarak url listelenmektedir. Yalnızca URL tablosunda eşleşen url kaydını gösterir. Bu veriler manuel analiz ediliyorsa iki tablonun birleştirilmesi gerektiği ve silinen kayıtları oyan herhangi bir aracın eşleşen kaydı bir tabloda bulması gerektiği veya kısmi sonuçlara anlamına gelir.

Visit_Source: Belirli bir url’in kaynağı da dahil olmak üzere tüm geçmişi, yerel olarak mı taranmış, başka bir yerden senkronize edilmiş veya başka bir tarayıcı da içe mi aktarılmış diye tespit edilmesine imkan tanır.

 

Mozilla FireFox








Artifackleri analiz etmek için çeşitli toollar kullanabiliriz. Benim popüler olarak kullanmış olduğum toollar, EseDatabaseView, Browser History Viewer,  DB Browser, Hindsight, araçlarını kullanmaktayım

Windows Vista, 7, 8, 10

C:\Users\<username>\AppData\Roaming\Mozilla\Firefox\Profiles\<profile folder>

C:\Users\<username>\AppData\Local\Mozilla\Firefox\Profiles\<profile folder>\cache2

Mac OS X

/Users/<username>/Library/Application Support/Firefox/Profiles/<profile folder>

/Users/<username>/Library/Caches/Firefox/Profiles/<profile folder>/cache2

Linux/Unix

/home/<username>/.mozilla/firefox/<profile folder>

/home/<username>/.cache/mozilla/firefox/<profile folder>/cache2

 

 

Windows sistem üzerinde analiz gerçekleştireceğim.

Belirtilen path üzerinde dosyalar analiz edilebilir.

 

places.sqlite:















History (moz__places), bookmarks (moz_bookmarks), ve downloads (moz__annos) bilgilerini görebiliriz. Bu dosya analizi sayesinde, User followed a link 2: User wrote the URL, User used a favorite, Loaded from Iframe, Accessed via HTTP redirect 301, Accessed via HTTP redirect 302, Downloaded file bilgilerini görebiliriz.

formhistory.sqlite : Web form data (like emails)

handlers.json : Protocol handlers (like, which app is going to handle mailto:// protocol)

addons.json and _extensions.sqlite _ : indirilen addons and extensions bilgileri

cookies.sqlite : Contains cookies. MZCookiesView can be used in Windows to inspect this file.

favicons.sqlite : Favicons

prefs.js : Settings and Preferences

downloads.sqlite : Old downloads database (now it's inside places.sqlite)

thumbnails/ : Thumbnails

logins.json : Encrypted usernames and passwords

 

Safari







/Users/$User/Library/Safari lokasyonunda artifackler bulunur.

History.db: History_visits ve history_items tabloları, geçmiş ve zaman damgaları hakkında bilgiler içerir.

Downloads.plist: İndirilen dosyalar hakkındaki bilgileri içerir.

Book-marks.plist

TopSites.plist: Kullanıcının göz attığı en çok ziyaret edilen web sitelerinin listesi.

Extensions.plist: Safari tarayıcı uzantılarının eski tarz bir listesini almak için.

 

 

Opera







/Users/$USER/Library/Application Support/com.operasoftware.Opera

Opera, tarayıcı geçmişini ve indirme verilerini Google Chrome ile tam olarak aynı biçimde saklar. Bu, tablo adları kadar dosya adları için de geçerlidir.

 

İncognito (Gizli) sekme Web Tarayıcı Analizi:


İncognito özelliği olan normal sekmelerin geçmişi diske yazmaz. Bu, kullanıcı gizli modu kullanırsa, tarama kanıtının tek kaynağının bellekte veya uzantıya göre sayfa dosyası veya hazırda bekleme dosyalarında bulunacağı anlamına gelir. Verileri canlı bir sistemden alabildiğiniz sürece, gizli geçmişi bellekten tespit edilebilir. Bellek geçicidir ve sistem kapatıldığında veriler kaybolacaktır.






 

 

Kaynak:

https://resources.infosecinstitute.com/topic/browser-forensics-google-chrome/

https://www.sans.org/blog/google-chrome-forensics/

https://forensafe.com/blogs/googlechrome.html

https://forensafe.com/blogs/microsoftedge.html

https://archerhall.com/knowledge-base/internet-browser-forensics

https://www.security-hive.com/post/browser-forensics-useful-forensic-data