Rumah > Artikel > Peranti teknologi > Cara menggunakan ChatGPT untuk meningkatkan tahap kecerdasan pengesanan keselamatan
ChatGPT (Chat Generative Pre-trained Transformer) ialah program chatbot yang dibangunkan oleh OpenAI di Amerika Syarikat Ia boleh menjalankan perbualan dengan memahami dan mempelajari bahasa manusia, dan berkomunikasi dengan pengguna berdasarkan konteks sembang Berinteraksi, benar-benar berbual dan berkomunikasi seperti manusia. Ia juga boleh menyelesaikan tugas seperti menulis e-mel, skrip video, copywriting, kod, kertas, dll.
Algoritma ChatGPT adalah berdasarkan seni bina Transformer, iaitu rangkaian saraf dalam yang menggunakan mekanisme perhatian diri untuk memproses data input. Seni bina Transformer digunakan secara meluas dalam tugas pemprosesan bahasa semula jadi seperti terjemahan bahasa, ringkasan teks dan menjawab soalan. ChatGPT menggunakan Model Bahasa Besar GPT-3.5 (Model Bahasa Besar LLM), dan berdasarkan model ini, pembelajaran pengukuhan diperkenalkan untuk memperhalusi model bahasa yang telah dilatih. Pembelajaran pengukuhan di sini menggunakan RLHF (Reinforcement Learning from Human Feedback), iaitu kaedah anotasi manual. Tujuannya adalah untuk membolehkan model LLM belajar memahami pelbagai tugas pemprosesan bahasa semula jadi melalui mekanisme ganjaran dan hukumannya, dan belajar menilai jenis jawapan yang berkualiti tinggi daripada tiga dimensi suka menolong, kejujuran dan tidak berbahaya.
Proses latihan utama model ChatGPT adalah seperti berikut:
Dalam bidang pengesanan keselamatan, semakin banyak organisasi perusahaan mula menggunakan teknologi kecerdasan buatan untuk membantu mengesan rangkaian Potensi ancaman dalam trafik. Kelebihan kecerdasan buatan ialah ia boleh memproses sejumlah besar data untuk mengenal pasti dan mengelaskan trafik abnormal dengan cepat dan tepat. Dengan melatih model rangkaian saraf, kecerdasan buatan secara automatik boleh mengesan dan mengenal pasti serangan rangkaian, eksploitasi kelemahan, perisian hasad dan gelagat lain, mengurangkan campur tangan manual dan positif palsu serta meningkatkan ketepatan dan kecekapan pengesanan.
Teras pengesanan serangan rangkaian arus perdana adalah berdasarkan teknologi DPI, dibangunkan untuk pengesanan capaian HTTP (WAF) dan pengesanan pencegahan pencerobohan (IPS) untuk sistem pengendalian. Iaitu, ia digunakan sebelum aplikasi, mengimbas dan menapis permintaan pengguna sebelum mereka sampai ke pelayan, menganalisis dan mengesahkan paket rangkaian yang diminta oleh setiap pengguna, memastikan keselamatan dan keberkesanan setiap permintaan, dan memintas atau memintas permintaan yang tidak sah atau menyinggung perasaan. pengasingan. Pada masa ini, kaedah pengesanan serangan yang biasa digunakan adalah seperti berikut:
Mengesan ancaman dalam trafik rangkaian berdasarkan peraturan atau corak tertentu (ungkapan biasa) yang ditulis terlebih dahulu, seperti. virus, perisian hasad, pencerobohan, dsb. Walau bagaimanapun, disebabkan kaedah serangan yang pelbagai, penggodam berpengalaman boleh memintas pengesanan dengan menukar beberapa kenyataan. Ungkapan biasa dibangunkan daripada kata kunci Walaupun ia mengurangkan kadar positif palsu ke tahap tertentu, kerana ungkapan biasa adalah berdasarkan penapisan rentetan, ia hanya boleh mengesan tingkah laku serangan yang telah ditetapkan untuk beberapa suntikan yang lebih kompleks Kaedah ini juga mempunyai masalah palsu yang tinggi kadar negatif.
Melalui pemodelan dan analisis elemen asas seperti IP sumber trafik yang serupa, perkadaran jenis protokol dan aliran menaik dan menurun trafik, kesimpulan analisis bagi beberapa peristiwa tidak normal boleh diperolehi. Walau bagaimanapun, analisis trafik perlu menangkap dan menganalisis trafik rangkaian, jadi ia memerlukan sumber pengkomputeran dan sumber storan yang tinggi, yang akan menjadikan keseluruhan sistem agak besar.
Mengesan aktiviti tidak normal dengan memantau gelagat trafik rangkaian. Sebagai contoh, ia dikesan bahawa pelayan aplikasi web mengakses pangkalan data bukan perniagaan, letusan aliran data yang besar, percubaan capaian yang kerap, dsb., dan kemudian menemui potensi ancaman rangkaian. Dalam proses ini, beberapa aktiviti yang sah (seperti muat turun sementara, dll.) akan dilaporkan secara palsu, dan model analisis tingkah laku matang mengambil masa yang lama untuk dilatih dan dipelajari, jadi kecekapan perlindungan mungkin rendah.
Reka bentuk enjin pengesanan sebagai penterjemah semantik SQL atau terminal baris arahan, cuba fahami input kandungan oleh pengguna dan tentukan sama ada ia boleh membentuk menyerang. Pada masa ini, ia disasarkan terutamanya pada suntikan SQL dan mempunyai senario penggunaan yang terhad.
Sebagai tambahan kepada sekatan penggunaan ini, terdapat juga banyak cara untuk memintas enjin penghuraian trafik untuk pencerobohan berdasarkan kaedah pengesanan berasaskan enjin DPI. Contohnya, menggunakan kemungkinan kecacatan penghuraian protokol HTTP bagi enjin DPI, ia hanya mengiktiraf port 80 sebagai trafik HTTP dan port aplikasi web berada pada 8080, dan trafik HTTPnya akan dihuraikan sebagai bukan HTTP oleh enjin DPI, dengan itu memintas pengesanan serangan lapisan aplikasi.
Kami mengikuti proses pembongkaran enjin DPI untuk menghuraikan trafik asal ke dalam data medan utama dan melaksanakan pemadanan peraturan. Jika peraturan boleh dipadankan, ia bermakna bahawa paket mengandungi tingkah laku serangan jika ia tidak dapat dipadankan, ia bermakna bahawa risiko paket adalah rendah. Trafik yang diterima oleh enjin DPI adalah seperti berikut:
Enjin DPI akan mengumpulkan trafik mengikut sesi dalam kumpulan yang sama pada umumnya lima tuple yang sama mesej respons permintaan:
Enjin DPI akan membuka trafik mengikut tahap protokol sehingga semua medan dihuraikan.
Enjin DPI akan mengekstrak permintaan teks biasa lapisan aplikasi sebagai kandungan yang akan dikesan:
CtGPT sebagai Model pemprosesan bahasa semula jadi berskala besar boleh memahami maklumat mesej HTTP asal, supaya tidak kira serangan muncul dalam URL, Kuki atau Perujuk, ia boleh berjaya dikesan.
ChatGPT, Bing Baharu dan modul penghakiman serangan lain akan memanggil antara muka API berkaitan OpenAI dan menggunakan soalan untuk membenarkan ChatGPT, Bing Baharu, dsb. attack Judgement, kod skematik adalah seperti berikut:
import openai openai.api_key = "sk-Bew1dsFo3YXoY2***********81AkBHmY48ijxu"# api token 用来认证 def get_answer(prompt, max_tokens): # 定义一个获取答案的函数 try: response = openai.Completion.create( model = "text-davinci-003", # 模型名称 prompt = prompt,# 问题 temperature = 0.7, max_tokens = max_tokens,# 返回内容的长度限制 stream = False, # False就是一次性返回, True 就是一个个打出来像打字机, 返回的是迭代器, 需要后面代码处理. 此处没有处理 所以用False top_p = 1, frequency_penalty = 0, presence_penalty = 0 ) return 0, response['choices'][0]['text'].strip()# 获取返回值关键返回内容 except Exception as e:# 异常处理 return str(e), None
Melalui fungsi di atas, anda boleh mencapai kesan yang serupa dengan bertanyakan soalan kepada ChatGPT (model yang digunakan ialah text-davinci-003), seperti yang ditunjukkan di bawah:
ChatGPT akan mengembalikan kesimpulan yang jelas sama ada terdapat gelagat serangan dan perihalan gelagat itu, sekali gus melengkapkan penghakiman serangan.
Seperti yang ditunjukkan dalam gambar di atas, sejumlah besar permintaan dalam trafik yang perlu dinilai boleh disimpan dalam fail yang berbeza, dan ChatGPT boleh melakukan penghakiman serangan kod sampel adalah seperti berikut:
def main(read_dir = 'detect'):# 定义main函数 args = []# 缓存列表 global sign_req, all_req# 识别计数 for rf in walk_dir(read_dir, ['.txt']):# 遍历待检测目录 all_req += 1# 总数据包数自增1 content = read_fileA(rf, 'str')[:2048]# 提取报文文件前2048个字符 key_content = content.split('rnrnrn')[0][:1024]# 提取http请求 if len(key_content) < 10: continue# 如果长度太小就不检测 err, sign, disc = judge_attack(key_content, rf_rst)# 调用ChatGPT接口进行攻击检测 if sign: sign_req += 1# 如果检测到攻击, 攻击计数自增1 print('r' + f' 已检测 {all_req: 4} 个报文, 识别到攻击 {sign_req} 个, 检出率: {sign_req/all_req:0.2%}', end='', flush=True) # 打印结论
Dengan cara ini, pengesanan serangan paket kelompok boleh dicapai.
Sampel serangan datang daripada pengimbasan Nuclei ke atas mesin sasaran dan pengesanan PoC penuh, kerana terdapat beberapa permintaan yang tidak dapat mengetahui sama ada terdapat ancaman daripada satu mesej.
Situasi di atas mungkin memerlukan lebih banyak konteks untuk menilai Kali ini kami telah mengalih keluar contoh permintaan sedemikian yang tidak dapat dinilai dengan tepat dan cuba memberikan beberapa contoh yang boleh dinilai dengan tepat. dalam keadaan buatan , hasil pengesanan keseluruhan adalah seperti berikut:
Dapat dilihat bahawa ketepatan pengesanan trafik ChatGPT adalah sangat tinggi, yang pada asasnya bersamaan dengan keselamatan. pertimbangan pantas pakar dan keupayaan pengesanan keselamatannya Sangat berbaloi untuk ditunggu.
Pembaca yang berminat boleh melihat kod sumber projek yang lengkap, pautannya ialah: https://github.com/VitoYane/PcapSplit
Pada masa hadapan, sukar bagi kami untuk meramalkan dengan tepat peranan yang akan dimainkan oleh ChatGPT dalam keselamatan rangkaian dan apakah kesannya, kerana ia bergantung pada cara ia digunakan dan niatnya. Ancaman daripada kecerdasan buatan bukanlah isu baharu. Adalah penting bagi pengamal keselamatan siber untuk menyedari potensi risiko ChatGPT tepat pada masanya dan mengambil langkah yang sesuai untuk menanganinya.
Pakar keselamatan meramalkan bahawa penggodam yang disokong kerajaan akan menjadi orang pertama yang mengeksploitasi ChatGPT dalam serangan rangkaian, dan teknologi itu akhirnya akan digunakan secara besar-besaran oleh lebih banyak organisasi serangan terhadap serangan tersebut.
Dari perspektif perlindungan keselamatan rangkaian, organisasi perusahaan boleh mengambil langkah balas yang disasarkan, melatih model serupa seperti ChatGPT, menandakan aktiviti berniat jahat dan kod berniat jahat serta menyediakan pagar yang sukar dipintas. Untuk ancaman yang disebabkan oleh ChatGPT, latihan kesedaran siber baharu boleh diberikan kepada pekerja untuk memperoleh pengetahuan mengenal pasti serangan kejuruteraan sosial bagi mengenal pasti serangan pancingan data yang dicipta oleh alat kecerdasan buatan seperti ChatGPT.
Sudah tentu ini tidak mencukupi. Alat kecerdasan buatan seperti ChatGPT akan mencipta ancaman baharu lebih pantas daripada penjenayah manusia, dan menyebarkan ancaman lebih pantas daripada kakitangan keselamatan siber boleh bertindak balas. Satu-satunya cara organisasi boleh mengikuti kadar perubahan ini adalah dengan bertindak balas terhadap AI dengan AI.
Ringkasnya: Di satu pihak, penyelidik, pengamal, institusi akademik dan organisasi perusahaan dalam industri keselamatan siber boleh memanfaatkan kuasa ChatGPT untuk berinovasi dan bekerjasama, termasuk penemuan kerentanan, tindak balas insiden dan pengesanan pancingan data; sebaliknya, Di satu pihak, dengan pembangunan alat seperti ChatGPT, adalah lebih penting untuk membangunkan alat keselamatan rangkaian baharu pada masa hadapan. Vendor keselamatan harus lebih aktif dalam membangun dan menggunakan alat keselamatan AI berasaskan tingkah laku (bukan berasaskan peraturan) untuk mengesan serangan yang dijana AI.
Atas ialah kandungan terperinci Cara menggunakan ChatGPT untuk meningkatkan tahap kecerdasan pengesanan keselamatan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!