(paper) Belati: The Traditional Swiss Army Knife for OSINT

21
Belati: The Traditional Swiss Army Knife for OSINT Oleh Aan ‘Petruknisme’ Wahyu cacaddv [at] gmail.com ABSTRAK OSINT(Open Source Intelligence) merupakan salah satu bidang intelijensi yang mengandalkan informasi terbuka/publik sebagai sumber utama dalam pengumpulan, pemanfaatan, dan penyebarluasan untuk kebutuhan intelijensi secara khusus. OSINT bermula dan tercipta pada tahun 1941 oleh Foreign Broadcast Information Service (FBIS) yang digunakan untuk melakukan eksploitasi ketika terjadi World War II dan berkembang pesat setelah resmi terbentuk oleh Director of Central Intelligence Directive pada tahun 1994 [1][2] Kata kunci: OSINT, Intelligence, Document Harvesting, Email Harvesting, Belati, FOCA 1. Pendahuluan Di era modern sekarang, setiap orang dengan sangat mudah melakukan pertukaran informasi, baik itu secara pribadi ataupun secara umum. Informasi tersebut bisa didapatkan dari berbagai platform seperti media sosial, website ataupun platform lain yang menyediakan informasi publik terhadap sesuatu. OSINT berperan dalam proses pengumpulan dan pemanfaatan informasi publik yang tersedia secara sengaja atau tidak disengaja. Ketertarikan saya dalam memperdalam OSINT berawal dari sebuah artikel [3] yang menjelaskan tentang OSINT dari sudut pandang berbeda, kebetulan saat itu membahas OSINT dari sudut pandang seorang pelaku kriminal dalam pemanfaatan sebuah informasi publik dari calon korban. Setelah membaca berbagai sumber bacaan tentang OSINT dan kemudian mencoba berbagai tools OSINT yang tersedia di GitHub, saya tertarik untuk membuat project tersendiri yang mungkin bisa lebih baik dari beberapa tools yang saya temukan dan bertujuan sebagai bahan pembelajaran. Terciptalah sebuah project bernama Belati yang sedang saya garap saat ini, project ini terinspirasi dari beberapa project yang sudah berjalan diantaranya adalah Foca [4] dan Datasploit [5] 2. Tujuan Penulisan Memberikan penjelasan tentang OSINT dan memperkenalkan Belati sebagai salah satu tool yang bisa digunakan dalam proses OSINT. 3. Landasan Teori 3.1 OSINT 3.1.1 Definisi OSINT 1

Transcript of (paper) Belati: The Traditional Swiss Army Knife for OSINT

Page 1: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Belati: The Traditional Swiss Army Knife for OSINT

Oleh Aan ‘Petruknisme’ Wahyucacaddv [at] gmail.com

ABSTRAK

OSINT(Open Source Intelligence) merupakan salah satu bidang intelijensi yang mengandalkaninformasi terbuka/publik sebagai sumber utama dalam pengumpulan, pemanfaatan, danpenyebarluasan untuk kebutuhan intelijensi secara khusus. OSINT bermula dan tercipta pada tahun1941 oleh Foreign Broadcast Information Service (FBIS) yang digunakan untuk melakukan eksploitasiketika terjadi World War II dan berkembang pesat setelah resmi terbentuk oleh Director of CentralIntelligence Directive pada tahun 1994[1][2]

Kata kunci: OSINT, Intelligence, Document Harvesting, Email Harvesting, Belati, FOCA

1. Pendahuluan

Di era modern sekarang, setiap orang dengan sangat mudah melakukan pertukaran informasi,baik itu secara pribadi ataupun secara umum. Informasi tersebut bisa didapatkan dari berbagai platformseperti media sosial, website ataupun platform lain yang menyediakan informasi publik terhadapsesuatu. OSINT berperan dalam proses pengumpulan dan pemanfaatan informasi publik yang tersediasecara sengaja atau tidak disengaja.

Ketertarikan saya dalam memperdalam OSINT berawal dari sebuah artikel[3] yang menjelaskantentang OSINT dari sudut pandang berbeda, kebetulan saat itu membahas OSINT dari sudut pandangseorang pelaku kriminal dalam pemanfaatan sebuah informasi publik dari calon korban. Setelahmembaca berbagai sumber bacaan tentang OSINT dan kemudian mencoba berbagai tools OSINT yangtersedia di GitHub, saya tertarik untuk membuat project tersendiri yang mungkin bisa lebih baik daribeberapa tools yang saya temukan dan bertujuan sebagai bahan pembelajaran. Terciptalah sebuahproject bernama Belati yang sedang saya garap saat ini, project ini terinspirasi dari beberapa projectyang sudah berjalan diantaranya adalah Foca[4] dan Datasploit[5]

2. Tujuan Penulisan

Memberikan penjelasan tentang OSINT dan memperkenalkan Belati sebagai salah satu toolyang bisa digunakan dalam proses OSINT.

3. Landasan Teori

3.1 OSINT

3.1.1 Definisi OSINT

1

Page 2: (paper) Belati: The Traditional Swiss Army Knife for OSINT

OSINT(Open Source Intelligence) merupakan salah satu bidang intelijensi yang mengandalkaninformasi terbuka/publik sebagai sumber utama dalam pengumpulan, pemanfaatan, danpenyebarluasan untuk kebutuhan intelijensi secara khusus. Informasi yang didapatkan melalui prosestersebut meliputi laporan teknikal dan ekonomi, dokumen negara resmi atau tidak resmi, jurnal ilmiah,dokumen politik, militer ataupun sipil.

3.1.2 Sekilas Sejarah OSINT

OSINT bermula dan tercipta pada tahun 1941 oleh Foreign Broadcast Information Service(FBIS) yang digunakan untuk melakukan eksploitasi ketika terjadi World War II dan berkembang pesatsetelah resmi terbentuk oleh Director of Central Intelligence Directive pada tahun 1994.

3.1.3 Kelebihan dan Kekurangan OSINT

Seperti yang sudah dijelaskan sebelumnya, OSINT itu sendiri mempunyai kelebihan dankekurangan dalam pengumpulan data.

A. Kelebihan

• Tidak melakukan compromise terhadap sumber yang bersifat sensitif• Aktifitas pengumpulan data bersifat pasif• Cakupan data yang luas• Mudah untuk disebarluaskan(sumber tidak terklarifikasi)• Informasi cenderung lebih murah(bahkan gratis)• Pengumpulan data yang lebih aman

B. Kekurangan

• Informasi yang diinginkan mungkin tidak bersifat publik• Informasi yang didapatkan perlu untuk diverifikasi• Terlalu banyak informasi yang didapatkan

Keuntungan utama dari OSINT adalah melakukan pengumpulan informasi intelijen secara pasifyang di mana tidak memerlukan interaksi langsung terhadap target dan berdampak pada risiko yangditimbulkan pun relatif sangat kecil sehingga tidak menimbulkan perhatian(baca: attention) terhadaptarget selama proses pengumpulan informasi berlangsung. Salah satu keuntungan OSINT lainnyaadalah ketersedian informasi publik yang didapatkan cenderung lebih mudah untuk dibagikan antarinstansi dibandingkan dengan informasi rahasia. Teringat sebuah kutipan tentang OSINT sepertiberikut:

Compared with the more traditional or esoteric intelligence techniques,it is often faster, more economical, more prolific, or more authoritative.

Herman L. Croom

2

Page 3: (paper) Belati: The Traditional Swiss Army Knife for OSINT

3.1.4 Bidang OSINT

OSINT pun dipergunakan dalam beberapa bidang dalam proses pengumpulan data, diantaranya:

1. Pemerintahan

OSINT pun sudah diterapkan dalam ruang lingkup pemerintahan dalam beberapa negara denganaktifitas seperti ‘media monitoring’, ‘media analysis’, ‘survey’ dan beberapa hal lain untuk keperluanpengumpulan data, yang di mana hal tersebut masih terkategori sebagai open source.

2. Komunitas Intelligence

Dari sejak terciptanya Foreign Broadcast Information Service (FBIS) sampai sekarang, pastinyasudah banyak komunitas intelligence yang terbentuk dari seluruh penjuru dunia untuk OSINT ini. Salahsatu yang saya ikuti adalah OpenOSINT, komunitas tersebut terdiri dari berbagai macam latar belakangdan negara keanggotaan yang terfokus pada Threat Intelligence, OSINT, Company Profiling, PersonalProfiling dan hal-hal yang masih keterkaitan dengan Intelligence.

3. Militer

Kebutuhan open source intelligence pada bidang militer terus berkembang. Setiap sumberinformasi publik yang ada, bisa dimanfaatkan untuk antisipasi sebuah ancaman terhadap keamananbaik pada lokal, nasional ataupun internasional. Informasi yang didapatkan untuk kepentingan operasimiliter berupa strategis ataupun taktis yang berhubungan dengan persenjataan, geo lokasi, pasukanmusuh, populasi warga sipil dari sebuah negara, kemampuan militer dari sebuah negara dan lain-lain.Untuk lebih lengkapnya bisa membaca paper seperti pada referensi [6][7]

4. Penegakan Hukum( Law Enforcement )

Dengan bantuan internet dan sosial media di zaman sekarang, proses pengumpulan informasiuntuk kebutuhan penegakan hukum akan sangat membantu. Di mana beberapa pelaku kriminalmelakukan perancangan terhadap aksi kriminal melalui berbagai macam platform yang tersedia diinternet dan tak jarang hal tersebut terekspose dalam publik. Pada hal ini, kita harus benar-benarmengoptimalkan fungsi OSINT dalam proses pengumpulan data terhadap target. Hal tersebut dibahasdalam buku karangan Andrew Staniforth [8]

5. Dunia Bisnis

Dalam dunia bisnis, OSINT meliputi Commercial Intelligence, Competitor Intelligence, danBusiness Intelligence. Perusahaan/pelaku bisnis seringkali menggunakan information brokers atauprivate investigators untuk mengumpulkan dan menganalisis informasi yang relevan sesuai dengantujuan bisnis perusahaan tersebut. Hal tersebut meliputi media, produk, ataupun hal-hal lain yang dapatmembantu untuk mengembangkan bisnis tersebut.

3

Page 4: (paper) Belati: The Traditional Swiss Army Knife for OSINT

4. Pembahasan

Pada bagian ini akan menjelaskan bagaimana proses pembuatan, permasalahan yang dihadapidan juga pemasangan Belati itu sendiri.

4.1 Perkenalan Belati

Belati merupakan sebuah tool yang dirancang untuk melakukan pengumpulan data dan jugadokumen yang bersifat publik terhadap website, domain ataupun layanan lain yang nantinya akandimanfaatkan untuk kebutuhan OSINT. Nama Belati itu sendiri diambil dari sebuah nama senjata tajamsemacam pisau. Yang di mana menurut saya, penamaan tersebut cocok dengan karakteristik OSINT.Belati ini terinspirasi dari beberapa project yang sudah berjalan diantaranya adalah Foca danDatasploit. Adapun tagline untuk Belati seperti berikut:

Belati - The Traditional Swiss Army Knife For OSINT

4.2 Tujuan Pembuatan Belati

Adapun tujuan pembuatan tool ini adalah sebagai sarana belajar dalam proses memperdalambahasa python dan OSINT itu sendiri. Perlu diingat bahwa hal-hal merugikan yang dilakukan dalampenggunaan Belati tidak berimbas terhadap author.

4.3 Fitur Belati

• Whois(Indonesian TLD Support)

• Banner Grabbing

• Subdomain Enumeration

• Service Scanning for all Subdomain Machine

• Web Appalyzer Support

• DNS mapping / Zone Scanning

• Mail Harvester from Website & Search Engine

• Mail Harvester from MIT PGP Public Key Server

• Scrapping Public Document for Domain from Search Engine

• Fake and Random User Agent ( Prevent from blocking )

• Proxy Support for Harvesting Emails and Documents

• Public Git Finder in domain/subdomain

4

Page 5: (paper) Belati: The Traditional Swiss Army Knife for OSINT

• Public SVN Finder in domain/subdomain

• Robot.txt Scraper in domain/subdomain

• Gather Public Company Info & Employee

• SQLite3 Database Support for storing Belati Results

• Setup Wizard/Configuration for Belati

• Django Web Management

• Auto Dependency Checker

• Auto Update System

• Document Metadata/Exif Extractor

• Document Author Metadata

• Graph Visualization( On Progress )

4.4 Kendala/Permasalahan

Tidak bisa dipungkiri bahwa dalam proses pengembangan Belati ini menemui beberapakendala/permasalahan pada saat implementasi seperti berikut:

1. Whois Library Untuk Python

Whois Library untuk python yang dipakai oleh Belati belum mendukung untuk domain TLD*.id, sehingga membutuhkan untuk implementasi dan mendaftarkan whois server agar dapat melakukanquery terhadap domain TLD *.id. Saya meminimalisir penggunaan API dan lebih memilih untukmenggunakan native library yang bisa diimplementasikan secara langsung di python.

2. Request Terblok oleh Google

Pada saat melakukan crawling data untuk kebutuhan data domain dan lainnya, google akanmelakukan block terhadap request dengan user-agent dan ip. Maka dari itu dibutuhkan fitur untukgenerate random user agent setiap melakukan request dan dukungan terhadap single ataupun randomproxy untuk menghindari block terhadap request. Fitur tersebut sudah diimplementasikan pada versi0.1.x-dev

3. Legalitas LinkedIn Scrapper

Merujuk pada ToS penggunaan LinkedIn[9] , pada halaman tersebut menjelaskan pelaranganpembuatan software/bot untuk melakukan scrapping terhadap data yang ada pada LinkedIn. Sepertiyang dikutip dari Arstechnica[10], LinkedIn pun kembali menegaskan bahwa hal tersebut ilegal ketikamelakukan scraping tanpa ada ijin. Hal tersebut menjadikan pertimbangan dalam development fitur

5

Page 6: (paper) Belati: The Traditional Swiss Army Knife for OSINT

untuk Belati. Untuk menghindari masalah yang mungkin terjadi dikemudian hari, maka untuk fiturLinkedIn Scraper kemungkinan tidak akan diimplementasikan.

4. Python Version Library

Beberapa library yang terdapat di Belati masih menggunakan python versi 2.x yang memangmengharuskan development menggunakan python versi 2.x agar bisa implementasikan fitur sesuaidengan yang diinginkan. Dibutuhkan waktu untuk melakukan migrasi source code dari python 2.xmenjadi python 3.x. Tapi hal tersebut sudah ada dalam plan development jangka panjang.

5. Penggunaan API Pihak Ketiga

Belati dibuat agar seminimal mungkin dalam menggunakan API pihak ketiga yangmembutuhkan autentikasi. Selama fitur tersebut masih dapat diimplementasikan menggunakan nativepython maka hal itu lebih baik. Hal tersebut bertujuan agar memudahkan user dalam penggunaan Belatiyang tidak membutuhkan banyak registrasi service API. Tapi, masih menjadi pertimbangan untukimplementasikan fitur yang menggunakan API pihak ketiga bila hal tersebut memang tidak ada caralain.

4.4 Worst Case Scenario

Dalam proses pembuatan Belati ini, saya pun memikirkan worst case scenario disaat aplikasi

ini digunakan untuk sebuah kepentingan khusus yang mungkin merugikan. Mula-mula Belati akanmelakukan pengumpulan informasi terhadap domain melalui Whois dengan melakukan pengecekanterhadap kepemilikan sebuah website/domain. Dari informasi yang didapatkan, memungkinkanterdapat informasi sensitif tentang si pemilik seperti email, nomor telfon, alamat tempat tinggal danbeberapa informasi sensitif lainnya. Tak jarang sebuah domain mencantumkan informasi tersebut tanpaadanya whois protector. Kenapa hal tersebut menjadi pertimbangan? Karena, hal kecil tersebut bisadimanfaatkan untuk harvesting data dan melakukan profiling terhadap seseorang, teman saya sudah

pernah membahas hal ini pada blog pribadinya tentang Harvesting Whois Data for OSINT[11]

Setelah mendapatkan informasi whois dari sebuah domain, Belati akan melanjutkan denganmelakukan HTTP Banner Grabbing untuk mendapatkan informasi seputar webserver dan teknologiyang digunakan oleh website tersebut. Apache? Nginx? Versi? HTTP Security Header? . Mungkin dariinformasi yang didapatkan tersebut bisa dicari public exploit yang tersedia.

Kita tentu ingin tahu berapa banyak jumlah dan apa saja subdomain yang terdaftar untukdomain tersebut, data itu bisa didapatkan dengan cara harvesting melalui search engine dan servicelainnya atau bisa juga dengan menggunakan DNS Zone Scanning. Belati pun menerapkan DNS ZoneScanning dengan bantuan plugin yang bernama sublist3r untuk memudahkan dan lebih efisien dalampengumpulan data. Ditambah dengan fitur GEO IP untuk setiap subdomain yang terkumpul.

6

Page 7: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Setelah terkumpul daftar subdomain yang terdaftar pada domain tersebut, selanjutnya bisadilakukan network mapping terhadap domain untuk mengetahui layanan apa saja yang tersedia ataupunteknologi yang digunakan untuk setiap subdomain. Seperti mail server, version control, developmentsystem, API dan lain-lain. Umumnya informasi tersebut bersifat publik dan bisa diketahui. Tak jarangbahkan personal, Organisasi, ataupun Perusahaan dengan mudah dilakukan network mapping setelahmendapatkan informasi subdomain yang terdaftar.

Dari daftar subdomain tersebut, Belati akan melakukan pengecekan terhadap protokolHTTP/HTTPS yang sedang aktif dan melakukan Web Appalyzer untuk pengumpulan data tentangservice dan plugins apa saja yang digunakan oleh website. Seperti Bootstrap, Apache, Yii dan lain-lain.Belati pun melakukan pengecekan terhadap Git & SVN Folder untuk setiap subdomain dan domainyang terkumpul. Pada umumnya, developer tidak memperdulikan folder .git dan .svn dalam sebuahproject. Karena .(dot) biasanya menjadi hidden file/folder dalam sistem operasi *NIX. Padahal, itumerupakan informasi yang sangat berharga karena seorang attacker bisa melakukan dump dari data

svn/git yang didapatkan menggunakan tool semacam GitDumper[12] dan alangkah lebih baiknya

memang untuk tidak mengekspos kedua folder tersebut secara publik ataupun memproteksinya agartidak dapat diakses dari webserver. Seperti pada artikel yang menjelaskan tentang bagaimana seseorangmengunduh source code dari daftar 1M Alexa rank yang sudah dianalisis dengan judul “Don't publicly

expose .git or how we downloaded your website's sourcecode - An analysis of Alexa's 1M”[13].

Tak hanya itu, Belati pun melakukan Nmap scanning atau pun host scanning terhadap alamat IP

yang didapatkan melalui daftar subdomain sebelumnya. Untuk sementara, fitur ini masih belumberjalan dengan baik karena memang masih menjadi pertimbangan untuk menggunakan nmap ataumenggunakan shodan sebagai sumber utama dari data fitur ini.

Kemungkinan besar setiap website mempunyai email pribadi yang dipergunakan untukkomunikasi dan sebagai penanda bahwa email tersebut berasal domain tertentu. Misal sebuahperusahaan ataupun organisasi yang menggunakan domain sebagai alamat email resmi. Belatimelakukan pengumpulan data email melalui mesin pencari seperti Google, Yahoo dan mesin pencarilainnya. Karena bisa jadi email dari perusahaan, organisasi, ataupun personal pernah ter-index olehmesin pencari, entah itu lewat forum ataupun tempat lainnya. Tak lupa, Belati pun melakukanpengecekan email yang terdaftar di MIT PGP Public Key Server. Untuk memastikan bahwa email

tersebut digunakan untuk pertukaran melalui pgp[14].

Dari pengalaman yang saya alami, beberapa website bahkan sekelas website government masih

menyimpan data-data penting di folder website/storage yang memang bersifat publik dan ter-index olehGoogle. Karena itu lah Belati mengadopsi fitur yang diterapkan oleh Foca dalam melakukan harvestpublic document. Belati akan melakukan harvest terhadap dokumen publik seperti PDF, DOCX, XLSyang sebelumnya sudah ter-index di Google. Coba bayangkan bagaimana bila dokumen tersebut adalahdokumen rahasia? Atau data-data statistik? Atau dokumen perjanjian? Bagaimana bila case itu terjadi?

7

Page 8: (paper) Belati: The Traditional Swiss Army Knife for OSINT

4.5 Pemasangan Belati

Setelah membahas teori pada point sebelumnya, kita akan berlanjut ketahap pemasangan Belati.

Untuk melakukan pemasangan( baca: install) Belati, diperlukan beberapa dependensi python yangsudah terpasang. Belati sudah mempunyai fitur untuk melakukan pengecekan terhadap dependensiyang terpasang dan menyarankan dependensi yang belum terpasang untuk dipasang agar bisamenjalankan Belati. Untuk pemasangan nya sendiri menggunakan perintah:

git clone https: // github.com / aancw / Belati.git

cd Belati

git submodule update --init --recursive –remote # checkout submodule

pip install -r requirements.txt #please use pip with python v2

Bila ada pesan missing dependensi seperti pada Gambar 1.0:

8

Gambar 1.0 Missing Dependencies

Page 9: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Lakukan instalasi dependensi sesuai petunjuk yang sudah diberikan

pip install --upgrade pip #untuk upgrade pip

pip install -r requirements.txt

Untuk pengguna Fedora/CentOS, diharuskan untuk memasang paket tertentu terlebih dahulu sepertiberikut:

yum install gcc gmp gmp-devel python-devel

Bila semua proses berjalan lancar, maka akan tampil seperti Gambar 1.1 bila kita ingin menampilkanhelp pada Belati.

9

Gambar 1.1 Belati Help

Page 10: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Dan berikut tampilan awal dari Belati terlihat pada Gambar 1.2

Perlu diketahui bahwa Belati sudah mendukung untuk fitur auto update, jadi pengguna tidakperlu repot mengunduh ulang saat ada pembaruan di repositori, cukup dengan menjalankan Belati makaakan otomatis melakukan pengecekan terlebih dahulu versi yang berada dilokal dengan remote.Disarankan untuk menggunakan proxy pada saat menjalankan Belati. Bisa menggunakan proxychainsataupun built-in proxy yang sudah didukung oleh Belati dengan menggunakan parameter –single-proxy/ --proxy-file / --auto-proxy .

10

Gambar 1.2 Tampilan Utama Belati

Page 11: (paper) Belati: The Traditional Swiss Army Knife for OSINT

4.6 Belati In Action

Sebagai bahan uji coba, saya akan melakukan pengumpulan data dengan menggunakan Belatiterhadap RNDC( Indonesian Research and Development Center) - http://rndc.or.id dan juga Adobe Incsebagai contoh parameter company. Perlu diketahui bahwa apa yang akan saya lakukan terhadapRNDC sudah mendapatkan persetujuan agar digunakan dalam tulisan ini. Saya coba menjalankanBelati dengan perintah:

python2 Belati.py -d rndc.or.id -c "Adobe Inc"

Selanjutnya akan dijelaskan dengan gambar.

Bila pengguna menggunakan Belati untuk pertama kali, maka Belati akan menanyakankonfigurasi yang dibutuhkan seperti Gambar 1.3. Untuk sementara ini hanya ada konfigurasi pythonbinary untuk menjalankan Django web server. Selanjutnya Belati akan melakukan pengecekan terhadappembaruan dan membuat project baru seperti pada Gambar 1.4

11

Gambar 1.3 Belati Config

Page 12: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Karena versi Belati yang saya pakai sudah uptodate, Belati akan langsung membuatkan projectbaru. Seperti yang sudah dijelaskan sebelumnya, Belati akan melakukan pengumpulan data melaluiwhois dan juga melakukan HTTP Banner Grabbing seperti pada Gambar 1.5

12

Gambar 1.4 Belati Update & Create Project

Page 13: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Pada Gambar 1.5 terlihat bahwa domain tersebut didaftarkan oleh Maxindo Content Solutiondengan alamat dan nomor telfon seperti yang tertera pada gambar dan lengkap dengan name server apayang sedang digunakan oleh domain tersebut. Dari HTTP Banner Grabbing kita mendapatkaninformasi bahwa server tersebut menggunakan Apache/2.4.25 sebagai web server dan PHP/5.3.29beserta informasi http header lainnya. Selanjutnya akan melakukan enumeration terhadap subdomainyang terdaftar pada domain seperti Gambar 1.6

13

Gambar 1.5 Whois & HTTP Banner Grabbing

Page 14: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Belati melakukan enumeration terhadap subdomain dengan bantuan plugin sublist3r yangmengumpulkan data dari berbagai service seperti DNSdumpster, PassiveDNS dan lain-lain. Daftarsubdomain ini yang nanti akan digunakan pada tahap selanjutnya seperti Gambar 1.7

14

Gambar 1.6 Subdomain Enumeration

Page 15: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Belati melakukan Wappalyzing terhadap setiap subdomain yang terdaftar dan juga tak lupamelakukan pengecekan terhadap SVN & Git repositori folder untuk memastikan apakah subdomaintersebut terdapat version control yang bisa menyebabkan pengunduhan source code dari sebuahaplikasi/website. Lalu melakukan query terhadap DNS server untuk mengetahui NS & MX Serverseperti yang terlihat pada Gambar 1.7. Selanjutnya, Belati akan melakukan email Harvesting dariGoogle dan PGP server terhadap domain tersebut.

15

Gambar 1.7 Wappalyzing, SVN, Git Checker

Gambar 1.8 Email Harvesting

Page 16: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Setelah kita mendapatkan daftar email dari mesin pencari yang sudah melakukan index padahalaman situs lain, misalnya pencarian lowongan pekerjaan atau situs diskusi dan juga PGP server.Selanjutnya, Belati akan melakukan pencarian publik dokumen yang terdapat pada server domaintersebut yang sebelumnya sudah terindex oleh mesin pencari, hal ini terinspirasi dari fitur yang dimilikioleh Foca.

Seperti yang terlihat pada Gambar 1.9, Belati melakukan query terhadap mesin pencari untukmengumpulkan tautan dokumen publik pada sebuah domain. Belati hanya melakukan pencarianterhadap berkas PDF, XLS, DOC, ODT, PPT, RTF, TXT dikarenakan berkas tersebut kemungkinanberkas penting dan jua dibekali dengan random fake user agent dan proxy untuk meminimalisirterblokir oleh mesin pencari.

16

Gambar 1.9 Harvesting Public Document

Page 17: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Nah, untuk mencakup kedalam company profiling atau gathering, pada masa development iniBelati akan menggunakan mesin pencari dan juga LinkedIn sebagai sarana informasi seperti karyawanyang sedang bekerja sekarang dan lain-lain. Tidak menutup kemungkinan nantinya akan dikembangkandengan cakupan yang lebih luas dalam pencarian informasi ini. Setelah semua proses selesai, Belatimenyimpan log, berkas yang terunduh dan menjalan web server agar dapat dilihat hasil yangdidapatkan seperti Gambar 2.1

17

Gambar 2.0 Gather Company Employee

Gambar 2.1 Starting Web Server

Page 18: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Setelah webserver telah berjalan, kita bisa melihat langsung hasil dari Belati dengan mengakseshalaman http://127.0.0.1:800/ seperti yang terlihat pada Gambar 2.2

Pada halaman awal Belati akan menampilkan daftar project yang sudah terbuat sebelumnyalengkap dengan waktu pembuatan. Web ini dibangun dengan framework Django yang memang masihmenggunakan bahasa python sehingga terintegrasi dengan Belati itu sendiri. Untuk melihat data &informasi yang sudah terkumpul selama proses menjalankan Belati, cukup dengan klik tombol Viewseperti Gambar 2.3.

18

Gambar 2.2 Halaman Awal Belati

Page 19: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Belati akan menampilkan informasi terkait project yang sudah dikumpulkan sebelumnya.Informasi tersebut dikelompokkan dengan masing-masing tab sesuai dengan kebutuhan. Ada tabProjects, Domain Result, Subdomain, Mail Harvest, Documents, LinkedIn etc yang bisa pengguna lihatsendiri disaat menjalankan Belati. Bisa dilihat hasil informasi dokumen yang telah terunduh pada saatBelati berlangsung seperti Gambar 2.4

19

Gambar 2.3 View Belati Project

Gambar 2.4 Hasil Public Document

Page 20: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Seperti yang terlihat pada Gambar 2.4 menunjukkan url lengkap dari sebuah dokumen yangterunduh dan juga direktori berkas tersebut disimpan. Nantinya, pengguna dapat melihat dokumen yangsudah terunduh secara langsung lewat peramban. Untuk saat ini, fitur tersebut sedang dalam prosespengerjaan yang nantinya pun bersamaan dengan pengumpulan informasi berdasarkan metadata dari

sebuah dokumen. Ada pun fitur yang sedang dikerjakan untuk Belati ini bisa dilihat pada laman [15]

GitHub.

5. Kesimpulan

Setelah mengetahui seluk beluk tentang OSINT, kita jadi tahu bagaimana sebuah data yang sederhana dan mungkin dianggap tidak berguna bisa dimanfaatkan untuk kebutuhan khusus. Belati diperuntukkan untuk automatisasi kebutuhan pengumpulan informasi sebagai sarana OSINT. Dengan menggunakan Belati, pengguna dapat melakukan audit terhadap informasi/data publik yang dimiliki. Seperti yang sudah dijelaskan pada Worst Case Scenario bahwa sebuah data yang kecil pun bisa dimanfaatkan untuk kebutuhan khusus yang berdampak negatif dan hal tersebut sangatlah fatal. Sudah seharusnya kita lebih berhati-hati terhadap data sensitif yang kita bagikan secara sengaja ataupun tidak sengaja secara terbuka yang nantinya bisa dimanfaatkan oleh orang yang berkepentingan.

Jadi, sudah amankah data/informasi Anda?

20

Page 21: (paper) Belati: The Traditional Swiss Army Knife for OSINT

Referensi

1. NATO. NATO Open Source Intelligence Reader, February 2002.2. https://en.wikipedia.org/wiki/Open-source_intelligence3. https://www.tripwire.com/state-of-security/security-awareness/burgling-from-an-osint-point-of-view/4. https://www.elevenpaths.com/labstools/foca/index.html5. https://github.com/upgoingstar/datasploit6. Robert D. Steele, Open Source Intelligence: What Is It? Why Is It Important to the Military?7. Robert D. Steele, The Importance of Open Source Intelligence To The Military8. Andrew Staniforth, Police Use of Open Source Intelligence: The Longer Arm of Law9. https://www.linkedin.com/legal/user-agreement10. https://arstechnica.com/tech-policy/2017/07/linkedin-its-illegal-to-scrape-our-website-without-permission/11. https://webbreacher.com/2016/08/09/harvesting-whois-data-for-osint/12. https://github.com/internetwache/GitTools13. https://en.internetwache.org/dont-publicly-expose-git-or-how-we-downloaded-your-websites-sourcecode-an-analysis-of-alexas-1m-28-07-2015/14. https://www.quora.com/Network-Security-What-is-PGP15. https://github.com/aancw/Belati/issues/12

21