Panduan ini merupakan kumpulan teknik untuk meningkatkan keamanan dan privasi komputer Mac silikon Apple yang menjalankan versi macOS yang saat ini didukung. Menggunakan Mac dengan CPU Intel membuat Anda rentan terhadap kerentanan keamanan pada tingkat perangkat keras yang tidak dapat ditambal oleh Apple . Apple silikon Mac adalah rekomendasi minimum tetapi sebagai aturan umum, chip yang lebih baru selalu lebih aman.
Panduan ini ditujukan bagi pengguna tingkat lanjut yang ingin mengadopsi keamanan standar perusahaan, namun juga cocok bagi pengguna pemula yang berkepentingan untuk meningkatkan privasi dan keamanan mereka di Mac.
Jika Anda mengamankan komputer untuk suatu organisasi, gunakan pedoman resmi NIST untuk macOS.
Suatu sistem hanya akan seaman jika administratornya mampu melakukannya. Tidak ada satu pun teknologi, perangkat lunak, atau teknik yang dapat menjamin keamanan komputer yang sempurna; sistem operasi dan komputer modern sangatlah kompleks, dan memerlukan banyak perubahan bertahap untuk meningkatkan keamanan dan privasi seseorang.
Panduan ini disediakan 'sebagaimana adanya' tanpa jaminan apa pun. Hanya Anda yang bertanggung jawab jika Anda merusak sesuatu atau mendapat masalah apa pun dengan mengikuti panduan ini.
Untuk menyarankan perbaikan, kirimkan permintaan penarikan atau buka masalah.
Praktik terbaik keamanan umum berlaku:
Buat model ancaman
Selalu perbarui sistem dan perangkat lunak
softwareupdate
- tidak perlu mendaftarkan akun Apple.Enkripsi data sensitif
Yakinkan ketersediaan data
Klik dengan hati-hati
Langkah pertama dan terpenting untuk keamanan dan privasi adalah menciptakan model ancaman. Anda perlu memahami musuh Anda untuk bertahan melawan mereka. Setiap orang akan memiliki kebutuhannya masing-masing sehingga model ancaman setiap orang akan berbeda. Model ancaman cenderung berkembang seiring waktu seiring perubahan situasi, jadi pastikan untuk menilai ulang model ancaman Anda secara berkala.
Ini mungkin banyak hal: ponsel Anda, laptop Anda, kata sandi yang tersimpan di perangkat Anda, riwayat penjelajahan internet, dll. Buatlah daftar yang dimulai dengan aset paling penting untuk dilindungi. Anda dapat mengelompokkannya ke dalam kategori berdasarkan seberapa penting data tersebut: publik, sensitif, atau rahasia.
Tentukan siapa yang Anda bela. Mulailah dengan menentukan motivasi mereka untuk menyerang aset Anda. Keuntungan finansial adalah motivator besar bagi banyak penyerang, misalnya.
Untuk melawan musuh, kamu harus memahami apa yang mereka mampu dan apa yang tidak mampu mereka lakukan. Urutkan musuh dari yang tidak canggih hingga yang sangat mahir. Misalnya, pencuri biasa tidaklah terlalu canggih; mereka kemungkinan besar akan dihentikan oleh hal-hal mendasar seperti sekadar memiliki kata sandi dan enkripsi drive di perangkat Anda. Musuh yang sangat mahir seperti aktor negara mungkin perlu mematikan perangkat Anda sepenuhnya saat tidak digunakan untuk menghapus kunci dari RAM dan kata sandi diceware yang panjang.
Sekarang adalah saat Anda memutuskan cara terbaik untuk melawan setiap ancaman. Anda mungkin menghindari menuliskan kata sandi di atas kertas sehingga teman sekamar Anda tidak dapat menemukannya atau Anda mungkin mengenkripsi drive di komputer Anda sehingga pencuri tidak dapat memperoleh data darinya. Penting untuk menyeimbangkan keamanan dan kegunaan; setiap mitigasi harus melawan kemampuan musuh Anda, jika tidak, Anda mungkin membuat hidup Anda tidak nyaman tanpa hasil apa pun. Jika Anda tidak dapat memikirkan kemampuan apa pun lagi yang mungkin dimiliki musuh Anda dan Anda telah menerapkan mitigasi untuk mereka semua, maka pekerjaan Anda sudah selesai.
Berikut ini contoh jenis tabel yang harus Anda buat untuk setiap aset yang ingin Anda lindungi:
Musuh | Motivasi | Kemampuan | Mitigasi |
---|---|---|---|
Teman sekamar | Lihat obrolan pribadi atau riwayat penelusuran | Kedekatan; dapat melihat layar atau jam tangan mengetikkan kata sandi | Gunakan biometrik, gunakan layar privasi, kunci ponsel saat tidak digunakan |
Maling | Buka kunci ponsel dan curi informasi pribadi dan tiriskan rekening bank, jual ponsel demi uang | Jelajahi bahu untuk melihat kata sandi, curi perangkat saat tidak melihat saat sedang masuk | Jaga ponsel tetap terlihat atau berada di depan orang setiap saat, tetap terkunci saat tidak digunakan, gunakan biometrik untuk menghindari pengetikan kata sandi di depan umum, gunakan Cari Milik Saya atau layanan serupa untuk melacak/menonaktifkan perangkat yang dicuri dari jarak jauh |
Pidana | Finansial | Rekayasa sosial, malware yang tersedia, penggunaan kembali kata sandi, eksploitasi kerentanan | Gunakan sandboxing, aktifkan fitur keamanan di OS, terus perbarui OS dan semua perangkat lunak, dan aktifkan pembaruan otomatis |
Perusahaan | Pemasaran data pengguna | Pengumpulan data telemetri dan perilaku | Blokir koneksi jaringan, setel ulang pengidentifikasi unik, hindari menambahkan data pembayaran |
Negara Bangsa/APT | Pengawasan yang ditargetkan | Pengawasan pasif terhadap infrastruktur internet, komputer canggih untuk memecahkan enkripsi/analisis paket | Gunakan e2ee sumber terbuka, gunakan kata sandi diceware yang kuat untuk perangkat, gunakan perangkat keras dengan elemen aman untuk enkripsi aman, matikan perangkat saat tidak digunakan, perangkat lunak tripwire/honeypot/token canary |
Baca selengkapnya tentang pemodelan ancaman di sini.
macOS paling aman dijalankan di perangkat keras Apple dengan silikon Apple. Semakin baru Mac, semakin baik. Hindari peretasan dan Mac yang tidak mendukung macOS terbaru, karena Apple tidak menambal semua kerentanan di versi yang bukan versi terbaru.
Saat membeli Mac, Anda mungkin ingin menghindari agar Mac tidak ditautkan kembali ke Anda. Tergantung pada model ancaman Anda, Anda harus membayarnya secara tunai secara langsung daripada memesan secara online atau membeli dengan kartu kredit/debit, sehingga tidak ada informasi identitas yang dapat dikaitkan kembali dengan pembelian Anda.
Jika Anda ingin menggunakan keyboard nirkabel, mouse, headphone, atau aksesori lainnya, opsi paling aman adalah yang Apple karena akan diperbarui secara otomatis oleh sistem Anda. Mereka juga mendukung fitur Bluetooth terbaru seperti BLE Privacy yang mengacak alamat perangkat keras Bluetooth Anda untuk mencegah pelacakan. Dengan aksesori pihak ketiga, hal ini bukan jaminan.
Ada beberapa cara untuk menginstal macOS. Pilih metode pilihan Anda dari opsi yang tersedia.
Anda harus menginstal macOS versi terbaru yang kompatibel dengan Mac Anda . Versi yang lebih baru memiliki patch keamanan dan peningkatan lain yang tidak dimiliki versi lama.
Sebagai bagian dari sistem pencegahan pencurian Apple, Mac silikon Apple harus diaktifkan dengan server Apple setiap kali Anda menginstal ulang macOS untuk memeriksa database Mac yang dicuri atau dikunci aktivasi.
Anda dapat membaca tentang cara kerja proses ini di sini.
Membuat Akun Apple tidak diperlukan untuk menggunakan macOS. Membuat Akun Apple memerlukan nomor telepon dan secara default akan menyinkronkan banyak data ke iCloud, layanan penyimpanan cloud Apple. Anda dapat menonaktifkan sinkronisasi nanti jika Anda mau atau mengaktifkan enkripsi ujung ke ujung untuk data iCloud Anda.
Anda dapat mengontrol data yang terkait dengan Akun Apple Anda atau menghapusnya sepenuhnya.
Akun Apple diperlukan untuk mengakses App Store dan menggunakan sebagian besar layanan Apple seperti iCloud, Apple Music, dll.
Mac App Store adalah gudang perangkat lunak pilihan yang diperlukan untuk memanfaatkan App Sandbox dan Hardened Runtime, serta menawarkan pembaruan otomatis yang terintegrasi dengan sistem Anda.
App Store menawarkan jaminan keamanan terbesar untuk perangkat lunak di macOS, namun mengharuskan Anda masuk dengan Akun Apple dan Apple akan dapat menautkan Akun Apple Anda ke aplikasi yang Anda unduh.
Anda dapat dengan mudah menjalankan macOS secara asli di mesin virtual menggunakan UTM. Ini gratis dari situs mereka tetapi jika Anda membelinya dari App Store, Anda akan mendapatkan pembaruan otomatis.
Ikuti dokumentasi mereka untuk menginstal macOS VM hanya dengan beberapa klik.
Pilihan lainnya adalah VMware Fusion. Anda dapat membaca dokumentasinya untuk mengetahui cara menginstal VM macOS.
Saat macOS pertama kali dijalankan, Anda akan disambut oleh Setup Assistant .
Saat membuat akun pertama, gunakan kata sandi yang kuat tanpa petunjuk.
Jika Anda memasukkan nama asli Anda pada proses penyiapan akun, ketahuilah bahwa nama komputer dan nama host lokal Anda akan terdiri dari nama tersebut (misalnya, MacBook John Appleseed ) dan dengan demikian akan muncul di jaringan lokal dan di berbagai file preferensi.
Keduanya harus diverifikasi dan diperbarui sesuai kebutuhan di Pengaturan Sistem > Tentang atau dengan perintah berikut setelah instalasi:
sudo scutil --set ComputerName MacBook
sudo scutil --set LocalHostName MacBook
Akun pengguna pertama selalu merupakan akun admin. Akun admin adalah anggota grup admin dan memiliki akses ke sudo
, yang memungkinkan mereka mengambil alih akun lain, khususnya root, dan memberi mereka kontrol efektif atas sistem. Program apa pun yang dijalankan admin berpotensi memperoleh akses yang sama, sehingga menimbulkan risiko keamanan.
Utilitas seperti sudo
memiliki kelemahan yang dapat dieksploitasi dengan menjalankan program secara bersamaan.
Ini dianggap sebagai praktik terbaik oleh Apple untuk menggunakan akun standar terpisah untuk pekerjaan sehari-hari dan menggunakan akun admin untuk instalasi dan konfigurasi sistem.
Tidak perlu masuk ke akun admin melalui layar masuk macOS. Ketika perintah Terminal memerlukan hak istimewa administrator, sistem akan meminta otentikasi dan Terminal kemudian terus menggunakan hak istimewa tersebut. Untuk itu, Apple memberikan beberapa rekomendasi untuk menyembunyikan akun admin dan direktori home-nya. Ini bisa menjadi solusi elegan untuk menghindari akun 'hantu' yang terlihat.
/Applications
(direktori lokal). Finder dan Installer akan meminta pengguna standar dengan dialog otentikasi. Banyak aplikasi yang dapat diinstal di ~/Applications
(direktori dapat dibuat). Sebagai aturan praktis: aplikasi yang tidak memerlukan akses admin – atau tidak mengeluh karena tidak diinstal di /Applications
– harus diinstal di direktori pengguna, sisanya di direktori lokal. Aplikasi Mac App Store masih terinstal di /Applications
dan tidak memerlukan otentikasi tambahan.sudo
tidak tersedia di shell pengguna standar, yang memerlukan penggunaan su
atau login
untuk masuk ke shell akun admin. Hal ini dapat membuat beberapa manuver menjadi lebih rumit dan memerlukan pengalaman dasar dengan antarmuka baris perintah.open
.Akun dapat dibuat dan dikelola di System Preferences. Pada sistem yang sudah mapan, umumnya lebih mudah untuk membuat akun admin kedua dan kemudian menurunkan akun pertama. Ini menghindari migrasi data. Sistem yang baru diinstal juga dapat menambahkan akun standar saja.
Menurunkan akun dapat dilakukan dari akun admin baru di System Preferences – akun lain harus logout – atau dengan menjalankan perintah berikut (mungkin tidak perlu menjalankan keduanya, lihat edisi 179):
sudo dscl . -delete /Groups/admin GroupMembership <username>
sudo dscl . -delete /Groups/admin GroupMembers <GeneratedUID>
Untuk menemukan GeneratedUID suatu akun:
dscl . -read /Users/<username> GeneratedUID
Lihat juga postingan ini untuk informasi selengkapnya tentang cara macOS menentukan keanggotaan grup.
Anda harus memeriksa apakah pengaturan keamanan firmware diatur ke Keamanan Penuh untuk mencegah gangguan pada OS Anda. Ini adalah pengaturan default.
Semua model Mac dengan silikon Apple dienkripsi secara default. Mengaktifkan FileVault membuat Anda perlu memasukkan kata sandi untuk mengakses data di drive Anda. EFF memiliki panduan untuk menghasilkan kata sandi yang kuat namun mudah diingat.
Kata sandi FileVault Anda juga bertindak sebagai kata sandi firmware yang akan mencegah orang yang tidak mengetahuinya melakukan booting dari apa pun selain disk startup yang ditentukan, mengakses Pemulihan, dan menghidupkannya kembali dengan mode DFU.
FileVault akan meminta Anda menyetel kunci pemulihan jika Anda lupa kata sandi. Simpan kunci ini di tempat yang aman. Anda akan memiliki opsi untuk menggunakan akun iCloud Anda untuk membuka kunci disk Anda; namun, siapa pun yang memiliki akses ke akun iCloud Anda juga dapat membukanya.
macOS menawarkan Mode Penguncian, sebuah fitur keamanan yang menonaktifkan beberapa fitur di seluruh OS, sehingga secara signifikan mengurangi permukaan serangan bagi penyerang sekaligus menjaga OS tetap dapat digunakan. Anda dapat membaca tentang apa sebenarnya yang dinonaktifkan dan putuskan sendiri apakah itu dapat Anda terima.
Saat Mode Lockdown aktif, Anda dapat menonaktifkannya per situs di Safari pada situs tepercaya.
Ada beberapa jenis firewall yang tersedia untuk macOS.
Firewall dasar bawaan yang hanya memblokir koneksi masuk . Firewall ini tidak memiliki kemampuan untuk memantau, atau memblokir koneksi keluar .
Ini dapat dikontrol oleh tab Firewall Jaringan di Pengaturan Sistem , atau dengan perintah berikut.
Aktifkan firewall dengan mode logging dan stealth:
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate on
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setloggingmode on
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setstealthmode on
Peretas komputer memindai jaringan sehingga mereka dapat mencoba mengidentifikasi komputer yang akan diserang. Anda dapat mencegah komputer Anda merespons beberapa pemindaian ini dengan menggunakan mode sembunyi-sembunyi . Saat mode siluman diaktifkan, komputer Anda tidak merespons permintaan ping ICMP, dan tidak menjawab upaya koneksi dari port TCP atau UDP yang tertutup. Hal ini mempersulit penyerang menemukan komputer Anda.
Untuk mencegah perangkat lunak bawaan serta perangkat lunak yang ditandatangani dengan kode, perangkat lunak yang diunduh tidak dimasukkan dalam daftar putih secara otomatis :
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setallowsigned off
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setallowsignedapp off
Aplikasi yang ditandatangani oleh otoritas sertifikat yang valid secara otomatis ditambahkan ke daftar aplikasi yang diizinkan, alih-alih meminta pengguna untuk mengotorisasi aplikasi tersebut. Aplikasi yang disertakan dalam macOS ditandatangani oleh Apple dan diizinkan menerima koneksi masuk saat pengaturan ini diaktifkan. Misalnya, karena iTunes sudah ditandatangani oleh Apple, maka secara otomatis diperbolehkan menerima koneksi masuk melalui firewall.
Jika Anda menjalankan aplikasi yang tidak ditandatangani namun tidak tercantum dalam daftar firewall, dialog akan muncul dengan opsi Izinkan atau Tolak koneksi untuk aplikasi tersebut. Jika Anda memilih "Izinkan", macOS menandatangani aplikasi dan secara otomatis menambahkannya ke daftar firewall. Jika Anda memilih "Tolak", macOS menambahkannya ke daftar tetapi menolak koneksi masuk yang ditujukan untuk aplikasi ini.
Setelah berinteraksi dengan socketfilterfw
, mulai ulang proses dengan mengirimkan sinyal hangup saluran:
sudo pkill -HUP socketfilterfw
Program seperti Little Snitch, Radio Silence, dan LuLu memberikan keseimbangan yang baik antara kegunaan dan keamanan.
Program-program ini mampu memonitor dan memblokir koneksi jaringan masuk dan keluar . Namun, mereka mungkin memerlukan penggunaan ekstensi sistem sumber tertutup.
Jika jumlah pilihan untuk mengizinkan/memblokir koneksi jaringan sangat banyak, gunakan Mode Senyap dengan koneksi yang diizinkan, lalu periksa konfigurasi secara berkala untuk memahami aplikasi dan apa yang dilakukannya.
Perlu dicatat bahwa firewall ini dapat dilewati oleh program yang berjalan sebagai root atau melalui kerentanan OS (pdf), tetapi firewall ini tetap layak untuk dimiliki - namun jangan mengharapkan perlindungan mutlak. Namun, beberapa malware justru menghapus dirinya sendiri dan tidak dijalankan jika Little Snitch, atau perangkat lunak keamanan lainnya, diinstal.
Firewall yang sangat dapat dikustomisasi, kuat, namun juga paling rumit ada di kernel. Itu dapat dikontrol dengan pfctl
dan berbagai file konfigurasi.
pf juga dapat dikontrol dengan aplikasi GUI seperti Murus.
Ada banyak buku dan artikel tentang pf firewall. Berikut ini hanyalah salah satu contoh pemblokiran lalu lintas berdasarkan alamat IP.
Tambahkan yang berikut ke dalam file bernama pf.rules
:
wifi = "en0"
ether = "en7"
set block-policy drop
set fingerprints "/etc/pf.os"
set ruleset-optimization basic
set skip on lo0
scrub in all no-df
table <blocklist> persist
block in log
block in log quick from no-route to any
block log on $wifi from { <blocklist> } to any
block log on $wifi from any to { <blocklist> }
antispoof quick for { $wifi $ether }
pass out proto tcp from { $wifi $ether } to any keep state
pass out proto udp from { $wifi $ether } to any keep state
pass out proto icmp from $wifi to any keep state
Kemudian gunakan perintah berikut untuk memanipulasi firewall:
sudo pfctl -e -f pf.rules
untuk mengaktifkan firewall dan memuat konfigurasisudo pfctl -d
untuk menonaktifkan firewallsudo pfctl -t blocklist -T add 1.2.3.4
untuk menambahkan alamat IP ke daftar blokirsudo pfctl -t blocklist -T show
untuk melihat daftar blokirsudo ifconfig pflog0 create
untuk membuat antarmuka untuk loggingsudo tcpdump -ni pflog0
untuk melihat paket yang difilterKecuali Anda sudah terbiasa dengan pemfilteran paket, tidak disarankan menghabiskan terlalu banyak waktu untuk mengonfigurasi pf. Mungkin juga tidak diperlukan jika Mac Anda menggunakan NAT di jaringan rumah pribadi.
Firewall pf dapat digunakan untuk memblokir akses jaringan ke seluruh rentang alamat jaringan, misalnya ke seluruh organisasi:
Kueri Merit RADb untuk daftar jaringan yang digunakan oleh sistem otonom, seperti Facebook:
whois -h whois.radb.net '!gAS32934'
Salin dan tempel daftar jaringan yang dikembalikan ke perintah daftar blokir:
sudo pfctl -t blocklist -T add 31.13.24.0/21 31.13.64.0/24 157.240.0.0/16
Konfirmasikan alamat telah ditambahkan:
$ sudo pfctl -t blocklist -T show
No ALTQ support in kernel
ALTQ related functions disabled
31.13.24.0/21
31.13.64.0/24
157.240.0.0/16
Konfirmasikan lalu lintas jaringan diblokir ke alamat tersebut (permintaan DNS akan tetap berfungsi):
$ dig a +short facebook.com
157.240.2.35
$ curl --connect-timeout 5 -I http://facebook.com/
* Trying 157.240.2.35...
* TCP_NODELAY set
* Connection timed out after 5002 milliseconds
* Closing connection 0
curl: (28) Connection timed out after 5002 milliseconds
$ sudo tcpdump -tqni pflog0 ' host 157.240.2.35 '
IP 192.168.1.1.62771 > 157.240.2.35.80: tcp 0
IP 192.168.1.1.62771 > 157.240.2.35.80: tcp 0
IP 192.168.1.1.62771 > 157.240.2.35.80: tcp 0
IP 192.168.1.1.62771 > 157.240.2.35.80: tcp 0
IP 192.168.1.1.162771 > 157.240.2.35.80: tcp 0
Paket TCP SYN keluar diblokir, sehingga koneksi TCP tidak dibuat dan dengan demikian situs Web diblokir secara efektif pada lapisan IP.
Lihat drduh/config/scripts/pf-blocklist.sh untuk inspirasi lebih lanjut.
Layanan di macOS dikelola oleh launchd . Lihat peluncurand.info.
Anda dapat mengelola dan melihat informasi lebih lanjut tentang perangkat lunak yang berjalan saat login di Pengaturan Sistem. Anda juga dapat melihat Sistem yang terinstal, Tampilan Cepat, Finder, dan ekstensi lainnya di Pengaturan Sistem.
launchctl list
untuk melihat agen pengguna yang sedang berjalansudo launchctl list
untuk melihat daemon sistem yang sedang berjalanlaunchctl list com.apple.Maps.mapspushd
defaults read
untuk memeriksa daftar pekerjaan di /System/Library/LaunchDaemons
dan /System/Library/LaunchAgents
man
dan strings
untuk mengetahui lebih lanjut tentang apa yang dilakukan agen/daemonMisalnya, untuk mempelajari apa yang dilakukan daemon atau agen peluncuran sistem, mulailah dengan:
defaults read /System/Library/LaunchDaemons/com.apple.apsd.plist
Lihat bagian Program
atau ProgramArguments
untuk melihat biner mana yang dijalankan, dalam hal ini apsd
. Untuk menemukan informasi lebih lanjut tentang itu, lihat halaman manual dengan man apsd
Catatan Layanan sistem dilindungi oleh SIP, jangan nonaktifkan SIP hanya untuk mengutak-atik layanan sistem karena SIP merupakan bagian integral dari keamanan di macOS. Menonaktifkan layanan sistem dapat menyebabkan kerusakan dan perilaku tidak stabil!
Untuk melihat status layanan:
find /var/db/com.apple.xpc.launchd/ -type f -print -exec defaults read {} ; 2>/dev/null
Daftar daemon dan agen peluncuran yang dianotasi, masing-masing program yang dijalankan, dan jumlah hash program disertakan dalam repositori ini.
Baca lebih lanjut tentang peluncuran dan lokasi item login dapat ditemukan di situs web Apple.
Apple beralih ke pemrosesan di perangkat untuk banyak fungsi Siri, namun beberapa informasi masih dikirimkan ke Apple saat Anda menggunakan Saran Siri atau Spotlight. Anda dapat membaca Kebijakan Privasi Apple untuk melihat secara pasti apa yang dikirim dan cara menonaktifkannya.
Jika program Anda tidak tersedia melalui App Store, Anda dapat mempertimbangkan untuk menggunakan Homebrew.
Penting! Homebrew meminta Anda untuk memberikan izin “Manajemen Aplikasi” (atau “Akses Disk Penuh”) ke terminal Anda. Ini adalah ide yang buruk, karena akan membuat Anda rentan terhadap serangan ini lagi: aplikasi apa pun yang tidak menggunakan sandbox dapat mengeksekusi kode dengan izin TCC terminal Anda dengan menambahkan perintah berbahaya ke (misalnya) ~/.zshrc. Memberikan “Manajemen Aplikasi” atau “Akses Disk Penuh” ke terminal Anda harus dianggap sama dengan menonaktifkan TCC sepenuhnya.
Ingatlah untuk menjalankan brew upgrade
secara berkala di jaringan tepercaya dan aman untuk mengunduh dan menginstal pembaruan perangkat lunak. Untuk mendapatkan informasi tentang suatu paket sebelum instalasi, jalankan brew info <package>
dan periksa rumusnya secara online. Anda mungkin juga ingin mengaktifkan opsi keamanan tambahan, seperti HOMEBREW_NO_INSECURE_REDIRECT=1
Menurut Analisis Anonim Homebrew, Homebrew mengumpulkan analitik anonim dan melaporkannya ke instans InfluxDB yang dihosting sendiri. Untuk menyisih dari analitik Homebrew, Anda dapat menyetel export HOMEBREW_NO_ANALYTICS=1
di lingkungan atau file shell rc Anda, atau menonaktifkan brew analytics off
macOS 11 memperkenalkan "profil konfigurasi DNS" untuk mengonfigurasi DNS terenkripsi, memfilter domain, dan menggunakan DNSSEC.
Profil DNS dapat dibuat atau diperoleh dari penyedia seperti Quad9, AdGuard dan NextDNS.
Gunakan file host untuk memblokir malware, iklan, atau domain yang tidak diinginkan.
Edit file host sebagai root, misalnya dengan sudo vi /etc/hosts
Untuk memblokir domain berdasarkan data A
, tambahkan salah satu baris berikut ke /etc/hosts
:
0 example.com
0.0.0.0 example.com
127.0.0.1 example.com
Catatan IPv6 menggunakan jenis catatan DNS AAAA
, bukan jenis catatan A
, jadi Anda mungkin juga ingin memblokir koneksi tersebut dengan juga menyertakan entri ::1 example.com
, seperti yang ditunjukkan di sini.
Ada banyak daftar domain yang tersedia online yang dapat Anda tempelkan, pastikan setiap baris dimulai dengan 0
, 0.0.0.0
, 127.0.0.1
, dan baris 127.0.0.1 localhost
disertakan.
Berikut beberapa daftar host yang populer dan berguna:
Tambahkan daftar host dengan tee
:
curl https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts | sudo tee -a /etc/hosts
Jika Anda menggunakan firewall seperti Little Snitch, Anda dapat menggunakan StevenBlack/hosts yang mengimpor aturan dari repositori leohidalgo/little-snitch---rule-groups, aturan ini diperbarui setiap 12 jam dari repositori StevenBlack/hosts.
Untuk mengenkripsi lalu lintas DNS, pertimbangkan untuk menggunakan DNSCrypt/dnscrypt-proxy. Digunakan bersama dnsmasq dan DNSSEC, integritas lalu lintas DNS dapat ditingkatkan secara signifikan.
Instal DNSCrypt dari Homebrew dan ikuti petunjuk untuk mengonfigurasi dan memulai dnscrypt-proxy
:
brew install dnscrypt-proxy
Jika menggunakan kombinasi dengan Dnsmasq, cari file homebrew.mxcl.dnscrypt-proxy.plist
dengan menjalankan
brew info dnscrypt-proxy
yang akan menampilkan lokasi seperti /usr/local/etc/dnscrypt-proxy.toml
Buka di editor teks, temukan baris yang dimulai dengan listen_addresses =
dan edit baris tersebut untuk menggunakan DNScrypt pada port selain 53, seperti 5355:
listen_addresses = ['127.0.0.1:5355', '[::1]:5355']
Mulai DNSCrypt:
sudo brew services restart dnscrypt-proxy
Konfirmasikan DNSCrypt sedang berjalan:
$ sudo lsof +c 15 -Pni UDP:5355
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
dnscrypt-proxy 15244 nobody 7u IPv4 0x1337f85ff9f8beef 0t0 UDP 127.0.0.1:5355
dnscrypt-proxy 15244 nobody 10u IPv6 0x1337f85ff9f8beef 0t0 UDP [::1]:5355
dnscrypt-proxy 15244 nobody 12u IPv4 0x1337f85ff9f8beef 0t0 UDP 127.0.0.1:5355
dnscrypt-proxy 15244 nobody 14u IPv6 0x1337f85ff9f8beef 0t0 UDP [::1]:5355
Secara default, dnscrypt-proxy berjalan di localhost (127.0.0.1), port 53, menyeimbangkan lalu lintas di serangkaian solver. Jika Anda ingin mengubah pengaturan ini, Anda harus mengedit file konfigurasi: $HOMEBREW_PREFIX/etc/dnscrypt-proxy.toml
Catatan Aplikasi dan program dapat menyelesaikan DNS menggunakan server yang disediakan sendiri. Jika dnscrypt-proxy digunakan, dimungkinkan untuk menonaktifkan semua lalu lintas DNS non-dnscrypt lainnya dengan aturan pf berikut:
block drop quick on ! lo0 proto udp from any to any port = 53
block drop quick on ! lo0 proto tcp from any to any port = 53
Lihat juga Apa itu kebocoran DNS dan ipv6-test.com
Di antara fitur-fitur lainnya, dnsmasq mampu menyimpan balasan dalam cache, mencegah kueri upstream untuk nama yang tidak memenuhi syarat, dan memblokir seluruh domain tingkat atas.
Gunakan dalam kombinasi dengan DNSCrypt untuk mengenkripsi lalu lintas DNS tambahan.
Jika Anda tidak ingin menggunakan DNSCrypt, Anda setidaknya harus menggunakan DNS yang tidak disediakan oleh ISP Anda. Dua alternatif populer adalah Google DNS dan OpenDNS.
DNSSEC opsional adalah sekumpulan ekstensi ke DNS yang menyediakan autentikasi asal data DNS kepada klien DNS (resolver), penolakan keberadaan yang diautentikasi, dan integritas data. Semua jawaban dari zona lindung DNSSEC ditandatangani secara digital. Catatan yang ditandatangani diautentikasi melalui rantai kepercayaan, dimulai dengan serangkaian kunci publik terverifikasi untuk zona akar DNS. Jangkar kepercayaan zona akar saat ini dapat diunduh dari situs web IANA. Ada sejumlah sumber daya di DNSSEC, tapi mungkin yang terbaik adalah situs web dnssec.net.
Instal Dnsmasq:
brew install dnsmasq --with-dnssec
Unduh dan edit drduh/config/dnsmasq.conf atau file konfigurasi default.
Lihat drduh/config/domains untuk contoh tambahan tentang pemblokiran layanan berdasarkan domain.
Instal dan mulai program (sudo diperlukan untuk mengikat ke port istimewa 53):
sudo brew services start dnsmasq
Untuk mengatur dnsmasq sebagai server DNS lokal, buka System Preferences > Network dan pilih antarmuka aktif, lalu tab DNS , pilih + dan tambahkan 127.0.0.1
, atau gunakan:
sudo networksetup -setdnsservers "Wi-Fi" 127.0.0.1
Konfirmasikan Dnsmasq dikonfigurasi:
$ scutil --dns | head
DNS configuration
resolver #1
search domain[0] : whatever
nameserver[0] : 127.0.0.1
flags : Request A records, Request AAAA records
reach : 0x00030002 (Reachable,Local Address,Directly Reachable Address)
$ networksetup -getdnsservers " Wi-Fi "
127.0.0.1
Catatan Beberapa perangkat lunak VPN mengesampingkan pengaturan DNS saat terhubung. Lihat edisi 24 dan drduh/config/scripts/macos-dns.sh.
Opsional Uji validasi DNSSEC untuk zona yang ditandatangani - balasannya harus berstatus NOERROR
dan berisi tanda ad
:
$ dig +dnssec icann.org | head
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47039
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
Uji validasi DNSSEC gagal untuk zona yang ditandatangani dengan tidak benar - balasannya harus berstatus SERVFAIL
:
$ dig www.dnssec-failed.org | head
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 15190
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
macOS hadir dengan lebih dari 100 sertifikat otoritas akar yang diinstal dari perusahaan seperti Apple, Verisign, Thawte, Digicert, dan lembaga pemerintah dari Tiongkok, Jepang, Belanda, AS, dan banyak lagi! Otoritas Sertifikat (CA) ini mampu menerbitkan sertifikat TLS untuk domain apa pun, sertifikat penandatanganan kode, dll. Apple memblokir sertifikat ini jika CA terbukti tidak dapat dipercaya. Mereka juga memiliki persyaratan ketat yang harus dipenuhi oleh CA tepercaya.
Untuk informasi lebih lanjut, lihat situs web CA/Forum Browser.
Periksa sertifikat akar sistem di Akses Rantai Kunci , di bawah tab Akar Sistem atau dengan menggunakan alat baris perintah security
dan file /System/Library/Keychains/SystemRootCertificates.keychain
.
Anda dapat menonaktifkan otoritas sertifikat secara manual melalui Akses Rantai Kunci dengan menandainya sebagai Jangan Percaya dan menutup jendela:
Peringatan: Hal ini akan menyebabkan browser Anda memberikan peringatan ketika Anda mengunjungi situs menggunakan sertifikat yang ditandatangani oleh CA ini dan dapat menyebabkan kerusakan pada perangkat lunak lain. Jangan curigai sertifikat akar Apple atau ini akan menyebabkan banyak kerusakan di macOS!
Risiko serangan man in the middle di mana otoritas sertifikat yang dipaksa atau disusupi yang dipercaya oleh sistem Anda mengeluarkan sertifikat TLS palsu/nakal cukup rendah, namun masih mungkin terjadi.
Pertimbangkan untuk menggunakan Privoxy sebagai proksi lokal untuk memfilter lalu lintas Web.
Instal dan mulai privoxy menggunakan Homebrew:
brew install privoxy
brew services start privoxy
Alternatifnya, paket instalasi bertanda tangan untuk Privoxy tersedia dari situs web mereka atau Sourceforge. Paket yang ditandatangani lebih aman daripada versi Homebrew dan menerima dukungan dari proyek Privoxy.
Secara default, Privoxy mendengarkan pada port TCP lokal 8118.
Atur proksi HTTP sistem untuk antarmuka jaringan aktif 127.0.0.1
dan 8118
:
sudo networksetup -setwebproxy "Wi-Fi" 127.0.0.1 8118
Setel proksi HTTPS sistem:
sudo networksetup -setsecurewebproxy "Wi-Fi" 127.0.0.1 8118
Ini juga dapat dilakukan melalui System Preferences > Network > Advanced > Proxies
Konfirmasikan proxy telah disetel:
$ scutil --proxy
<dictionary> {
ExceptionsList : <array> {
0 : *.local
1 : 169.254/16
}
FTPPassive : 1
HTTPEnable : 1
HTTPPort : 8118
HTTPProxy : 127.0.0.1
}
Meskipun sebagian besar lalu lintas Web saat ini dienkripsi, Privoxy masih berguna untuk memfilter berdasarkan pola nama domain, dan untuk meningkatkan permintaan HTTP yang tidak aman.
Misalnya, aturan berikut memblokir semua lalu lintas, kecuali ke .net
dan github.com
serta semua domain apple
:
{ +block{all} }
.
{ -block }
.apple.
.github.com
.net
Atau untuk sekedar memblokir domain Facebook, misalnya:
{ +block{facebook} }
.facebook*.
.fb.
.fbcdn*.
.fbinfra.
.fbsbx.
.fbsv.
.fburl.
.tfbnw.
.thefacebook.
fb*.akamaihd.net
Wildcard juga didukung.
Lihat drduh/config/privoxy/config dan drduh/config/privoxy/user.action untuk contoh Privoxy tambahan. Privoxy tidak perlu dimulai ulang setelah mengedit aturan filter user.action
.
Untuk memverifikasi lalu lintas diblokir atau dialihkan, gunakan curl atau antarmuka Privoxy yang tersedia di http://pp di browser:
ALL_PROXY=127.0.0.1:8118 curl example.com -IL | head
HTTP/1.1 403 Request blocked by Privoxy
Content-Length: 9001
Content-Type: text/html
Cache-Control: no-cache
Pragma: no-cache
ALL_PROXY=127.0.0.1:8118 curl github.com -IL | head
HTTP/1.1 302 Local Redirect from Privoxy
Location: https://github.com/
Content-Length: 0
HTTP/1.1 200 Connection established
HTTP/2 200
server: GitHub.com
Catatan Pengaturan proksi macOS tidak bersifat universal; aplikasi dan layanan mungkin tidak mengikuti pengaturan proxy sistem. Pastikan aplikasi yang ingin Anda proksi dikonfigurasi dengan benar dan verifikasi koneksi tidak bocor. Selain itu, pf dapat dikonfigurasi untuk mem-proxy lalu lintas secara transparan pada port tertentu.
Peramban Web kemungkinan besar mempunyai risiko keamanan dan privasi terbesar, karena tugas utamanya adalah mengunduh dan mengeksekusi kode yang tidak tepercaya dari Internet.
Properti penting browser modern adalah Same Origin Policy (SOP) yang mencegah skrip berbahaya di satu halaman memperoleh akses ke data sensitif di halaman web lain melalui Document Object Model (DOM). Jika SOP disusupi, keamanan seluruh browser akan terganggu.
Banyak eksploitasi browser didasarkan pada rekayasa sosial sebagai cara untuk mendapatkan kegigihan. Selalu berhati-hati dalam membuka situs yang tidak tepercaya dan terutama berhati-hati saat mengunduh perangkat lunak baru.
Pertimbangan penting lainnya tentang keamanan browser adalah ekstensi. Ini adalah masalah yang mempengaruhi Firefox dan Chrome. Penggunaan ekstensi browser harus dibatasi hanya pada ekstensi yang sangat diperlukan dan diterbitkan oleh pengembang tepercaya.
Mozilla Firefox, Google Chrome, Safari, dan Tor Browser semuanya merupakan browser yang direkomendasikan untuk tujuan unik dan individualnya.
Mozilla Firefox adalah browser sumber terbuka yang populer. Firefox menggantikan sebagian besar infrastruktur dan basis kodenya di bawah proyek Quantum dan Photon. Bagian dari proyek Quantum adalah mengganti kode C++ dengan Rust. Rust adalah bahasa pemrograman sistem dengan fokus pada keamanan dan keselamatan thread. Penerapan Rust diharapkan akan sangat meningkatkan postur keamanan Firefox secara keseluruhan.
Firefox menawarkan model keamanan yang mirip dengan Chrome: ia memiliki program bug bounty, meskipun tidak terlalu menguntungkan. Firefox mengikuti siklus rilis empat minggu.
Firefox mendukung file konfigurasi yang disediakan pengguna. Lihat drduh/config/firefox.user.js dan arkenfox/user.js untuk rekomendasi preferensi dan tindakan pengerasan. Lihat juga NoScript, sebuah ekstensi yang memungkinkan pemblokiran skrip selektif.
Firefox berfokus pada privasi pengguna. Ini mendukung perlindungan pelacakan dalam mode Penjelajahan Pribadi. Perlindungan pelacakan dapat diaktifkan untuk akun default, meskipun hal ini mungkin mengganggu pengalaman menjelajah di beberapa situs web. Firefox dalam mode perlindungan pelacakan ketat akan mengacak sidik jari Anda untuk menggagalkan skrip pelacakan dasar. Firefox menawarkan profil pengguna terpisah. Anda dapat memisahkan penjelajahan Anda di dalam profil dengan Kontainer Multi-Akun.
Firefox hanya mendukung Ekstensi Web melalui Web Extension Api, yang sangat mirip dengan Chrome. Pengiriman Ekstensi Web di Firefox gratis. Ekstensi Web di Firefox sebagian besar bersifat open source, meskipun Ekstensi Web tertentu merupakan hak milik.
Google Chrome didasarkan pada proyek Chromium sumber terbuka dengan komponen kepemilikan tertentu:
Chrome menawarkan sinkronisasi akun antara beberapa perangkat. Bagian dari data sinkronisasi termasuk kredensial ke situs web. Data dienkripsi dengan kata sandi akun.
Toko web Chrome untuk ekstensi membutuhkan biaya seumur hidup USD untuk mengirimkan ekstensi. Biaya rendah memungkinkan pengembangan banyak ekstensi web open source berkualitas yang tidak bertujuan untuk memonetisasi melalui penggunaan.
Chrome memiliki bagian terbesar dari penggunaan global dan merupakan platform target yang lebih disukai untuk sebagian besar pengembang. Teknologi utama didasarkan pada komponen open source Chrome, seperti node.js yang menggunakan mesin V8 Chrome dan kerangka kerja elektron, yang didasarkan pada kromium dan node.js. Basis pengguna Chrome yang luas menjadikannya target paling menarik bagi para aktor ancaman dan peneliti keamanan. Meskipun serangan terus -menerus, Chrome telah mempertahankan rekam jejak keamanan yang mengesankan selama bertahun -tahun. Ini bukan prestasi kecil.
Chrome menawarkan profil terpisah, kotak pasir yang kuat, pembaruan yang sering, dan membawa kredensial yang mengesankan. Selain itu, Google menawarkan program karunia yang sangat menguntungkan untuk melaporkan kerentanan, bersama dengan tim Project Zero sendiri. Ini berarti bahwa sejumlah besar orang yang sangat berbakat dan termotivasi terus -menerus mengaudit dan mengamankan kode krom.
Buat profil chrome terpisah untuk mengurangi risiko XSS dan memadukan cookie/identitas. Di setiap profil, nonaktifkan JavaScript dalam pengaturan krom dan konfigurasikan asal yang diizinkan. Anda juga harus menonaktifkan pengoptimal V8 untuk situs di mana Anda menggunakan JavaScript untuk lebih mengurangi permukaan serangan. Pergi ke Pengaturan -> Privasi dan Keamanan -> Keamanan -> Kelola Keamanan V8 -> Jangan mengizinkan situs untuk menggunakan V8 Optimizer
Baca lebih lanjut tentang manfaat menonaktifkan ini di sini.
Anda dapat memblokir pelacak dengan ublock asal Lite.
Ubah mesin pencari default dari Google untuk mengurangi pelacakan tambahan.
Nonaktifkan prefetching DNS (lihat juga prefetching DNS dan implikasi privasi (PDF)). Perhatikan bahwa Chrome dapat mencoba menyelesaikan DNS menggunakan Google 8.8.8.8
dan 8.8.4.4
Public Nameserver.
Baca Privasi Keamanan dan Kromium Chromium untuk informasi lebih lanjut. Baca Kebijakan Privasi Google untuk memahami bagaimana informasi pribadi dikumpulkan dan digunakan.
Safari adalah browser default di macOS. Ini juga browser yang paling dioptimalkan untuk mengurangi penggunaan baterai. Safari, seperti Chrome, memiliki komponen open source dan kepemilikan. Safari didasarkan pada Webkit Mesin Web Open Source, yang ada di mana -mana di antara ekosistem MacOS. WebKit digunakan oleh aplikasi Apple seperti Mail, iTunes, iBooks, dan App Store. Mesin Blink Chrome adalah garpu Webkit dan kedua mesin berbagi sejumlah kesamaan.
Safari mendukung fitur unik tertentu yang menguntungkan keamanan dan privasi pengguna. Blocker konten memungkinkan pembuatan aturan pemblokiran konten tanpa menggunakan JavaScript. Pendekatan berbasis aturan ini sangat meningkatkan penggunaan memori, keamanan, dan privasi. Safari 11 Memperkenalkan Pencegahan Pelacakan Cerdas, yang menghapus data pelacakan yang disimpan di Safari setelah periode non-interaksi oleh pengguna dari situs web pelacak. Safari dapat mengacak sidik jari Anda untuk mengurangi pelacakan. Safari tidak mendukung fitur -fitur tertentu seperti WebUSB atau API baterai sengaja karena alasan keamanan dan privasi. Tab pribadi di Safari memiliki cookie dan cache yang terisolasi yang dihancurkan saat Anda menutup tab. Safari juga mendukung profil yang setara dengan wadah multi-akun Firefox untuk memisahkan cookie dan penelusuran. Safari dapat dibuat secara signifikan lebih aman dengan mode penguncian, yang dapat dinonaktifkan per situs. Baca lebih lanjut tentang pencegahan pelacakan di Safari.
Safari menawarkan program hadiah hanya undangan untuk pelaporan bug kepada sejumlah peneliti keamanan tertentu. Program Bounty diumumkan selama presentasi Apple di Blackhat 2016.
Ekstensi Web di Safari memiliki opsi tambahan untuk menggunakan kode asli di lingkungan Safari's Sandbox, di samping API ekstensi web. Ekstensi web di Safari juga didistribusikan melalui App Store Apple. Pengajuan App Store hadir dengan manfaat tambahan dari kode ekstensi web yang diaudit oleh Apple. Di sisi lain pengiriman toko aplikasi datang dengan biaya yang curam. Biaya berlangganan pengembang tahunan biaya 100 USD (berbeda dengan biaya USD 5 Chrome dan pengiriman gratis Firefox). Biaya tinggi adalah penghalang bagi sebagian besar pengembang sumber terbuka. Akibatnya, Safari memiliki sedikit ekstensi untuk dipilih. Namun, Anda harus mengingat biaya tinggi saat memasang ekstensi. Diharapkan bahwa sebagian besar ekstensi web akan memiliki cara untuk memonetisasi penggunaan untuk menutupi biaya pengembang. Berhati -hatilah dengan ekstensi web yang kode sumbernya tidak terbuka.
Safari menyinkronkan preferensi pengguna dan kata sandi dengan gantungan kunci iCloud. Agar dapat dilihat dalam teks biasa, pengguna harus memasukkan kata sandi akun dari perangkat saat ini. Ini berarti bahwa pengguna dapat menyinkronkan data di seluruh perangkat dengan keamanan tambahan.
Safari mengikuti siklus pelepasan yang lebih lambat daripada Chrome dan Firefox (3-4 rilis minor, 1 rilis utama, per tahun). Fitur yang lebih baru lebih lambat untuk diadopsi ke saluran stabil. Pembaruan keamanan di Safari ditangani independen dari jadwal rilis yang stabil dan diinstal melalui App Store.
Lihat juga El1t/Ublock-Safari untuk menonaktifkan suar audit hyperlink.
Banyak browser yang diturunkan kromium tidak dianjurkan. Mereka biasanya sumber tertutup, tidak dirawat dengan buruk, dan membuat klaim meragukan untuk melindungi privasi.
Browser lain -lain, seperti pemberani, tidak dievaluasi dalam panduan ini, jadi tidak direkomendasikan atau tidak dianjurkan secara aktif.
Browser web mengungkapkan informasi dalam beberapa cara, misalnya melalui antarmuka Navigator, yang dapat mencakup informasi seperti versi browser, sistem operasi, izin situs, dan tingkat baterai perangkat. Banyak situs web juga menggunakan sidik jari kanvas untuk secara unik mengidentifikasi pengguna di seluruh sesi.
Untuk informasi lebih lanjut tentang penjelajahan yang sadar keamanan dan data apa yang dikirim oleh browser Anda, lihat Howto: Privacy & Security Sadar Penelusuran, browserleaks.com, apakah saya unik? dan EFF mencakup sumber daya trek Anda.
Untuk menghalangi pelacak pihak ketiga, disarankan untuk menonaktifkan cookie pihak ketiga sama sekali. Safari, Firefox, dan Chrome semuanya memblokir cookie pihak ketiga secara default. Cookie pihak ketiga adalah cookie yang terkait dengan file yang diminta oleh domain yang berbeda dari yang saat ini dilihat pengguna. Sebagian besar waktu cookie pihak ketiga digunakan untuk membuat profil penelusuran dengan melacak gerakan pengguna di web. Menonaktifkan cookie pihak ketiga mencegah respons dan skrip HTTP dari domain lain dari pengaturan cookie. Selain itu, cookie dihapus dari permintaan ke domain yang bukan domain asal dokumen, jadi cookie hanya dikirim ke situs saat ini yang sedang dilihat.
Waspadai WEBRTC juga, yang dapat mengungkapkan alamat IP lokal atau publik (jika terhubung ke VPN) Anda. Dalam Firefox dan Chrome/Chromium ini dapat dinonaktifkan dengan ekstensi seperti asal usul ublock. Mode penguncian menonaktifkan WebRTC di Safari.
Tor adalah jaringan anonim yang dapat digunakan untuk menjelajahi web dengan privasi tambahan. Tor Browser adalah versi firefox yang dimodifikasi dengan proxy untuk mengakses jaringan TOR.
Unduh Tor Browser dari proyek Tor.
Jangan mencoba mengkonfigurasi browser atau aplikasi lain untuk menggunakan TOR karena Anda dapat membuat kesalahan yang akan membahayakan anonimitas.
Unduh file dmg
dan asc
Signature, kemudian verifikasi gambar disk telah ditandatangani oleh pengembang Tor:
$ cd ~ /Downloads
$ file Tor *
TorBrowser-8.0.4-osx64_en-US.dmg: bzip2 compressed data, block size = 900k
TorBrowser-8.0.4-osx64_en-US.dmg.asc: PGP signature Signature (old)
$ gpg Tor * asc
[...]
gpg: Can't check signature: No public key
$ gpg --recv 0x4E2C6E8793298290
gpg: key 0x4E2C6E8793298290: public key "Tor Browser Developers (signing key) <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1
$ gpg --verify Tor * asc
gpg: assuming signed data in 'TorBrowser-8.0.4-osx64_en-US.dmg'
gpg: Signature made Mon Dec 10 07:16:22 2018 PST
gpg: using RSA key 0xEB774491D9FF06E2
gpg: Good signature from "Tor Browser Developers (signing key) <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: EF6E 286D DA85 EA2A 4BA7 DE68 4E2C 6E87 9329 8290
Subkey fingerprint: 1107 75B5 D101 FB36 BC6C 911B EB77 4491 D9FF 06E2
Pastikan Good signature from "Tor Browser Developers (signing key) <[email protected]>"
muncul di output. Peringatan tentang kunci yang tidak disertifikasi adalah jinak, karena belum diberi kepercayaan.
Lihat bagaimana saya bisa memverifikasi tanda tangan browser Tor? untuk informasi lebih lanjut.
Untuk menyelesaikan menginstal Tor Browser, buka gambar disk dan seret ke folder Aplikasi, atau dengan:
hdiutil mount TorBrowser-8.0.4-osx64_en-US.dmg
cp -r /Volumes/Tor Browser/Tor Browser.app/ ~/Applications/
Verifikasi Tanda Tangan Kode Aplikasi Tor dibuat oleh ID Pengembang Apple Proyek Tor Madpsayn6t , menggunakan spctl -a -v
dan/atau pkgutil --check-signature
Commands:
$ spctl -a -vv ~ /Applications/Tor Browser.app
/Users/drduh/Applications/Tor Browser.app: accepted
source=Developer ID
origin=Developer ID Application: The Tor Project, Inc (MADPSAYN6T)
$ pkgutil --check-signature ~ /Applications/Tor Browser.app
Package "Tor Browser.app":
Status: signed by a certificate trusted by Mac OS X
Certificate Chain:
1. Developer ID Application: The Tor Project, Inc (MADPSAYN6T)
SHA1 fingerprint: 95 80 54 F1 54 66 F3 9C C2 D8 27 7A 29 21 D9 61 11 93 B3 E8
-----------------------------------------------------------------------------
2. Developer ID Certification Authority
SHA1 fingerprint: 3B 16 6C 3B 7D C4 B7 51 C9 FE 2A FA B9 13 56 41 E3 88 E1 86
-----------------------------------------------------------------------------
3. Apple Root CA
SHA1 fingerprint: 61 1E 5B 66 2C 59 3A 08 FF 58 D1 4A E2 24 52 D1 98 DF 6C 60
Anda juga dapat menggunakan perintah codesign
untuk memeriksa tanda tangan kode aplikasi:
$ codesign -dvv ~ /Applications/Tor Browser.app
Executable=/Users/drduh/Applications/Tor Browser.app/Contents/MacOS/firefox
Identifier=org.torproject.torbrowser
Format=app bundle with Mach-O thin (x86_64)
CodeDirectory v=20200 size=229 flags=0x0(none) hashes=4+3 location=embedded
Library validation warning=OS X SDK version before 10.9 does not support Library Validation
Signature size=4247
Authority=Developer ID Application: The Tor Project, Inc (MADPSAYN6T)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Signed Time=Dec 10, 2018 at 12:18:45 AM
Info.plist entries=24
TeamIdentifier=MADPSAYN6T
Sealed Resources version=2 rules=12 files=128
Internal requirements count=1 size=188
Untuk melihat detail sertifikat lengkap untuk aplikasi yang ditandatangani, ekstrak dengan codesign
dan decode dengan openssl
:
$ codesign -d --extract-certificates ~ /Applications/Tor Browser.app
Executable=/Users/drduh/Applications/Tor Browser.app/Contents/MacOS/firefox
$ file codesign *
codesign0: data
codesign1: data
codesign2: data
$ openssl x509 -inform der -in codesign0 -subject -issuer -startdate -enddate -noout
subject= /UID=MADPSAYN6T/CN=Developer ID Application: The Tor Project, Inc (MADPSAYN6T)/OU=MADPSAYN6T/O=The Tor Project, Inc/C=US
issuer= /CN=Developer ID Certification Authority/OU=Apple Certification Authority/O=Apple Inc./C=US
notBefore=Apr 12 22:40:13 2016 GMT
notAfter=Apr 13 22:40:13 2021 GMT
$ openssl x509 -inform der -in codesign0 -fingerprint -noout
SHA1 Fingerprint=95:80:54:F1:54:66:F3:9C:C2:D8:27:7A:29:21:D9:61:11:93:B3:E8
$ openssl x509 -inform der -in codesign0 -fingerprint -sha256 -noout
SHA256 Fingerprint=B5:0D:47:F0:3E:CB:42:B6:68:1C:6F:38:06:2B:C2:9F:41:FA:D6:54:F1:29:D3:E4:DD:9C:C7:49:35:FF:F5:D9
TOR Lalu lintas dienkripsi ke simpul keluar (yaitu, tidak dapat dibaca oleh jaringan pasif Eavesdropper), tetapi penggunaan Tor dapat diidentifikasi - misalnya, jabat tangan TLS "nama host" akan muncul di Plaintext:
$ sudo tcpdump -An " tcp " | grep " www "
listening on pktap, link-type PKTAP (Apple DLT_PKTAP), capture size 262144 bytes
.............". ...www.odezz26nvv7jeqz1xghzs.com.........
.............#.!...www.bxbko3qi7vacgwyk4ggulh.com.........
.6....m.....>...:.........|../* Z....W....X=..6...C../....................................0...0..0.......'....F./0.. *.H........0%1#0!..U....www.b6zazzahl3h3faf4x2.com0...160402000000Z..170317000000Z0'1%0#..U....www.tm3ddrghe22wgqna5u8g.net0..0..
Lihat Spesifikasi Protokol Tor dan Tor/Tlshistory untuk informasi lebih lanjut.
Anda mungkin juga ingin mengaburkan lalu lintas untuk menggunakan transportasi pluggable.
Ini dapat dilakukan dengan menyiapkan Tor Relay Anda sendiri atau menemukan jembatan swasta atau publik yang ada untuk berfungsi sebagai simpul entri yang mengaburkan.
Untuk keamanan ekstra, gunakan Tor di dalam virtualBox atau VMware virtual GNU/Linux atau OpenBSD instance.
Akhirnya, ingat Tor Network memberikan anonimitas, yang tidak selalu identik dengan privasi. Jaringan TOR tidak menjamin perlindungan terhadap pengamat global yang mampu melakukan analisis dan korelasi lalu lintas. Lihat juga mencari anonimitas dalam panopticon internet (PDF) dan korelasi lalu lintas di Tor oleh musuh realistis (PDF).
Juga lihat Proyek Internet Tak Terlihat (I2P) dan perbandingan TOR -nya.
Saat memilih layanan VPN atau mengatur sendiri, pastikan untuk meneliti protokol, algoritma pertukaran utama, mekanisme otentikasi, dan jenis enkripsi yang digunakan. Beberapa protokol, seperti PPTP, harus dihindari demi Wireguard berbasis OpenVPN atau Linux pada Linux VM atau melalui satu set alat lintas platform.
Beberapa klien dapat mengirim lalu lintas melalui antarmuka berikutnya yang tersedia ketika VPN terganggu atau terputus. Lihat SCY/8122924 Sebagai contoh tentang cara mengizinkan lalu lintas hanya melalui VPN.
Ada panduan yang diperbarui untuk menyiapkan VPN IPSec pada mesin virtual (HWDSL2/Setup-IPSEC-VPN) atau wadah Docker (HWDSL2/Docker-IPSEC-VPN-Server).
Mungkin bermanfaat untuk mempertimbangkan lokasi geografis penyedia VPN. Lihat diskusi lebih lanjut dalam edisi 114.
Juga lihat tinjauan teknis dari klien MacOS built-in VPN L2TP/IPSEC dan IKEV2.
PGP adalah standar untuk menandatangani dan mengenkripsi data (terutama email) ujung ke ujung, sehingga hanya pengirim dan penerima yang dapat mengaksesnya.
GPG, atau GNU Privacy Guard , adalah program open source lisensi GPL yang sesuai dengan standar PGP.
GPG digunakan untuk memverifikasi tanda tangan perangkat lunak yang Anda unduh dan instal, serta file dan teks yang secara simetris atau asimetris.
Instal dari homebrew dengan brew install gnupg
.
Jika Anda lebih suka aplikasi grafis, unduh dan instal suite GPG.
Unduh drduh/config/gpg.conf untuk menggunakan pengaturan yang disarankan:
curl -o ~/.gnupg/gpg.conf https://raw.githubusercontent.com/drduh/config/master/gpg.conf
Lihat drduh/yubikey-puide untuk menghasilkan dan menyimpan kunci GPG dengan aman.
Baca panduan online dan berlatihlah mengenkripsi dan mendekripsi email untuk diri sendiri dan teman -teman Anda. Buat mereka tertarik dengan hal ini!
XMPP adalah standar terbuka yang dikembangkan oleh IETF yang memungkinkan pesan federasi lintas platform. Ada banyak pilihan untuk klien. Pertimbangkan untuk menggunakan salah satu klien berbasis browser untuk memanfaatkan kotak pasir browser Anda.
Bergantung pada penyedia, Anda mungkin tidak perlu apa pun selain nama pengguna dan kata sandi untuk mengatur akun Anda.
XMPP bukan E2EE secara default, Anda harus menggunakan enkripsi Omemo, jadi pastikan klien Anda mendukungnya.
Signal adalah E2EE Messenger canggih yang protokol ratchet ganda digunakan oleh banyak pembawa pesan lainnya termasuk WhatsApp, Google Message, dan Facebook Messenger.
Sinyal membutuhkan nomor telepon untuk mendaftar dan Anda harus menginstalnya di telepon Anda terlebih dahulu sebelum Anda dapat menggunakannya di desktop.
iMessage adalah messenger pesta pertama Apple. Ini membutuhkan akun Apple untuk menggunakannya.
Pastikan untuk mengaktifkan verifikasi kunci kontak dan memverifikasi dengan siapa pun yang Anda pesan untuk memastikan bahwa Anda mengirim pesan kepada orang yang tepat.
Anda dapat menggunakan iMessage dengan nomor telepon atau email, jadi pilih satu yang Anda nyaman dengan kontak Anda.
Catatan: Secara default, cadangan iCloud diaktifkan mana yang menyimpan salinan tombol enkripsi pesan Anda di server Apple tanpa E2EE. Baik menonaktifkan cadangan iCloud atau mengaktifkan perlindungan data lanjutan untuk mencegah hal ini. Juga ingat untuk memberi tahu mitra pesan Anda untuk melakukan hal yang sama!
Ada jumlah malware Mac yang terus meningkat di alam liar. Mac tidak kebal dari virus dan perangkat lunak berbahaya!
Beberapa malware dibundel dengan kedua perangkat lunak yang sah, seperti Java Bundling Ask Toolbar, dan beberapa dengan perangkat lunak tidak sah, seperti mac.backdoor.iworm dibundel dengan program bajakan.
Lihat Metode Kegigihan Malware pada Mac OS X (PDF) dan Kegigihan Malware di OS X Yosemite untuk belajar tentang bagaimana fungsi malware varietas taman.
Berlangganan pembaruan di blog Malwarebytes untuk Mac Security News saat ini.
Periksa juga malware tim peretasan untuk macOS: instalasi root untuk macOS, driver dukungan untuk agen mac dan agen RCS untuk Mac, yang merupakan contoh yang baik dari malware canggih dengan kemampuan untuk disembunyikan dari Userland (misalnya, ps
, ls
). Untuk lebih lanjut, lihat analisis singkat dari penginstal implan RCS dan reverse.put.as
Hanya menjalankan program dari App Store atau yang diaktakan oleh Apple yang akan membantu mengurangi malware. Apple melakukan pemindaian otomatis pada aplikasi notaris untuk malware. Aplikasi App Store menjalani proses peninjauan untuk menangkap malware.
Kalau tidak, dapatkan program dari sumber tepercaya seperti langsung dari situs web pengembang atau github. Selalu pastikan bahwa browser/terminal Anda menggunakan HTTPS saat mengunduh program apa pun.
Anda juga harus menghindari program yang meminta banyak izin dan program sumber tertutup pihak ketiga. Kode sumber terbuka memungkinkan siapa saja untuk mengaudit dan memeriksa kode untuk masalah keamanan/privasi.
Periksa apakah suatu program menggunakan kotak pasir aplikasi sebelum menjalankannya dengan menjalankan perintah berikut:
codesign -dvvv --entitlements - <path to your app>
Jika kotak pasir aplikasi diaktifkan, Anda akan lihat
[Key] com.apple.security.app-sandbox
[Value]
[Bool] true
Atau, Anda dapat memeriksa saat aplikasi berjalan dengan membuka monitor aktivitas dan menambahkan kolom "Sandbox".
Semua aplikasi App Store diminta untuk menggunakan App Sandbox.
Catatan: Browser seperti Google Chrome menggunakan kotak pasir mereka sendiri sehingga mereka tidak menggunakan kotak pasir aplikasi.
Periksa apakah suatu program menggunakan runtime yang dikeraskan sebelum menjalankannya menggunakan perintah berikut:
codesign --display --verbose /path/to/bundle.app
Jika runtime yang dikeraskan diaktifkan, Anda akan melihat flags=0x10000(runtime)
. "Runtime" berarti runtime yang dikeraskan diaktifkan. Mungkin ada bendera lain, tetapi bendera runtime adalah apa yang kami cari di sini.
Anda dapat mengaktifkan kolom dalam monitor aktivitas yang disebut "dibatasi" yang merupakan bendera yang mencegah program dari menyuntikkan kode melalui linker dinamis macOS. Idealnya, ini harus mengatakan "ya".
Aplikasi notaris diperlukan untuk menggunakan runtime yang dikeraskan.
Untuk memindai aplikasi dengan beberapa produk AV dan memeriksa perilakunya, mengunggahnya ke Virustotal sebelum menjalankannya.
MacOS dilengkapi dengan program AV bawaan yang disebut XProtect. XProtect secara otomatis berjalan di latar belakang dan memperbarui tanda tangannya yang digunakannya untuk mendeteksi malware tanpa Anda harus melakukan apa pun. Jika mendeteksi malware yang sudah berjalan, itu akan bekerja untuk menghapus dan memitigasinya seperti program AV lainnya.
Aplikasi seperti BlockBlock atau MacLaunch.sh dapat membantu mencegah malware yang persisten.
Program anti-virus yang dipasang secara lokal umumnya merupakan pedang bermata dua: mereka dapat menangkap malware "varietas taman", tetapi juga dapat meningkatkan permukaan serangan untuk musuh yang canggih karena mode operasi istimewa mereka. Mereka juga biasanya menelepon ke rumah untuk mengirim sampel untuk menangkap malware terbaru. Ini bisa menjadi masalah privasi.
Lihat Sophail: Serangan Terapan terhadap Antivirus (PDF), analisis dan eksploitasi kerentanan ESET, perangkat lunak keamanan populer berada di bawah serangan NSA dan GCHQ tanpa henti, dan bagaimana Israel menangkap peretas Rusia menjelajahi dunia untuk rahasia AS.
Gatekeeper mencoba mencegah aplikasi yang tidak diwali.
Jika Anda mencoba menjalankan aplikasi yang tidak dinotasikan, penjaga gerbang akan memberi Anda peringatan. Ini dapat dengan mudah dilewati jika Anda pergi ke Privacy & Security , gulir ke bawah ke bawah dan klik Buka di aplikasi Anda. Kemudian penjaga gerbang akan memungkinkan Anda untuk menjalankannya.
Gatekeeper tidak mencakup semua binari, hanya aplikasi jadi berhati -hatilah saat menjalankan jenis file lainnya.
Untuk memverifikasi SIP diaktifkan, gunakan csrutil status
, yang seharusnya mengembalikan: System Integrity Protection status: enabled.
Jika tidak, aktifkan SIP melalui mode pemulihan.
MacOS melampirkan metadata (APFS Extended Atribut) ke file yang diunduh, yang dapat dilihat dengan perintah mdls
dan xattr
:
$ ls -l@ ~ /Downloads/TorBrowser-8.0.4-osx64_en-US.dmg
-rw-r--r--@ 1 drduh staff 63M Jan 1 12:00 TorBrowser-8.0.4-osx64_en-US.dmg
com.apple.metadata:kMDItemWhereFroms 46B
com.apple.quarantine 57B
$ mdls ~ /Downloads/TorBrowser-8.0.4-osx64_en-US.dmg
kMDItemContentCreationDate = 2019-01-01 00:00:00 +0000
kMDItemContentCreationDate_Ranking = 2019-01-01 00:00:00 +0000
kMDItemContentModificationDate = 2019-01-01 00:00:00 +0000
kMDItemContentType = "com.apple.disk-image-udif"
kMDItemContentTypeTree = (
"public.archive",
"public.item",
"public.data",
"public.disk-image",
"com.apple.disk-image",
"com.apple.disk-image-udif"
)
kMDItemDateAdded = 2019-01-01 00:00:00 +0000
kMDItemDateAdded_Ranking = 2019-01-01 00:00:00 +0000
kMDItemDisplayName = "TorBrowser-8.0.4-osx64_en-US.dmg"
kMDItemFSContentChangeDate = 2019-01-01 00:00:00 +0000
kMDItemFSCreationDate = 2019-01-01 00:00:00 +0000
kMDItemFSCreatorCode = ""
kMDItemFSFinderFlags = 0
kMDItemFSHasCustomIcon = (null)
kMDItemFSInvisible = 0
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery = (null)
kMDItemFSLabel = 0
kMDItemFSName = "TorBrowser-8.0.4-osx64_en-US.dmg"
kMDItemFSNodeCount = (null)
kMDItemFSOwnerGroupID = 5000
kMDItemFSOwnerUserID = 501
kMDItemFSSize = 65840402
kMDItemFSTypeCode = ""
kMDItemInterestingDate_Ranking = 2019-01-01 00:00:00 +0000
kMDItemKind = "Disk Image"
kMDItemWhereFroms = (
"https://dist.torproject.org/torbrowser/8.0.4/TorBrowser-8.0.4-osx64_en-US.dmg",
"https://www.torproject.org/projects/torbrowser.html.en"
)
$ xattr -l ~ /Downloads/TorBrowser-8.0.4-osx64_en-US.dmg
com.apple.metadata:kMDItemWhereFroms:
00000000 62 70 6C 69 73 74 30 30 A2 01 02 5F 10 4D 68 74 |bplist00..._.Mht|
00000010 74 70 73 3A 2F 2F 64 69 73 74 2E 74 6F 72 70 72 |tps://dist.torpr|
00000020 6F 6A 65 63 74 2E 6F 72 67 2F 74 6F 72 62 72 6F |oject.org/torbro|
[...]
com.apple.quarantine: 0081;58519ffa;Google Chrome.app;1F032CAB-F5A1-4D92-84EB-CBECA971B7BC
Atribut metadata juga dapat dihapus dengan bendera -d
:
xattr -d com.apple.metadata:kMDItemWhereFroms ~/Downloads/TorBrowser-8.0.4-osx64_en-US.dmg
xattr -d com.apple.quarantine ~/Downloads/TorBrowser-8.0.4-osx64_en-US.dmg
xattr -l ~/Downloads/TorBrowser-8.0.4-osx64_en-US.dmg
Metadata dan artefak lainnya dapat ditemukan di direktori termasuk, tetapi tidak terbatas pada, ~/Library/Preferences/
, ~/Library/Containers/<APP>/Data/Library/Preferences
, /Library/Preferences
, beberapa di antaranya terperinci di bawah.
~/Library/Preferences/com.apple.sidebarlists.plist
berisi daftar historis volume yang terlampir. Untuk menghapusnya, gunakan perintah /usr/libexec/PlistBuddy -c "delete :systemitems:VolumesList" ~/Library/Preferences/com.apple.sidebarlists.plist
/Library/Preferences/com.apple.Bluetooth.plist
berisi metadata Bluetooth, termasuk riwayat perangkat. Jika Bluetooth tidak digunakan, metadata dapat dibersihkan dengan:
sudo defaults delete /Library/Preferences/com.apple.Bluetooth.plist DeviceCache
sudo defaults delete /Library/Preferences/com.apple.Bluetooth.plist IDSPairedDevices
sudo defaults delete /Library/Preferences/com.apple.Bluetooth.plist PANDevices
sudo defaults delete /Library/Preferences/com.apple.Bluetooth.plist PANInterfaces
sudo defaults delete /Library/Preferences/com.apple.Bluetooth.plist SCOAudioDevices
/var/spool/cups
berisi cache pekerjaan printer cangkir. Untuk menghapusnya, gunakan perintah:
sudo rm -rfv /var/spool/cups/c0*
sudo rm -rfv /var/spool/cups/tmp/*
sudo rm -rfv /var/spool/cups/cache/job.cache*
Untuk menghapus daftar perangkat iOS yang terhubung, gunakan:
sudo defaults delete /Users/$USER/Library/Preferences/com.apple.iPod.plist "conn:128:Last Connect"
sudo defaults delete /Users/$USER/Library/Preferences/com.apple.iPod.plist Devices
sudo defaults delete /Library/Preferences/com.apple.iPod.plist "conn:128:Last Connect"
sudo defaults delete /Library/Preferences/com.apple.iPod.plist Devices
sudo rm -rfv /var/db/lockdown/*
Data Thumbnail QuickLook dapat dihapus menggunakan perintah qlmanage -r cache
, tetapi ini menulis ke resetreason
file di direktori QuickLook, dan menyatakan bahwa cache QuickLook dibersihkan secara manual. Nonaktifkan cache thumbnail dengan qlmanage -r disablecache
Ini juga dapat dihapus dengan mendapatkan nama direktori dengan getconf DARWIN_USER_CACHE_DIR
dan sudo getconf DARWIN_USER_CACHE_DIR
, lalu menghapusnya:
rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/exclusive
rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/index.sqlite
rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/index.sqlite-shm
rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/index.sqlite-wal
rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/resetreason
rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/thumbnails.data
Demikian pula, untuk pengguna root:
sudo rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/thumbnails.fraghandler
sudo rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/exclusive
sudo rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/index.sqlite
sudo rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/index.sqlite-shm
sudo rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/index.sqlite-wal
sudo rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/resetreason
sudo rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/thumbnails.data
sudo rm -rfv $(getconf DARWIN_USER_CACHE_DIR)/com.apple.QuickLook.thumbnailcache/thumbnails.fraghandler
Lihat juga cache 'QuickLook' dapat membocorkan data terenkripsi.
Untuk menghapus preferensi pencari:
defaults delete ~/Library/Preferences/com.apple.finder.plist FXDesktopVolumePositions
defaults delete ~/Library/Preferences/com.apple.finder.plist FXRecentFolders
defaults delete ~/Library/Preferences/com.apple.finder.plist RecentMoveAndCopyDestinations
defaults delete ~/Library/Preferences/com.apple.finder.plist RecentSearches
defaults delete ~/Library/Preferences/com.apple.finder.plist SGTRecentFileSearches
File diagnostik tambahan dapat ditemukan di direktori berikut - tetapi kehati -hatian harus diambil sebelum menghapus apa pun, karena dapat merusak penebangan atau menyebabkan masalah lain:
/var/db/CoreDuet/
/var/db/diagnostics/
/var/db/systemstats/
/var/db/uuidtext/
/var/log/DiagnosticMessages/
MacOS disimpan data Wi-Fi pilihan (termasuk kredensial) di NVRAM. Untuk menghapusnya, gunakan perintah berikut:
sudo nvram -d 36C28AB5-6566-4C50-9EBD-CBB920F83843:current-network
sudo nvram -d 36C28AB5-6566-4C50-9EBD-CBB920F83843:preferred-networks
sudo nvram -d 36C28AB5-6566-4C50-9EBD-CBB920F83843:preferred-count
MacOS dapat mengumpulkan informasi sensitif tentang apa yang Anda ketik, bahkan jika kamus pengguna dan saran tidak aktif. Untuk menghapusnya, dan mencegahnya dibuat lagi, gunakan perintah berikut:
rm -rfv "~/Library/LanguageModeling/*" "~/Library/Spelling/*" "~/Library/Suggestions/*"
chmod -R 000 ~/Library/LanguageModeling ~/Library/Spelling ~/Library/Suggestions
chflags -R uchg ~/Library/LanguageModeling ~/Library/Spelling ~/Library/Suggestions
Metadata Dukungan Aplikasi QuickLook dapat dihapus dan dikunci dengan perintah berikut:
rm -rfv "~/Library/Application Support/Quick Look/*"
chmod -R 000 "~/Library/Application Support/Quick Look"
chflags -R uchg "~/Library/Application Support/Quick Look"
Metadata revisi dokumen disimpan di /.DocumentRevisions-V100
dan dapat dibersihkan dan dikunci dengan perintah berikut - hati -hati harus diambil karena ini dapat merusak beberapa aplikasi inti Apple:
sudo rm -rfv /.DocumentRevisions-V100/*
sudo chmod -R 000 /.DocumentRevisions-V100
sudo chflags -R uchg /.DocumentRevisions-V100
Metadata status aplikasi yang disimpan dapat dihapus dan dikunci dengan perintah berikut:
rm -rfv ~/Library/Saved Application State/*
rm -rfv ~/Library/Containers/<APPNAME>/Data/Library/Saved Application State
chmod -R 000 ~/Library/Saved Application State/
chmod -R 000 ~/Library/Containers/<APPNAME>/Data/Library/Saved Application State
chflags -R uchg ~/Library/Saved Application State/
chflags -R uchg ~/Library/Containers/<APPNAME>/Data/Library/Saved Application State
Autosave Metadata dapat dihapus dan dikunci dengan perintah berikut:
rm -rfv "~/Library/Containers/<APP>/Data/Library/Autosave Information"
rm -rfv "~/Library/Autosave Information"
chmod -R 000 "~/Library/Containers/<APP>/Data/Library/Autosave Information"
chmod -R 000 "~/Library/Autosave Information"
chflags -R uchg "~/Library/Containers/<APP>/Data/Library/Autosave Information"
chflags -R uchg "~/Library/Autosave Information"
Database Siri Analytics, yang dibuat bahkan jika agen peluncuran Siri dinonaktifkan, dapat dihapus dan dikunci dengan perintah berikut:
rm -rfv ~/Library/Assistant/SiriAnalytics.db
chmod -R 000 ~/Library/Assistant/SiriAnalytics.db
chflags -R uchg ~/Library/Assistant/SiriAnalytics.db
~/Library/Preferences/com.apple.iTunes.plist
berisi iTunes metadata. Data pencarian iTunes baru -baru ini dapat dihapus dengan perintah berikut:
defaults delete ~/Library/Preferences/com.apple.iTunes.plist recentSearches
Jika Anda tidak menggunakan layanan terkait akun Apple, tombol-tombol berikut juga dapat dihapus, menggunakan perintah berikut:
defaults delete ~/Library/Preferences/com.apple.iTunes.plist StoreUserInfo
defaults delete ~/Library/Preferences/com.apple.iTunes.plist WirelessBuddyID
Semua media yang dimainkan di quicktime player dapat ditemukan di:
~/Library/Containers/com.apple.QuickTimePlayerX/Data/Library/Preferences/com.apple.QuickTimePlayerX.plist
Metadata tambahan mungkin ada di file berikut:
~/Library/Containers/com.apple.appstore/Data/Library/Preferences/com.apple.commerce.knownclients.plist
~/Library/Preferences/com.apple.commerce.plist
~/Library/Preferences/com.apple.QuickTimePlayerX.plist
Menghasilkan kata sandi yang kuat menggunakan urandom
dan tr
:
tr -dc '[:graph:]' < /dev/urandom | fold -w 20 | head -1
Asisten Kata Sandi di Keychain Access juga dapat menghasilkan kredensial yang aman.
Pertimbangkan untuk menggunakan DiCeware untuk kata sandi yang berkesan.
GNUPG juga dapat digunakan untuk mengelola kata sandi dan file terenkripsi lainnya (lihat DRDUH/PURSE dan DRDUH/PWD.SH).
Pastikan semua akun online yang memenuhi syarat memiliki otentikasi multi-faktor yang diaktifkan. Bentuk terkuat dari otentikasi multi-faktor adalah Webauthn, diikuti oleh autentikator berbasis aplikasi, dan kode berbasis SMS paling lemah.
Yubikey adalah token perangkat keras yang terjangkau dengan dukungan Webauthn. Ini juga dapat digunakan untuk menyimpan kunci kriptografi untuk enkripsi GNUPG dan otentikasi SSH - lihat drduh/yubikey -guide.
Enkripsi file secara lokal sebelum mendukungnya ke media eksternal atau layanan online.
Jika model ancaman Anda memungkinkannya, Anda harus mengikuti model cadangan 3-2-1 sebagaimana diuraikan oleh CISA. Simpan 3 salinan: Cadangan asli dan dua. Simpan cadangan pada 2 jenis media yang berbeda, misalnya pada drive lokal dan penyimpanan cloud. Simpan 1 salinan di luar kantor.
Time Machine adalah alat bawaan untuk menangani cadangan pada macOS. Dapatkan drive eksternal atau drive jaringan untuk mendukung dan mengenkripsi cadangan Anda.
GNUPG dapat digunakan dengan kata sandi statis atau kunci publik (dengan kunci pribadi yang disimpan di yubikey).
Kompres dan enkripsi direktori menggunakan dengan kata sandi:
tar zcvf - ~/Downloads | gpg -c > ~/Desktop/backup-$(date +%F-%H%M).tar.gz.gpg
Mendekripsi dan mendekompres direktori:
gpg -o ~/Desktop/decrypted-backup.tar.gz -d ~/Desktop/backup-*.tar.gz.gpg
tar zxvf ~/Desktop/decrypted-backup.tar.gz
Volume terenkripsi juga dapat dibuat menggunakan utilitas disk atau hdiutil
:
hdiutil create ~/Desktop/encrypted.dmg -encryption -size 50M -volname "secretStuff"
hdiutil mount ~/Desktop/encrypted.dmg
cp -v ~/Documents/passwords.txt /Volumes/secretStuff
hdiutil eject /Volumes/secretStuff
Aplikasi dan layanan tambahan yang menawarkan cadangan meliputi:
MacOS mengingat titik akses yang telah terhubung. Seperti semua perangkat nirkabel, Mac akan menyiarkan semua nama titik akses yang diingatnya (misalnya, MyHomeNetwork ) setiap kali mencari jaringan, seperti saat bangun dari tidur.
Ini adalah risiko privasi, jadi hapus jaringan dari daftar di System Preferences > Network > Advanced ketika mereka tidak lagi diperlukan.
Juga lihat sinyal dari kerumunan: mengungkap hubungan sosial melalui Smartphone Probe (PDF).
Informasi Wi-Fi Tersimpan (SSID, Koneksi Terakhir, dll.) Dapat ditemukan di /Library/Preferences/SystemConfiguration/com.apple.airport.preferences.plist
Anda dapat memiliki alamat MAC acak yang berbeda untuk setiap jaringan yang berputar dari waktu ke waktu. Ini akan membantu mencegah Anda dilacak di seluruh jaringan dan di jaringan yang sama dari waktu ke waktu.
MacOS menyimpan SSID dan kata sandi Wi-Fi di NVRAM agar mode pemulihan dapat mengakses Internet. Pastikan untuk menghapus NVRAM atau menghilangkan otensifikasi Mac Anda dari akun Apple Anda, yang akan menghapus NVRAM, sebelum melewati Mac. Mengatur ulang SMC akan membersihkan beberapa NVRAM, tetapi tidak semua.
Akhirnya, perlindungan WEP pada jaringan nirkabel tidak aman dan Anda hanya boleh terhubung ke jaringan yang dilindungi WPA3 bila memungkinkan.
Untuk koneksi SSH keluar, gunakan tombol perangkat keras atau yang dilindungi kata sandi, atur host jarak jauh dan pertimbangkan hashing untuk privasi tambahan. Lihat DRDUH/CONFIG/SSH_CONFIG untuk opsi klien yang disarankan.
Anda juga dapat menggunakan SSH untuk membuat terowongan terenkripsi untuk mengirim lalu lintas, mirip dengan VPN.
Misalnya, untuk menggunakan privoxy yang berjalan pada port host jarak jauh 8118:
ssh -C -L 5555:127.0.0.1:8118 [email protected]
sudo networksetup -setwebproxy "Wi-Fi" 127.0.0.1 5555
sudo networksetup -setsecurewebproxy "Wi-Fi" 127.0.0.1 5555
Atau menggunakan koneksi SSH sebagai proxy kaus kaki:
ssh -NCD 3000 [email protected]
Secara default, macOS tidak memiliki SSHD atau login jarak jauh diaktifkan.
Untuk mengaktifkan SSHD dan memungkinkan koneksi SSH yang masuk:
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
Atau gunakan menu System Preferensi > Berbagi .
Jika mengaktifkan SSHD, pastikan untuk menonaktifkan otentikasi kata sandi dan pertimbangkan pengerasan konfigurasi Anda lebih lanjut. Lihat DRDUH/CONFIG/SSHD_CONFIG untuk opsi yang disarankan.
Konfirmasikan apakah SSHD sedang berjalan:
sudo lsof -Pni TCP:22
Jaga agar Mac Anda aman secara fisik setiap saat dan jangan biarkan itu tanpa pengawasan di depan umum.
Penyerang yang terampil dengan akses fisik tanpa pengawasan dapat menginstal keylogger perangkat keras untuk merekam semua penekanan tombol Anda. Menggunakan Mac dengan keyboard bawaan atau keyboard Bluetooth membuat ini lebih sulit karena banyak versi off-the-shelf dari serangan ini dirancang untuk dicolokkan di antara keyboard USB dan komputer Anda.
Untuk melindungi dari pencurian fisik selama penggunaan, Anda dapat menggunakan alat anti-forensik seperti Buskill atau SwiftGuard (USBKill yang diperbarui, dengan antarmuka pengguna grafis). Semua menanggapi acara USB dan dapat segera mematikan komputer Anda jika perangkat Anda terpisah secara fisik dari Anda atau perangkat yang tidak sah terhubung.
Pertimbangkan untuk membeli layar/filter privasi untuk digunakan di depan umum.
Segel kuku dan tamper-evidence dapat diterapkan pada komponen untuk mendeteksi perusakan.
MacOS memiliki kemampuan audit OpenBSM (Modul Keamanan Dasar) yang kuat. Anda dapat menggunakannya untuk memantau eksekusi proses, aktivitas jaringan, dan banyak lagi.
Untuk ekor log audit, gunakan utilitas praudit
:
$ sudo praudit -l /dev/auditpipe
header,201,11,execve(2),0,Thu Sep 1 12:00:00 2015, + 195 msec,exec arg,/Applications/.evilapp/rootkit,path,/Applications/.evilapp/rootkit,path,/Applications/.evilapp/rootkit,attribute,100755,root,wheel,16777220,986535,0,subject,drduh,root,wheel,root,wheel,412,100005,50511731,0.0.0.0,return,success,0,trailer,201,
header,88,11,connect(2),0,Thu Sep 1 12:00:00 2015, + 238 msec,argument,1,0x5,fd,socket-inet,2,443,173.194.74.104,subject,drduh,root,wheel,root,wheel,326,100005,50331650,0.0.0.0,return,failure : Operation now in progress,4354967105,trailer,88
header,111,11,OpenSSH login,0,Thu Sep 1 12:00:00 2015, + 16 msec,subject_ex,drduh,drduh,staff,drduh,staff,404,404,49271,::1,text,successful login drduh,return,success,0,trailer,111,
Lihat halaman manual untuk audit
, praudit
, audit_control
dan file lainnya di /etc/security
Catatan Meskipun man audit
mengatakan -bendera -s
akan menyinkronkan konfigurasi audit, tampaknya perlu untuk me -reboot agar perubahan berlaku.
Lihat artikel di ilostmynotes.blogspot.com dan derflounder.wordpress.com untuk informasi lebih lanjut.
Catatan Perlindungan integritas sistem mengganggu DTRACE, sehingga tidak mungkin untuk menggunakannya dalam versi macOS terbaru tanpa menonaktifkan SIP.
iosnoop
memonitor disk i/oopensnoop
terbukaexecsnoop
memonitor eksekusi proseserrinfo
memantau panggilan sistem gagaldtruss
memantau semua panggilan sistem Lihat man -k dtrace
untuk informasi lebih lanjut.
ps -ef
mencantumkan informasi tentang semua proses yang berjalan.
Anda juga dapat melihat proses dengan monitor aktivitas .
launchctl list
sudo launchctl list
Daftar LaunchCTL Memuat dan Menjalankan Daemon dan Agen Peluncuran Pengguna dan Sistem.
Daftar file jaringan terbuka:
sudo lsof -Pni
Daftar Isi berbagai struktur data terkait jaringan:
sudo netstat -atln
Wireshark dapat digunakan dari baris perintah dengan tshark
.
Pantau permintaan dan balasan DNS:
tshark -Y "dns.flags.response == 1" -Tfields
-e frame.time_delta
-e dns.qry.name
-e dns.a
-Eseparator=,
Monitor Permintaan dan Tanggapan HTTP:
tshark -Y "http.request or http.response" -Tfields
-e ip.dst
-e http.request.full_uri
-e http.request.method
-e http.response.code
-e http.response.phrase
-Eseparator=/s
Monitor sertifikat X509 (SSL/TLS):
tshark -Y "ssl.handshake.certificate" -Tfields
-e ip.src
-e x509sat.uTF8String
-e x509sat.printableString
-e x509sat.universalString
-e x509sat.IA5String
-e x509sat.teletexString
-Eseparator=/s -Equote=d
Google/Santa adalah perangkat lunak keamanan yang dikembangkan untuk armada Macintosh perusahaan Google dan bersumber terbuka.
Santa adalah sistem otorisasi akses biner dan file untuk macOS. Ini terdiri dari ekstensi sistem yang memantau eksekusi, daemon yang membuat keputusan eksekusi berdasarkan isi database lokal, agen GUI yang memberi tahu pengguna jika terjadi keputusan blok dan utilitas baris perintah untuk mengelola sistem dan sistem dan Sinkronisasi database dengan server.
Santa menggunakan API otorisasi kernel untuk memantau dan mengizinkan/melarang binari dari pelaksanaan di kernel. Binari dapat terdaftar putih atau hitam dengan hash unik atau sertifikat pengembang penandatanganan. Santa dapat digunakan hanya untuk mengizinkan eksekusi kode tepercaya, atau ke daftar hitam malware yang diketahui dari mengeksekusi pada Mac, mirip dengan perangkat lunak BIT9 untuk Windows.
Catatan Santa saat ini tidak memiliki antarmuka pengguna grafis untuk mengelola aturan. Instruksi berikut hanya untuk pengguna tingkat lanjut!
Untuk menginstal Santa, kunjungi halaman rilis dan unduh gambar disk terbaru, mount dan instal paket yang terkandung:
hdiutil mount ~/Downloads/santa-0.9.20.dmg
sudo installer -pkg /Volumes/santa-0.9.20/santa-0.9.20.pkg -tgt /
Secara default, Santa menginstal dalam mode "Monitor" (artinya, tidak ada yang diblokir, hanya dicatat) dan dilengkapi dengan dua aturan: satu untuk biner Apple dan satu lagi untuk perangkat lunak Santa itu sendiri.
Verifikasi Santa sedang berjalan dan modul kernelnya dimuat:
$ santactl status
>>> Daemon Info
Mode | Monitor
File Logging | No
Watchdog CPU Events | 0 (Peak: 0.00%)
Watchdog RAM Events | 0 (Peak: 0.00MB)
>>> Kernel Info
Kernel cache count | 0
>>> Database Info
Binary Rules | 0
Certificate Rules | 2
Events Pending Upload | 0
$ ps -ef | grep " [s]anta "
0 786 1 0 10:01AM ?? 0:00.39 /Library/Extensions/santa-driver.kext/Contents/MacOS/santad --syslog
$ kextstat | grep santa
119 0 0xffffff7f822ff000 0x6000 0x6000 com.google.santa-driver (0.9.14) 693D8E4D-3161-30E0-B83D-66A273CAE026 <5 4 3 1>
Buat aturan daftar hitam untuk mencegah iTunes mengeksekusi:
$ sudo santactl rule --blacklist --path /Applications/iTunes.app/
Added rule for SHA-256: e1365b51d2cb2c8562e7f1de36bfb3d5248de586f40b23a2ed641af2072225b3.
Cobalah untuk meluncurkan iTunes - itu akan diblokir.
$ open /Applications/iTunes.app/
LSOpenURLsWithRole() failed with error -10810 for the file /Applications/iTunes.app.
Untuk menghapus aturan:
$ sudo santactl rule --remove --path /Applications/iTunes.app/
Removed rule for SHA-256: e1365b51d2cb2c8562e7f1de36bfb3d5248de586f40b23a2ed641af2072225b3.
Buka iTunes:
$ open /Applications/iTunes.app/
[iTunes will open successfully]
Buat program C baru, C:
$ cat << EOF > foo.c
> # include <stdio.h>
> main () { printf( " Hello Worldn”); }
> EOF
Kompilasi program dengan GCC (memerlukan instalasi XCODE atau alat baris perintah):
$ gcc -o foo foo.c
$ file foo
foo: Mach-O 64-bit executable x86_64
$ codesign -d foo
foo: code object is not signed at all
Jalankan:
$ ./foo
Hello World
Toggle Santa ke mode "Lockdown", yang hanya memungkinkan binari resmi untuk menjalankan:
$ sudo defaults write /var/db/santa/config.plist ClientMode -int 2
Cobalah untuk menjalankan biner yang tidak ditandatangani:
$ ./foo
bash: ./foo: Operation not permitted
Santa
The following application has been blocked from executing
because its trustworthiness cannot be determined.
Path: /Users/demouser/foo
Identifier: 4e11da26feb48231d6e90b10c169b0f8ae1080f36c168ffe53b1616f7505baed
Parent: bash (701)
Untuk mengesahkan biner, tentukan jumlah SHA-256-nya:
$ santactl fileinfo /Users/demouser/foo
Path : /Users/demouser/foo
SHA-256 : 4e11da26feb48231d6e90b10c169b0f8ae1080f36c168ffe53b1616f7505baed
SHA-1 : 4506f3a8c0a5abe4cacb98e6267549a4d8734d82
Type : Executable (x86-64)
Code-signed : No
Rule : Blacklisted (Unknown)
Tambahkan aturan baru:
$ sudo santactl rule --whitelist --sha256 4e11da26feb48231d6e90b10c169b0f8ae1080f36c168ffe53b1616f7505baed
Added rule for SHA-256: 4e11da26feb48231d6e90b10c169b0f8ae1080f36c168ffe53b1616f7505baed.
Jalankan:
$ ./foo
Hello World
Diizinkan dan berhasil!
Aplikasi juga dapat diizinkan oleh sertifikat pengembang. Misalnya, unduh dan jalankan Google Chrome - itu akan diblokir oleh Santa dalam mode "Lockdown":
$ curl -sO https://dl.google.com/chrome/mac/stable/GGRO/googlechrome.dmg
$ hdiutil mount googlechrome.dmg
$ cp -r /Volumes/Google Chrome/Google Chrome.app /Applications/
$ open /Applications/Google Chrome.app/
LSOpenURLsWithRole() failed with error -10810 for the file /Applications/Google Chrome.app.
Otorisasi aplikasi oleh Sertifikat Pengembang (item pertama dalam rantai penandatanganan):
$ santactl fileinfo /Applications/Google Chrome.app/
Path : /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
SHA-256 : 0eb08224d427fb1d87d2276d911bbb6c4326ec9f74448a4d9a3cfce0c3413810
SHA-1 : 9213cbc7dfaaf7580f3936a915faa56d40479f6a
Bundle Name : Google Chrome
Bundle Version : 2883.87
Bundle Version Str : 55.0.2883.87
Type : Executable (x86-64)
Code-signed : Yes
Rule : Blacklisted (Unknown)
Signing Chain:
1. SHA-256 : 15b8ce88e10f04c88a5542234fbdfc1487e9c2f64058a05027c7c34fc4201153
SHA-1 : 85cee8254216185620ddc8851c7a9fc4dfe120ef
Common Name : Developer ID Application: Google Inc.
Organization : Google Inc.
Organizational Unit : EQHXZ8M8AV
Valid From : 2012/04/26 07:10:10 -0700
Valid Until : 2017/04/27 07:10:10 -0700
2. SHA-256 : 7afc9d01a62f03a2de9637936d4afe68090d2de18d03f29c88cfb0b1ba63587f
SHA-1 : 3b166c3b7dc4b751c9fe2afab9135641e388e186
Common Name : Developer ID Certification Authority
Organization : Apple Inc.
Organizational Unit : Apple Certification Authority
Valid From : 2012/02/01 14:12:15 -0800
Valid Until : 2027/02/01 14:12:15 -0800
3. SHA-256 : b0b1730ecbc7ff4505142c49f1295e6eda6bcaed7e2c68c5be91b5a11001f024
SHA-1 : 611e5b662c593a08ff58d14ae22452d198df6c60
Common Name : Apple Root CA
Organization : Apple Inc.
Organizational Unit : Apple Certification Authority
Valid From : 2006/04/25 14:40:36 -0700
Valid Until : 2035/02/09 13:40:36 -0800
Dalam hal ini, 15b8ce88e10f04c88a5542234fbdfc1487e9c2f64058a05027c7c34fc4201153
adalah SHA -256 dari Google Apple Certificate (ID Tim EQHXZ8M8AV) -
$ sudo santactl rule --whitelist --certificate --sha256 15b8ce88e10f04c88a5542234fbdfc1487e9c2f64058a05027c7c34fc4201153
Added rule for SHA-256: 15b8ce88e10f04c88a5542234fbdfc1487e9c2f64058a05027c7c34fc4201153.
Google Chrome sekarang harus diluncurkan, dan pembaruan selanjutnya untuk aplikasi akan terus berfungsi selama sertifikat penandatanganan kode tidak berubah atau kedaluwarsa.
Untuk menonaktifkan mode "penguncian":
sudo defaults delete /var/db/santa/config.plist ClientMode
Lihat /var/log/santa.log
untuk memantau dan menolak keputusan eksekusi.
Server log dan konfigurasi untuk Santa tersedia di Zentral, solusi pemantauan acara open source dan server TLS untuk OsQuery dan Santa.
Zentral akan mendukung Santa dalam mode operasi pemantauan dan penguncian. Klien perlu terdaftar dengan koneksi TLS untuk menyinkronkan aturan Santa, semua acara Santa dari titik akhir dikumpulkan dan dicatat kembali di Zentral. Acara Santa dapat memicu tindakan dan pemberitahuan dari dalam kerangka zentral.
Catatan Python, Bash, dan penerjemah lainnya diizinkan (karena mereka ditandatangani oleh sertifikat pengembang Apple), sehingga Santa tidak akan dapat memblokir skrip tersebut dari mengeksekusi. Dengan demikian, program non-biner potensial yang menonaktifkan Santa adalah kelemahan (bukan kerentanan, karena demikian dengan desain) untuk dicatat.
Nonaktifkan Data Diagnostik & Penggunaan.
Jika Anda ingin memutar musik atau menonton video , gunakan QuickTime Player, pemutar media bawaan di MacOS. Ini menggunakan kotak pasir aplikasi, runtime yang dikeraskan, dan manfaat dari volume sistem yang ditandatangani sebagai bagian dari sistem dasar.
Jika Anda ingin menggunakan torrents , gunakan transmisi yang gratis dan open source (Catatan: seperti semua perangkat lunak, bahkan proyek open source, malware mungkin masih menemukan jalan masuk). Anda juga mungkin ingin menggunakan daftar blok untuk menghindari mengintip dengan host yang buruk - lihat mana yang merupakan bloklist terbaik untuk transmisi dan Johntyree/3331662.
Kelola Penangan File Default.
Log Sistem Monitor dengan Aplikasi Konsol atau syslog -w
atau /usr/bin/log stream
Perintah.
Atur layar Anda untuk mengunci segera setelah screensaver dimulai:
defaults write com.apple.screensaver askForPassword -int 1
defaults write com.apple.screensaver askForPasswordDelay -int 0
Mengekspos file tersembunyi dan folder perpustakaan di Finder:
defaults write com.apple.finder AppleShowAllFiles -bool true
chflags nohidden ~/Library
Tunjukkan semua ekstensi nama file (sehingga "jahat.jpg.app" tidak dapat menyamar dengan mudah).
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
Jangan default untuk menyimpan dokumen ke iCloud:
defaults write NSGlobalDomain NSDocumentSaveNewDocumentsToCloud -bool false
Aktifkan entri keyboard aman di terminal (kecuali jika Anda menggunakan yubikey atau aplikasi seperti expander).
Nonaktifkan Reporter Crash (dialog yang muncul setelah aplikasi macet dan meminta untuk melaporkan masalah ke Apple):
defaults write com.apple.CrashReporter DialogType none
Nonaktifkan iklan multicast bonjour:
PERINGATAN: Ini akan menyebabkan masalah dengan AirPlay dan AirPrint!
sudo defaults write /Library/Preferences/com.apple.mDNSResponder.plist NoMulticastAdvertisements -bool YES
Nonaktifkan fitur handoff dan bluetooth, jika tidak diperlukan.
Periksa apakah aplikasi Anda di kotak pasir di monitor aktivitas.
MacOS hadir dengan baris ini di /etc/sudoers
:
Defaults env_keep += "HOME MAIL"
Yang menghentikan Sudo dari mengubah variabel rumah saat Anda meningkatkan hak istimewa. Ini berarti akan mengeksekusi sebagai root dotfiles zsh di direktori home pengguna non-root saat Anda menjalankan "sudo zsh". Dianjurkan untuk mengomentari baris ini untuk menghindari cara yang berpotensi mudah bagi malware atau penyerang lokal untuk meningkatkan hak istimewa untuk melakukan root.
Jika Anda ingin mempertahankan kenyamanan pengguna root yang memiliki direktori home pengguna non-root, Anda dapat menambahkan jalur ekspor ke /var/root/.zshrc, misalnya:
export HOME=/Users/blah
Tetapkan Umask Kustom:
sudo launchctl config user umask 077
Reboot, buat file di Finder dan verifikasi izinnya (macOS default memungkinkan 'grup/lainnya' baca akses):
$ ls -ld umask *
drwx------ 2 kevin staff 64 Dec 4 12:27 umask_testing_dir
-rw-------@ 1 kevin staff 2026566 Dec 4 12:28 umask_testing_file