Auditor keamanan untuk server kami telah menuntut hal berikut dalam waktu dua minggu:
- Daftar nama pengguna saat ini dan kata sandi teks biasa untuk semua akun pengguna di semua server
- Daftar semua perubahan kata sandi selama enam bulan terakhir, sekali lagi dalam teks biasa
- Daftar "setiap file yang ditambahkan ke server dari perangkat jarak jauh" dalam enam bulan terakhir
- Kunci publik dan pribadi dari kunci SSH
- Email yang dikirimkan kepadanya setiap kali pengguna mengubah kata sandi mereka, berisi kata sandi teks biasa
Kami menjalankan kotak Red Hat Linux 5/6 dan CentOS 5 dengan otentikasi LDAP.
Sejauh yang saya ketahui, semua yang ada dalam daftar itu tidak mungkin atau sangat sulit diperoleh, tetapi jika saya tidak memberikan informasi ini, kita akan menghadapi kehilangan akses ke platform pembayaran dan kehilangan pendapatan selama masa transisi saat kita beralih ke layanan baru. Adakah saran untuk bagaimana saya dapat memecahkan atau memalsukan informasi ini?
Satu-satunya cara saya bisa memikirkan untuk mendapatkan semua kata sandi teks biasa, adalah membuat semua orang untuk mereset kata sandi mereka dan membuat catatan tentang apa yang mereka setel. Itu tidak menyelesaikan masalah perubahan kata sandi selama enam bulan terakhir, karena saya tidak bisa secara surut mencatat hal-hal semacam itu, hal yang sama berlaku untuk mencatat semua file jarak jauh.
Mendapatkan semua kunci SSH publik dan pribadi dimungkinkan (meskipun menjengkelkan), karena kami hanya memiliki beberapa pengguna dan komputer. Kecuali saya melewatkan cara yang lebih mudah untuk melakukan ini?
Saya telah menjelaskan kepadanya berkali-kali bahwa hal-hal yang dia minta tidak mungkin. Menanggapi kekhawatiran saya, dia menjawab dengan email berikut:
Saya memiliki lebih dari 10 tahun pengalaman dalam audit keamanan dan pemahaman penuh tentang metode keamanan redhat, jadi saya sarankan Anda memeriksa fakta tentang apa yang mungkin dan tidak mungkin. Anda mengatakan tidak ada perusahaan yang mungkin memiliki informasi ini tetapi saya telah melakukan ratusan audit di mana informasi ini sudah tersedia. Semua klien [penyedia pemrosesan kartu kredit umum] diharuskan untuk mematuhi kebijakan keamanan baru kami dan audit ini dimaksudkan untuk memastikan kebijakan tersebut telah diterapkan * dengan benar.
* "Kebijakan keamanan baru" diperkenalkan dua minggu sebelum audit kami, dan pencatatan historis enam bulan tidak diperlukan sebelum perubahan kebijakan.
Singkatnya, saya perlu;
- Cara untuk "memalsukan" perubahan kata sandi selama enam bulan dan membuatnya terlihat valid
- Cara untuk "memalsukan" enam bulan transfer file masuk
- Cara mudah untuk mengumpulkan semua kunci publik dan pribadi SSH yang digunakan
Jika kami gagal audit keamanan, kami kehilangan akses ke platform pemrosesan kartu kami (bagian penting dari sistem kami) dan itu akan memakan waktu dua minggu untuk pindah ke tempat lain. Bagaimana saya kacau?
Pembaruan 1 (Sabtu 23)
Terima kasih atas semua tanggapan Anda, Saya merasa lega mengetahui ini bukan praktik standar.
Saat ini saya sedang merencanakan tanggapan email saya kepadanya untuk menjelaskan situasinya. Seperti yang ditunjukkan oleh banyak dari Anda, kami harus mematuhi PCI yang secara eksplisit menyatakan bahwa kami seharusnya tidak memiliki cara untuk mengakses kata sandi teks biasa. Saya akan memposting email setelah saya selesai menulisnya. Sayangnya saya tidak berpikir dia hanya menguji kita; semua ini ada dalam kebijakan keamanan resmi perusahaan sekarang. Namun, saya telah mengatur roda untuk pindah dari mereka dan ke PayPal untuk saat ini.
Pembaruan 2 (Sabtu 23)
Ini adalah email yang saya konsepkan, ada saran untuk hal-hal untuk ditambahkan / dihapus / ubah?
Hai [nama],
Sayangnya tidak ada cara bagi kami untuk memberi Anda beberapa informasi yang diminta, terutama kata sandi teks biasa, riwayat kata sandi, kunci SSH dan log file jarak jauh. Tidak hanya hal-hal ini secara teknis tidak mungkin, tetapi juga dapat memberikan informasi ini akan bertentangan dengan Standar PCI, dan pelanggaran tindakan perlindungan data.
Mengutip persyaratan PCI,8.4 Jadikan semua kata sandi tidak dapat dibaca selama transmisi dan penyimpanan pada semua komponen sistem menggunakan kriptografi yang kuat.
Saya dapat memberi Anda daftar nama pengguna dan kata sandi hash yang digunakan pada sistem kami, salinan kunci publik SSH dan file host resmi (Ini akan memberi Anda informasi yang cukup untuk menentukan jumlah pengguna unik yang dapat terhubung ke server kami, dan enkripsi metode yang digunakan), informasi tentang persyaratan keamanan kata sandi kami dan server LDAP kami tetapi informasi ini mungkin tidak diambil dari situs. Saya sangat menyarankan Anda meninjau persyaratan audit Anda karena saat ini tidak ada cara bagi kami untuk lulus audit ini sambil tetap mematuhi PCI dan tindakan Perlindungan Data.
Salam,
[saya]
Saya akan CC'ing dalam CTO perusahaan dan manajer akun kami, dan saya berharap CTO dapat mengkonfirmasi informasi ini tidak tersedia. Saya juga akan menghubungi Dewan Standar Keamanan PCI untuk menjelaskan apa yang dia butuhkan dari kami.
Perbarui 3 (26)
Berikut beberapa email yang kami tukarkan;
RE: email pertama saya;
Sebagaimana dijelaskan, informasi ini harus mudah tersedia pada sistem yang dikelola dengan baik oleh administrator yang kompeten. Kegagalan Anda untuk dapat memberikan informasi ini membuat saya percaya bahwa Anda mengetahui kelemahan keamanan dalam sistem Anda dan tidak siap untuk mengungkapkannya. Permintaan kami sejalan dengan pedoman PCI dan keduanya dapat dipenuhi. Kriptografi yang kuat hanya berarti kata sandi harus dienkripsi ketika pengguna memasukkannya tetapi kemudian harus dipindahkan ke format yang dapat dipulihkan untuk digunakan nanti.
Saya melihat tidak ada masalah perlindungan data untuk permintaan ini, perlindungan data hanya berlaku untuk konsumen bukan bisnis sehingga tidak boleh ada masalah dengan informasi ini.
Hanya, apa, aku, tidak bisa, bahkan ...
"Kriptografi yang kuat hanya berarti kata sandi harus dienkripsi saat pengguna memasukkannya tetapi kemudian harus dipindahkan ke format yang dapat dipulihkan untuk digunakan nanti."
Saya akan membingkai itu dan meletakkannya di dinding saya.
Saya muak menjadi diplomatik dan mengarahkannya ke utas ini untuk menunjukkan kepadanya tanggapan yang saya dapatkan:
Memberikan informasi ini secara LANGSUNG bertentangan dengan beberapa persyaratan pedoman PCI. Bagian yang saya kutip bahkan mengatakan
storage
(Menyiratkan di mana kita menyimpan data pada disk). Saya memulai diskusi di ServerFault.com (Komunitas on-line untuk profesional sys-admin) yang telah menciptakan respons yang sangat besar, semuanya menunjukkan bahwa informasi ini tidak dapat disediakan. Jangan ragu untuk membaca sendirihttps://serverfault.com/questions/293217/
Kami telah selesai pindah sistem kami ke platform baru dan akan membatalkan akun kami dengan Anda dalam beberapa hari ke depan, tetapi saya ingin Anda menyadari betapa konyolnya permintaan ini, dan tidak ada perusahaan yang menerapkan pedoman PCI dengan benar, atau harus, dapat memberikan informasi ini. Saya sangat menyarankan Anda memikirkan kembali persyaratan keamanan Anda karena tidak ada pelanggan Anda yang dapat memenuhi ini.
(Aku benar-benar lupa aku memanggilnya idiot dalam judul, tetapi seperti yang disebutkan kita sudah pindah dari platform mereka sehingga tidak ada kerugian nyata.)
Dan dalam tanggapannya, ia menyatakan bahwa tampaknya tidak ada di antara Anda yang tahu apa yang Anda bicarakan:
Saya membaca secara terperinci melalui tanggapan-tanggapan itu dan pos orisinal Anda, para penanggap semua perlu mendapatkan fakta-fakta mereka dengan benar. Saya telah berada di industri ini lebih lama daripada siapa pun di situs itu, mendapatkan daftar kata sandi akun pengguna adalah sangat mendasar, itu harus menjadi salah satu hal pertama yang Anda lakukan ketika mempelajari cara mengamankan sistem Anda dan sangat penting untuk pengoperasian keamanan apa pun server. Jika Anda benar-benar tidak memiliki keterampilan untuk melakukan sesuatu yang sederhana ini, saya akan menganggap Anda tidak memiliki PCI yang diinstal pada server Anda karena dapat memulihkan informasi ini adalah persyaratan dasar dari perangkat lunak. Ketika berhadapan dengan sesuatu seperti keamanan Anda tidak seharusnya menanyakan pertanyaan-pertanyaan ini di forum publik jika Anda tidak memiliki pengetahuan dasar tentang cara kerjanya.
Saya juga ingin menyarankan agar setiap upaya untuk mengungkapkan saya, atau [nama perusahaan] akan dianggap fitnah dan tindakan hukum yang sesuai akan diambil
Poin idiot kunci jika Anda melewatkannya:
- Dia telah menjadi auditor keamanan lebih lama daripada orang lain di sini (Dia menebak, atau menguntit Anda)
- Mampu mendapatkan daftar kata sandi pada sistem UNIX adalah 'dasar'
- PCI sekarang adalah perangkat lunak
- Orang tidak boleh menggunakan forum ketika mereka tidak yakin dengan keamanan
- Posing informasi faktual (yang saya punya bukti email) online adalah fitnah
Luar biasa.
PCI SSC telah merespons dan sedang menyelidiki dia dan perusahaan. Perangkat lunak kami sekarang telah pindah ke PayPal sehingga kami tahu itu aman. Saya akan menunggu PCI untuk kembali kepada saya terlebih dahulu tetapi saya agak khawatir bahwa mereka mungkin telah menggunakan praktik keamanan ini secara internal. Jika demikian, saya pikir ini adalah masalah utama bagi kami karena semua pemrosesan kartu kami berjalan melalui mereka. Jika mereka melakukan ini secara internal saya pikir satu-satunya hal yang bertanggung jawab untuk dilakukan adalah memberi tahu pelanggan kami.
Saya berharap ketika PCI menyadari betapa buruknya mereka akan menyelidiki seluruh perusahaan dan sistem tetapi saya tidak yakin.
Jadi sekarang kita sudah pindah dari platform mereka, dan dengan asumsi itu akan memakan waktu setidaknya beberapa hari sebelum PCI kembali kepada saya, ada saran inventif untuk bagaimana cara menjebaknya sedikit? =)
Setelah saya mendapat izin dari petugas hukum saya (saya sangat meragukan semua ini benar-benar fitnah tetapi saya ingin memeriksa ulang) saya akan mempublikasikan nama perusahaan, namanya dan email, dan jika Anda mau, Anda dapat menghubungi dia dan menjelaskan mengapa Anda tidak memahami dasar-dasar keamanan Linux seperti cara mendapatkan daftar semua kata sandi pengguna LDAP.
Sedikit pembaruan:
"Orang hukum" saya telah menyatakan bahwa perusahaan mungkin akan menyebabkan lebih banyak masalah daripada yang dibutuhkan. Saya dapat mengatakan, ini bukan penyedia utama, mereka memiliki kurang dari 100 klien yang menggunakan layanan ini. Kami awalnya mulai menggunakannya ketika situs itu kecil dan berjalan di VPS kecil, dan kami tidak ingin melalui semua upaya untuk mendapatkan PCI (Kami dulu mengarahkan ke frontend mereka, seperti PayPal Standard). Tetapi ketika kami pindah ke pemrosesan kartu secara langsung (termasuk mendapatkan PCI, dan akal sehat), para pengembang memutuskan untuk tetap menggunakan perusahaan yang sama hanya dengan API yang berbeda. Perusahaan ini berbasis di daerah Birmingham, Inggris, jadi saya sangat ragu ada orang di sini yang akan terpengaruh.