Maison  >  Article  >  Périphériques technologiques  >  Comment utiliser ChatGPT pour améliorer le niveau d'intelligence de la détection de sécurité

Comment utiliser ChatGPT pour améliorer le niveau d'intelligence de la détection de sécurité

WBOY
WBOYavant
2023-04-26 16:04:082295parcourir
Qu'est-ce que ChatGPT ? Interagissez avec les utilisateurs et discutez et communiquez véritablement comme des humains. Il peut même effectuer des tâches telles que la rédaction d'e-mails, de scripts vidéo, de rédaction, de code, de documents, etc.

ChatGPT est basé sur l'architecture Transformer, qui est un réseau neuronal profond qui utilise un mécanisme d'auto-attention pour traiter les données d'entrée. L'architecture Transformer est largement utilisée dans les tâches de traitement du langage naturel telles que la traduction, le résumé de texte et la réponse aux questions. ChatGPT utilise le modèle de langage large GPT-3.5 (modèle de langage large LLM) et, sur la base de ce modèle, un apprentissage par renforcement est introduit pour affiner le modèle de langage pré-entraîné. L'apprentissage par renforcement utilise ici le RLHF (Reinforcement Learning from Human Feedback), qui est une méthode d'annotation manuelle. L'objectif est de permettre au modèle LLM d'apprendre à comprendre diverses tâches de traitement du langage naturel grâce à son mécanisme de récompense et de punition, et d'apprendre à juger quels types de réponses sont de haute qualité à partir des trois dimensions de l'utilité, de l'honnêteté et de l'inoffensive.

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécuritéLe processus de formation principal du modèle ChatGPT est le suivant :

Utilisez d'abord une série de questions et les réponses à la formation supervisée du modèle (également appelée mise au point de l'instruction de supervision).
  • Utilisez l'apprentissage par renforcement pour affiner davantage le modèle, c'est-à-dire que dans un environnement donné, le modèle s'adapte constamment à l'état le plus adapté à l'environnement en fonction des récompenses et des pénalités de l'environnement . Plus précisément, il s'agit de former un réseau de récompense avec la participation d'humains. Ce réseau de récompense a la capacité de classer plusieurs réponses au chat.
  • Utilisez ce réseau de récompenses pour optimiser davantage le modèle en continu grâce à l'apprentissage par renforcement.

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécuritéComment effectuer une détection de sécurité

Dans le domaine de la détection de sécurité, de plus en plus d'organisations d'entreprise sont commencer à utiliser la technologie de l’intelligence artificielle pour aider à détecter les menaces potentielles dans le trafic réseau. L’avantage de l’intelligence artificielle est qu’elle peut traiter de grandes quantités de données pour identifier et classer rapidement et précisément le trafic anormal. En entraînant des modèles de réseaux neuronaux, l'intelligence artificielle peut détecter et identifier automatiquement les attaques réseau, les exploits de vulnérabilité, les logiciels malveillants et autres comportements, réduire les interventions manuelles et les faux positifs, et améliorer la précision et l'efficacité de la détection.

Le cœur de la détection actuelle des attaques de réseau grand public est la détection de l'accès HTTP (WAF) développée sur la base de la technologie DPI et la détection de prévention des intrusions (IPS) du système d'exploitation. Autrement dit, il est déployé avant l'application, analyse et filtre les demandes des utilisateurs avant qu'elles n'atteignent le serveur, analyse et vérifie les paquets réseau demandés par chaque utilisateur, garantit la sécurité et l'efficacité de chaque demande et intercepte ou intercepte les demandes invalides ou offensantes. isolement. Actuellement, les méthodes de détection d'attaques couramment utilisées sont les suivantes :

1 Technologie de détection de signature

Détecte les menaces dans le trafic réseau en fonction de règles ou de modèles spécifiques (expressions régulières) écrits. avance, tels que les virus, les logiciels malveillants, les intrusions, etc. Cependant, en raison de la diversité des méthodes d'attaque, les pirates informatiques expérimentés peuvent contourner la détection en modifiant certaines déclarations. Les expressions régulières sont développées à partir de mots-clés. Bien qu'elles réduisent dans une certaine mesure le taux de faux positifs, les expressions régulières étant basées sur le filtrage de chaînes, elles ne peuvent détecter des comportements d'attaque prédéterminés que pour certaines injections plus complexes. Cette méthode présente également le problème d'un nombre élevé de faux ; taux négatif.

2. Technologie d'analyse du trafic

Grâce à la modélisation et à l'analyse d'éléments de base tels que l'IP source d'un trafic similaire, le ratio de type de protocole, les tendances à la hausse et à la baisse du trafic, etc., nous pouvons obtenir des conclusions d'analyse d'événements anormaux. Cependant, l'analyse du trafic doit capturer et analyser le trafic réseau, elle nécessite donc des ressources informatiques et des ressources de stockage élevées, ce qui rendra l'ensemble du système relativement volumineux.

3. Technologie d'analyse du comportement

Détecte les activités anormales en surveillant le comportement du trafic réseau. Par exemple, il est détecté qu'un serveur d'applications Web accède à des bases de données non professionnelles, à des rafales de flux de données volumineux, à des tentatives d'accès fréquentes, etc., puis découvre des menaces potentielles pour le réseau. Dans ce processus, certaines activités légitimes (telles que les téléchargements temporaires, etc.) seront faussement signalées, et les modèles d'analyse comportementale matures prennent beaucoup de temps à se former et à apprendre, de sorte que l'efficacité de la protection peut être faible.

4. Correspondance de règles sémantiques

Concevez le moteur de détection comme un interpréteur sémantique SQL ou un terminal de ligne de commande, essayez de comprendre le contenu saisi par l'utilisateur et déterminez si cela peut constituer une attaque. Actuellement, il est principalement destiné à l’injection SQL et propose des scénarios d’utilisation limités.

En plus de ces restrictions d'utilisation, il existe de nombreuses façons de contourner le moteur d'analyse du trafic pour les intrusions basées sur la méthode de détection du moteur DPI. Par exemple, profitant de l'éventuelle faille d'analyse du protocole HTTP dans le moteur DPI, il reconnaît uniquement le port 80 comme trafic HTTP. Si le port de l'application Web est sur 8080, son trafic HTTP sera analysé par le moteur DPI comme non HTTP. contournant ainsi la détection des attaques de la couche application.

Quels liens peuvent appliquer ChatGTP

Nous suivons le processus de déballage du moteur DPI pour analyser le trafic d'origine en données de champ clés et effectuer une correspondance de règles. Si la règle peut correspondre, cela signifie que le paquet contient un comportement d'attaque ; si elle ne peut pas correspondre, cela signifie que le risque du paquet est faible. Le trafic reçu par le moteur DPI est le suivant :

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécurité

Le moteur DPI regroupera le trafic en fonction des sessions. Les messages d'un même groupe sont généralement des messages de réponse à des demandes du même cinq-tuple :

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécurité

Le DPI. Le moteur démontera le trafic en fonction du niveau de protocole jusqu'à ce que tous les champs soient analysés.

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécurité

Le moteur DPI extraira la requête en texte brut de la couche d'application comme contenu à détecter :

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécurité

ChatGPT, en tant que modèle de traitement du langage naturel à grande échelle, peut comprendre les informations du message HTTP d'origine, de sorte que peu importe où l'attaque apparaît dans l'URL, les cookies ou le référent, peuvent être détectés avec succès.

Pratique de détection du trafic ChatGPT

ChatGPT, New Bing et d'autres modules de jugement d'attaque appelleront les interfaces API liées à OpenAI et utiliseront des questions pour permettre à ChatGPT, New Bing, etc. de porter des jugements d'attaque. Le code est le suivant :

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

. Grâce à la fonction ci-dessus, vous pouvez obtenir un effet similaire à celui de poser des questions à ChatGPT (le modèle utilisé est text-davinci-003), comme indiqué ci-dessous :

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécurité

ChatGPT renverra une conclusion claire quant à savoir s'il y a une attaque. comportement et une description du comportement, complétant ainsi un juge d'attaque.

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécurité

Comme le montre l'image ci-dessus, un grand nombre de requêtes qui doivent être jugées dans le trafic peuvent être stockées dans différents fichiers, et ChatGPT peut effectuer un jugement d'attaque. L'exemple de code est le suivant :

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) # 打印结论

In. de cette façon, la détection des attaques par messages par lots peut être obtenue.

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécurité

Les échantillons d'attaque proviennent de l'analyse des machines cibles par Nuclei et de la détection complète du PoC, car il existe certaines requêtes pour lesquelles il est vraiment difficile de dire s'il existe une menace à partir d'un seul message.

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécurité

La situation ci-dessus peut nécessiter plus de contexte pour être jugée. Cette fois, nous avons supprimé les exemples de requêtes qui ne peuvent pas être jugés avec précision et essayons de donner quelques exemples qui peuvent être jugés avec précision dans des conditions artificielles. suit :

Comment utiliser ChatGPT pour améliorer le niveau dintelligence de la détection de sécurité

On peut voir que la précision de la détection du trafic de ChatGPT est très élevée, ce qui équivaut fondamentalement au jugement rapide d'un expert en sécurité. Ses capacités de détection de sécurité méritent d'être attendues.

Les lecteurs intéressés peuvent consulter le code source complet du projet, le lien est : https://github.com/VitoYane/PcapSplit

Future Outlook

À l'avenir, quel rôle ChatGPT jouera-t-il dans la sécurité des réseaux ? Il est difficile de prédire avec précision quel sera l’impact, car cela dépend de la manière dont l’information sera utilisée et de l’intention de son utilisation. Les menaces liées à l'intelligence artificielle ne sont pas un problème nouveau. Il est important que les praticiens de la cybersécurité soient conscients des risques potentiels de ChatGPT en temps opportun et prennent les mesures appropriées pour y faire face.

Les experts en sécurité prédisent que les pirates informatiques soutenus par l'État seront les premiers à utiliser ChatGPT dans les attaques de réseau, et que la technologie sera finalement utilisée à grande échelle par davantage d'organisations d'attaque. Les défenseurs doivent commencer à développer des systèmes capables de résister à de telles attaques.

Du point de vue de la protection de la sécurité du réseau, les entreprises peuvent prendre des contre-mesures ciblées, former ChatGPT et d'autres modèles similaires, marquer les activités malveillantes et les codes malveillants et mettre en place des garde-fous difficiles à contourner. Pour les menaces causées par ChatGPT, une nouvelle formation de sensibilisation à la cybersécurité peut être dispensée aux employés pour acquérir les connaissances nécessaires pour identifier les attaques d'ingénierie sociale afin d'identifier les attaques de phishing créées par des outils d'intelligence artificielle tels que ChatGPT.

Bien sûr, cela ne suffit pas. Les outils d’intelligence artificielle tels que ChatGPT créeront de nouvelles menaces plus rapidement que les criminels humains et propageront les menaces plus rapidement que le personnel de cybersécurité ne peut y répondre. La seule façon pour les organisations de suivre ce rythme de changement est de répondre à l’IA par l’IA.

En résumé : d'une part, les chercheurs, les praticiens, les établissements universitaires et les entreprises du secteur de la cybersécurité peuvent tirer parti de la puissance de ChatGPT pour innover et collaborer, notamment en matière de découverte de vulnérabilités, de réponse aux incidents et de détection de phishing ; , avec le développement d'outils tels que ChatGPT, il sera encore plus important de développer de nouveaux outils de sécurité réseau à l'avenir. Les fournisseurs de sécurité devraient être plus actifs dans le développement et le déploiement d’outils de sécurité d’IA basés sur le comportement (plutôt que sur des règles) pour détecter les attaques générées par l’IA.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer