??中文| Bahasa Inggris |文档/Wiki | ❓提问/Masalah |讨论/Diskusi
安全 / 审计 / 便捷
HuggingFace下载
AutoAudit-7B, versi ini adalah versi demo yang dilatih berdasarkan Alpaca-Lora. Ia berkinerja mengagumkan di bidang keamanan jaringan, menghasilkan tanggapan yang memuaskan dalam bahasa Inggris. Namun, saat ini pemahaman kontekstual masih kurang dan memerlukan model parameter yang lebih besar untuk mengatasi keterbatasan ini.
AutoAudit-8B-Instruct, versi ini disempurnakan berdasarkan Llama3-8B-instruct, dan kinerjanya dalam menjawab pertanyaan terkait keamanan siber telah meningkat secara signifikan. Kemampuan dasar model ini juga mengalami peningkatan substansial dibandingkan dengan AutoAudit-7B.
AutoAudit-Qwen, karena terbatasnya ketersediaan korpus keamanan siber Tiongkok, model ini masih dalam tahap eksplorasi dan perencanaan.
Lebih banyak LLM akan segera hadir
Proyek ini mengeksplorasi penerapan Model Bahasa Besar (LLM) dalam keamanan siber, yang didorong oleh kompleksitas domain dan kebutuhan penting akan mekanisme pertahanan yang kuat. Keamanan siber mencakup beragam bidang seperti sistem operasi, protokol jaringan, analisis malware, dan deteksi ancaman . Seiring dengan meningkatnya kecanggihan dan skala ancaman dunia maya, LLM menghadirkan jalan yang menjanjikan untuk meningkatkan deteksi, analisis, dan respons ancaman melalui kemampuan pemrosesan bahasa tingkat lanjut. Kemampuan mereka untuk menafsirkan, menghasilkan, dan mensintesis sejumlah besar data menempatkan LLM sebagai alat transformatif untuk mengatasi tantangan keamanan siber yang kompleks.
Dibandingkan dengan metode tradisional, LLM dapat disesuaikan untuk beradaptasi dengan lanskap ancaman yang selalu berubah, menyediakan koneksi pengetahuan lintas domain dan respons darurat yang dapat ditindaklanjuti. Mereka juga dapat mengotomatiskan tugas analitis yang berulang, mengintegrasikan data dari berbagai sumber, dan menghasilkan penilaian risiko yang menangkap ancaman halus, sehingga meningkatkan kemampuan beradaptasi dan ketahanan sistem keamanan. Oleh karena itu, LLM memainkan peran penting dalam memperkuat kerangka pertahanan keamanan siber, menawarkan dukungan yang lebih baik kepada para ahli, dan memungkinkan perlindungan yang lebih komprehensif dan fleksibel.
Untuk kenyamanan interaktif dan untuk mengatasi skenario audit keamanan praktis, kami telah menggabungkan model AutoAudit dengan ClamAV untuk membuat platform pemindaian keamanan (dengan frontend yang terinspirasi oleh template Bootstrap). Jika Anda ingin langsung mendownload model AutoAudit, Anda dapat mengunjungi HuggingFace untuk mendapatkan bobotnya.
Unduh konten repositori ini ke server lokal atau jarak jauh Anda:
git clone [email protected]:ddzipp/AutoAudit.git
cd AutoAudit
Buat lingkungan Conda:
conda create --name AutoAudit python=3.8
conda activate AutoAudit
Instal dependensi:
pip install -r requirements.txt
Instal ClamAV dan tambahkan ClamAV ke jalur lingkungan.
Tetapkan jalur untuk model llama dan bobot Lora di kotak pasir:
sandbox/yahma/llama-7b-hf
sandbox/lilBuffaloEirc/autoaudit_20230703_attempt2
Jalankan perintah berikut untuk memulai proyek:
python manage.py runserver
Kami telah mengadopsi metode pengorganisasian kumpulan data Self-Instruct, yang menggabungkan anotasi manusia dan data yang dihasilkan sendiri. Kumpulan data ini sebagian besar bersumber dari Github, Kaggle, situs web keamanan, dan kumpulan data kerentanan keamanan yang tersedia untuk umum. Selanjutnya dilakukan pembersihan dan augmentasi data untuk membangun data dialog. Dataset diatur secara ketat dalam format dataset model Alpaca, dibagi menjadi tiga bagian: Instruksi, Input, dan Output. Dalam outputnya, kami menentukan bahwa analisis harus mencakup informasi rinci (analisis), peringkat keamanan (label), risiko keamanan (risiko), dan solusi terkait (solusi). Untuk informasi himpunan data terperinci (termasuk format dan organisasi), lihat Data Pelatihan AutoAudit. Berikut beberapa contohnya:
pertanyaan | menjawab | Subjek |
---|---|---|
Harap evaluasi apakah pernyataan ini mengandung kerentanan keamanan:" atau pg_sleep ( TIME ) --" | 1. analisis : Pernyataan SQL tampaknya mencoba injeksi SQL dengan memasukkan perintah sleep menggunakan fungsi 'pg_sleep'.n 2. label : tinggin 3. risiko : Pernyataan SQL yang diberikan menimbulkan risiko tinggi injeksi SQL. Ia menggunakan fungsi 'pg_sleep' untuk mencoba serangan injeksi SQL buta berbasis waktu.n 4. solusi : Terapkan validasi input dan parameterisasi yang tepat untuk mencegah serangan injeksi SQL. | Analisis SQL |
Harap analisis apakah cuplikan kode Python ini menimbulkan risiko keamanan:"import socketnimport jsonnimport osnimport subprocessnimport base64nnclass Backdoor:n def init (self, ip, port):n self.connection = soket.socket(socket.AF_INET, soket.SOCK_STREAM)n self.connection.connect((ip, port))" | 1. analisis : Cuplikan kode Python mendefinisikan kelas bernama 'Backdoor' dengan metode penginisialisasi ' init '. Kelas menyiapkan koneksi soket ke alamat IP dan port tertentu.n 2. label : Rendahn 3. risiko : Cuplikan kode Python yang diberikan memiliki risiko keamanan yang rendah. Ini terutama membuat koneksi soket, yang merupakan operasi jaringan umum. Namun, risiko keamanan sebenarnya bergantung pada detail implementasi kelas dan penggunaannya.n 4. solusi : Pastikan kelas 'Pintu Belakang' dan penggunaannya memiliki langkah-langkah keamanan yang sesuai, seperti validasi input yang tepat, protokol komunikasi yang aman , kontrol akses, dan penanganan kesalahan, untuk memitigasi potensi risiko keamanan. | Analisis Kode Python |
Apa tujuan dari Daftar Pencabutan Sertifikat (CRL)? | Tujuan dari Daftar Pencabutan Sertifikat (CRL) adalah untuk mencantumkan sertifikat digital yang dicabut oleh otoritas sertifikat (CA) yang menerbitkannya sebelum tanggal kedaluwarsa yang dijadwalkan, yang menunjukkan bahwa sertifikat tersebut tidak lagi dapat dipercaya. | Tanya Jawab Pengetahuan Keamanan |
Komposisi kumpulan data yang digunakan untuk melatih model saat ini dan proporsinya adalah sebagai berikut:
Untuk menyederhanakan proses pembuatan kumpulan data otomatis, kami juga telah memperbarui GPT di Penyimpanan GPT yang didedikasikan untuk pembuatan kumpulan data QA keamanan siber, dan hasil pembuatannya adalah sebagai berikut:
Saya ingin mengucapkan terima kasih kepada teman saya Eric Ma; bekerja sama dengannya untuk terus meningkatkan proyek ini merupakan salah satu pengalaman paling berarti. Saya juga ingin mengucapkan terima kasih kepada CUHKSZ He Lab, dimana saya telah belajar banyak dan memantapkan arah saya untuk perbaikan lebih lanjut. Terakhir, saya menyampaikan terima kasih kepada setiap anggota komunitas sumber terbuka. Terima kasih atas dukungan dan bantuan Anda. Saya akan mencoba yang terbaik untuk mengembangkan proyek saya, saya harap Anda dapat menyukainya.