ChatGPT (Chat Generative Pre-trained Transformer) ist ein von OpenAI in den USA entwickeltes Chatbot-Programm, das Gespräche durch das Verstehen und Erlernen der menschlichen Sprache führen und mit Benutzern basierend auf dem Kontext des Chats interagieren kann. Ich mag Menschen wirklich. Es kann sogar Aufgaben wie das Schreiben von E-Mails, Videoskripten, Texterstellung, Code, Papiere usw. erledigen. Der Algorithmus von
ChatGPT basiert auf der Transformer-Architektur, einem tiefen neuronalen Netzwerk, das einen Selbstaufmerksamkeitsmechanismus zur Verarbeitung von Eingabedaten nutzt. Die Transformer-Architektur wird häufig für Aufgaben der Verarbeitung natürlicher Sprache wie Sprachübersetzung, Textzusammenfassung und Beantwortung von Fragen verwendet. ChatGPT verwendet das GPT-3.5 Large Language Model (LLM Large Language Model) und basierend auf diesem Modell wird Reinforcement Learning eingeführt, um das vorab trainierte Sprachmodell zu verfeinern. Das verstärkende Lernen verwendet hier RLHF (Reinforcement Learning from Human Feedback), eine manuelle Annotationsmethode. Der Zweck besteht darin, das LLM-Modell durch seinen Belohnungs- und Bestrafungsmechanismus lernen zu lassen, verschiedene Aufgaben der Verarbeitung natürlicher Sprache zu verstehen und anhand der drei Dimensionen Hilfsbereitschaft, Ehrlichkeit und Unbedenklichkeit zu beurteilen, welche Art von Antworten von hoher Qualität sind.
Der Haupttrainingsprozess des ChatGPT-Modells ist wie folgt:
Im Bereich der Sicherheitserkennung beginnen immer mehr Unternehmen, Technologien der künstlichen Intelligenz einzusetzen, um potenzielle Bedrohungen im Netzwerkverkehr zu erkennen. Der Vorteil künstlicher Intelligenz besteht darin, dass sie große Datenmengen verarbeiten kann, um ungewöhnlichen Verkehr schnell und genau zu identifizieren und zu klassifizieren. Durch das Training neuronaler Netzwerkmodelle kann künstliche Intelligenz Netzwerkangriffe, Schwachstellen-Exploits, Malware und andere Verhaltensweisen automatisch erkennen und identifizieren, manuelle Eingriffe und Fehlalarme reduzieren sowie die Erkennungsgenauigkeit und -effizienz verbessern.
Der Kern der aktuellen Mainstream-Netzwerkangriffserkennung ist die Erkennung von HTTP-Zugriffen (WAF), die auf der Grundlage der DPI-Technologie entwickelt wurde, und die Intrusion Prevention Detection (IPS) des Betriebssystems. Das heißt, es wird vor der Anwendung bereitgestellt, scannt und filtert Benutzeranfragen, bevor sie den Server erreichen, analysiert und überprüft die von jedem Benutzer angeforderten Netzwerkpakete, gewährleistet die Sicherheit und Wirksamkeit jeder Anfrage und fängt ungültige oder anstößige Anfragen ab oder fängt sie ab. Isolierung. Die derzeit am häufigsten verwendeten Methoden zur Angriffserkennung sind:
erkennt Bedrohungen im Netzwerkverkehr, wie Viren, Malware, Einbruchsverhalten usw., basierend auf bestimmten Regeln oder Mustern (reguläre Ausdrücke). im voraus. Aufgrund der vielfältigen Angriffsmethoden können erfahrene Hacker jedoch die Erkennung umgehen, indem sie einige Aussagen ändern. Reguläre Ausdrücke werden aus Schlüsselwörtern entwickelt. Obwohl sie die Falsch-Positiv-Rate bis zu einem gewissen Grad reduzieren, können sie bei einigen komplexeren Injektionen nur vorgegebene Angriffsverhalten erkennen negativer Zinssatz.
Durch die Modellierung und Analyse grundlegender Elemente wie der Quell-IP ähnlichen Verkehrs, des Protokolltypverhältnisses sowie der Aufwärts- und Abwärtstrends des Verkehrs können wir analytische Schlussfolgerungen zu einigen ungewöhnlichen Ereignissen ziehen. Die Verkehrsanalyse muss jedoch den Netzwerkverkehr erfassen und analysieren und erfordert daher hohe Rechenressourcen und Speicherressourcen, wodurch das gesamte System relativ groß wird.
erkennt abnormale Aktivitäten, indem sie das Verhalten des Netzwerkverkehrs überwacht. Es wird beispielsweise erkannt, dass ein Webanwendungsserver auf nicht geschäftliche Datenbanken zugreift, große Datenmengen strömt, häufige Zugriffsversuche usw. und dann potenzielle Netzwerkbedrohungen entdeckt. In diesem Prozess werden einige legitime Aktivitäten (z. B. temporäre Downloads usw.) fälschlicherweise gemeldet, und das Trainieren und Erlernen ausgereifter Verhaltensanalysemodelle dauert lange, sodass die Schutzeffizienz möglicherweise gering ist.
Entwerfen Sie die Erkennungsmaschine als SQL-Semantikinterpreter oder Befehlszeilenterminal, versuchen Sie, die vom Benutzer eingegebenen Inhalte zu verstehen und festzustellen, ob es sich dabei um einen Angriff handelt. Derzeit ist es hauptsächlich auf SQL-Injection ausgerichtet und verfügt über begrenzte Verwendungsszenarien.
Zusätzlich zu diesen Nutzungsbeschränkungen, die auf der DPI-Engine-basierten Erkennungsmethode basieren, gibt es auch viele Möglichkeiten, die Traffic-Parsing-Engine für Eindringlinge zu umgehen. Unter Ausnutzung der möglichen Schwachstelle beim Parsen des HTTP-Protokolls in der DPI-Engine wird beispielsweise nur Port 80 als HTTP-Verkehr erkannt. Wenn sich der Port der Webanwendung auf 8080 befindet, wird der HTTP-Verkehr von der DPI-Engine als Nicht-HTTP analysiert. Dadurch wird die Angriffserkennung auf Anwendungsebene umgangen.
Wir folgen dem Entpackvorgang der DPI-Engine, um den ursprünglichen Datenverkehr in Schlüsselfelddaten zu analysieren und einen Regelabgleich durchzuführen. Wenn die Regel erfüllt werden kann, bedeutet dies, dass das Paket Angriffsverhalten enthält. Wenn die Regel nicht erfüllt werden kann, bedeutet dies, dass das Risiko des Pakets gering ist. Der von der DPI-Engine empfangene Datenverkehr ist wie folgt:
Die DPI-Engine gruppiert den Datenverkehr nach Sitzungen. Nachrichten in derselben Gruppe sind im Allgemeinen Anforderungsantwortnachrichten desselben Fünf-Tupels:
Die DPI Die Engine zerlegt den Datenverkehr entsprechend der Protokollebene, bis alle Felder analysiert sind.
DPI-Engine extrahiert die Klartextanforderung der Anwendungsschicht als zu erkennenden Inhalt:
ChatGPT kann als umfangreiches Verarbeitungsmodell natürlicher Sprache die ursprünglichen HTTP-Nachrichteninformationen verstehen dass unabhängig davon, wo der Angriff in der URL erscheint, Cookies oder Referrer, erfolgreich erkannt werden kann.
ChatGPT, New Bing und andere Module zur Angriffsbeurteilung rufen OpenAI-bezogene API-Schnittstellen auf und verwenden Fragen, damit ChatGPT, New Bing usw. Angriffsbeurteilungen vornehmen können. Der Code lautet wie folgt:
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
Mit der obigen Funktion können Sie einen ähnlichen Effekt erzielen wie das Stellen von Fragen an ChatGPT (das verwendete Modell ist text-davinci-003), wie unten gezeigt:
ChatGPT gibt eine klare Schlussfolgerung darüber zurück, ob ein Angriff vorliegt Verhalten und eine Beschreibung des Verhaltens, wodurch ein Angriffsrichter vervollständigt wird.
Wie im Bild oben gezeigt, kann eine große Anzahl von Anfragen, die im Datenverkehr beurteilt werden müssen, in verschiedenen Dateien gespeichert werden, und ChatGPT kann eine Angriffsbeurteilung durchführen. Der Beispielcode lautet wie folgt:
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 Auf diese Weise kann eine Batch-Message-Angriffserkennung erreicht werden.
Die Angriffsbeispiele stammen aus dem Scannen von Zielmaschinen und der vollständigen PoC-Erkennung durch Nuclei, da es einige Anfragen gibt, bei denen es wirklich schwierig ist, anhand einer einzelnen Nachricht zu erkennen, ob eine Bedrohung vorliegt.
Die obige Situation erfordert möglicherweise mehr Kontext zur Beurteilung. Dieses Mal haben wir solche Anforderungsbeispiele entfernt, die nicht genau beurteilt werden können, und versuchen, einige Beispiele anzugeben, die unter manuellen Bedingungen genau beurteilt werden können folgt:
Es ist ersichtlich, dass die Genauigkeit der Verkehrserkennung von ChatGPT sehr hoch ist, was im Grunde dem schnellen Urteilsvermögen eines Sicherheitsexperten entspricht. Auf seine Sicherheitserkennungsfunktionen kann man sich freuen.
Interessierte Leser können den vollständigen Quellcode des Projekts einsehen, der Link lautet: https://github.com/VitoYane/PcapSplit
Welche Rolle wird ChatGPT in Zukunft bei der Netzwerksicherheit spielen? Wie sich dies auswirken wird, lässt sich nur schwer genau vorhersagen, da es von der Art und Weise der Nutzung und dem Zweck der Nutzung abhängt. Bedrohungen durch künstliche Intelligenz sind kein neues Thema. Für Cybersicherheitsexperten ist es wichtig, sich der potenziellen Risiken von ChatGPT rechtzeitig bewusst zu sein und geeignete Maßnahmen zu ergreifen, um mit ihnen umzugehen.
Sicherheitsexperten gehen davon aus, dass staatlich unterstützte Hacker die ersten sein werden, die ChatGPT bei Netzwerkangriffen einsetzen werden, und dass die Technologie schließlich in großem Umfang von mehr Angriffsorganisationen eingesetzt werden wird. Verteidiger müssen mit der Entwicklung von Systemen beginnen, die solchen Angriffen widerstehen können.
Aus Sicht des Netzwerksicherheitsschutzes können Unternehmensorganisationen gezielte Gegenmaßnahmen ergreifen, ChatGPT und andere ähnliche Modelle trainieren, bösartige Aktivitäten und bösartigen Code markieren und schwer zu umgehende Leitplanken einrichten. Für durch ChatGPT verursachte Bedrohungen können neue Cyber-Sensibilisierungsschulungen für Mitarbeiter angeboten werden, um das Wissen zur Erkennung von Social-Engineering-Angriffen zu erwerben, um Phishing-Angriffe zu erkennen, die durch Tools der künstlichen Intelligenz wie ChatGPT verursacht werden.
Natürlich reicht das nicht aus. Künstliche Intelligenz-Tools wie ChatGPT werden neue Bedrohungen schneller schaffen als menschliche Kriminelle und Bedrohungen schneller verbreiten, als das Cybersicherheitspersonal reagieren kann. Die einzige Möglichkeit für Unternehmen, mit dieser Geschwindigkeit des Wandels Schritt zu halten, besteht darin, mit KI auf KI zu reagieren.
Zusammenfassend: Einerseits können Forscher, Praktiker, akademische Einrichtungen und Unternehmensorganisationen in der Cybersicherheitsbranche die Leistungsfähigkeit von ChatGPT nutzen, um Innovationen zu entwickeln und zusammenzuarbeiten, einschließlich der Erkennung von Schwachstellen, der Reaktion auf Vorfälle und der Erkennung von Phishing Mit der Entwicklung von Tools wie ChatGPT wird es in Zukunft noch wichtiger, neue Netzwerksicherheitstools zu entwickeln. Sicherheitsanbieter sollten bei der Entwicklung und Bereitstellung verhaltensbasierter (statt regelbasierter) KI-Sicherheitstools zur Erkennung von KI-generierten Angriffen aktiver sein.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie ChatGPT, um das Intelligenzniveau der Sicherheitserkennung zu verbessern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!