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]AppDataLocalGoogleChrome

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>AppDataLocalGoogleChromeUser DataDefaultBookmarks

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>AppDataLocalGoogleChromeUser DataDefaultCache

C:Users<username>AppDataLocalGoogleChromeUser DataChromeDefaultDataCache

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>AppDataLocalGoogleChromeUser DataDefaultNetworkCookies

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>AppDataLocalGoogleChromeUser DataDefaultFavicons

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>AppDataLocalGoogleChromeUser DataDefaultWeb 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>AppDataLocalGoogleChromeUser DataDefaultSessions

Thumbnails (Küçük Resimler)

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

C:UsersMAAppDataLocalGoogleChromeUser DataDefaultTop 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>AppDataLocalGoogleChromeUser DataDefaultHistory

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:UsersMAAppDataLocalMicrosoftEdgeUser DataDefault

Lokasyonunda artifackler bulunur.

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

C:UsersMAAppDataLocalMicrosoftEdgeUser DataDefaultHistory

Dosyasında

 

 

 

 

 

 

 

 

 

 

 

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

 

Cookies

C:UsersMAAppDataLocalMicrosoftEdgeUser DataDefaultExtension Cookies-journal

Thumbnails (Küçük Resimler)

C:UsersMAAppDataLocalMicrosoftEdgeUser DataDefaultTop Sites

 

Favicons

C:UsersMAAppDataLocalMicrosoftEdgeUser DataDefaultFavicons

Cache

C:UsersMAAppDataLocalMicrosoftEdgeUser DataDefaultCacheCache_Data

Bookmarks

C:UsersMAAppDataLocalMicrosoftEdgeUser DataDefaultBookmarks

From geçmişi

C:UsersMAAppDataLocalMicrosoftEdgeUser DataDefaultWeb Data

Sessions

C:UsersMAAppDataLocalMicrosoftEdgeUser DataDefaultSessionsTop Sites

 

Thumbnails (Küçük Resimler)

C:UsersMAAppDataLocalMicrosoftEdgeUser DataDefault

Profile Path: C:UsersXXAppDataLocalPackagesMicrosoft.MicrosoftEdge_XXXAC

History, Cookies and Downloads:

[ESE Database]

C:UsersXXAppDataLocalMicrosoftWindowsWebCacheWebCacheV01.dat

Settings, Bookmarks, and Reading List: C:UsersXXAppDataLocalPackagesMicrosoft.MicrosoftEdge_XXXACMicrosoftEdgeUserDefaultDataStoreDatanouser1XXXDBStorespartan.edb

Cache: C:UsersXXXAppDataLocalPackagesMicrosoft.MicrosoftEdge_XXXAC#!XXXMicrosoftEdgeCache

Last active sessions: C:UsersXXAppDataLocalPackagesMicrosoft.MicrosoftEdge_XXXACMicrosoftEdgeUserDefaultRecoveryActive

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>AppDataLocalGoogleChromeUser DataDefaultHistory

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>AppDataRoamingMozillaFirefoxProfiles<profile folder>

C:Users<username>AppDataLocalMozillaFirefoxProfiles<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