Velké jazykové modely jako defenzivní Honeypoty
Large Language Models as Defensive Honeypots
Type of document
diplomová prácemaster thesis
Author
Muris Sladić
Supervisor
García Sebastián
Opponent
Chang Ee-Chien
Field of study
Cyber SecurityStudy program
Open InformaticsInstitutions assigning rank
katedra počítačůRights
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmlVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Show full item recordAbstract
Honeypoty jsou zásadními nástroji v kybernetické bezpečnosti. Většina z nich však postrádá potřebný realismus k dlouhodobému oklamání lidských útočníků. Toto omezení je činí snadno rozpoznatelnými, což snižuje jejich účinnost. Mezi hlavní problémy patří příliš deterministické chování a nedostatek adaptabilitu nebo komplexitu. Výzkumníci se snažili učinit honeypoty realističtějšími implementací více funkcionalit nebo využitím různých technik strojového učení a zpracování přirozeného jazyka. Většina dostupných softwarových honeypotů s vysokou interakcí však vyžaduje hodně času na nastavení a útočníci je stále dokážou odhalit kvůli neschopnosti simulovat mnoho příkazů nebo služeb. Tato práce navrhuje nový způsob vytváření realistických a dynamických softwarových honeypotů pomocí velkých jazykových modelů (LLM). Náš nástroj nazvaný VelLMes dokáže simulovat různé služby, jako jsou SSH, MySQL, POP3 a HTTP. Každá z těchto služeb může být použita jako honeypot, přístupná prostřednictvím shellu a jejich obsah a odpovědi jsou dynamicky generovány na základě historie konverzací. Všechny služby jsou implementovány pomocí cloudových modelů. Předběžné výsledky ukazují, že LLM mohou pomoci vyřešit problémy, které mají běžné honeypoty, jako jsou deterministické odpovědi, nedostatek adaptability atd. Nejsložitější z implementovaných služeb je SSH Linux honeypot, který nazýváme shelLM. Dokáže napodobit Linux shell a umožnit uživatelům kompletní svobodu interakce. Závěrečnou částí našeho návrhu je útočný nástroj založený na LLM. Jedná se o softwarový nástroj založený na LLM, který může interagovat s Linux shellem a shelLM, učit se o systému, nacházet zranitelnosti a podávat zprávy o svých zjištěních. Chování VelLMes a shelLM jsme vyhodnotili třemi experimenty. První experiment hodnotil, zda shelLM dokáže generovat výstup očekávaný od Linux shellu. Hodnocení bylo provedeno tak, že odborníci na kybernetickou bezpečnost používali shelLM a poskytovali zpětnou vazbu, zda každá odpověď honeypotu korespondovala s očekávaým výstupem Linux shellu. Výsledky ukazují, že shelLM dokáže vytvářet věrohodné a dynamické odpovědi, které řeší omezení současných honeypotů. shelLM dosáhl TNR 0,9, což přesvědčilo účastníky experimetu, že je konzistentní s reálným Linux shellem. Druhý experiment hodnotil, zda VelLMes dokáže generovat realistický výstup pro všechny simulované služby. Tento experiment zahrnoval automatizované testování. V rámci této práce jsem navrhli a implementovali jednotkové testy pro LLM. Pro každou službu ve VelLMes jsme spustili testy porovnávající chování různých cloudových modelů. V případě shelLM jsme také porovnali výkon cloudových a lokálních modelů. Výsledky experimentu ukazují, že LLM jsou dobré v napodobování chování služeb přístupných přes shell. Výsledky také ukazují, že cloudové modely překonávají lokální modely, které jsme použili k porovnání. Poslední experiment hodnotil schopnosti klamání shelLM a porovnával jej s populárním honeypotem Cowrie. Hodnocení bylo provedeno tak, že 34 účastníků bylo požádáno, aby interagovali se náhodně přiděleným systémem a následně rozhodli, zda se jednalo o honeypot. Účastníci interagovali buď s běžným Ubuntu, Cowrie nebo shelLM. Výsledky ukazují, že shelLM je lepší v klamání než Cowrie, když se podařilo oklamat téměř 45% účastníků, kteří s ním interagovali. Honeypots are essential tools in cyber security. However, most of them lack the required realism to engage and fool human attackers long-term. This limitation makes them easily discernible, hindering their effectiveness. This can happen because they are too deterministic, lack adaptability, or lack deepness. Researchers tried to make honeypots more realistic by implementing more functionalities or by making use of various machine learning and natural language processing techniques. However, the majority of high-interaction software honeypots available today require a lot of time to be set up and are still detectable by attackers due to the inability to simulate lots of commands or services. This thesis proposes a novel method to create realistic and dynamic software honeypots using Large Language Models (LLMs). Our tool called VelLMes can simulate various services such as SSH, MySQL, POP3, and HTTP. Each of these services can be used as a honeypot, accessed via shell, and their content and responses are dynamically generated based on the conversation history. All the services are implemented using cloud-based models. Preliminary results show that LLMs can help solve issues the standard honeypots have, such as deterministic responses, lack of adaptability, etc. The most complex one out of the implemented services is the SSH Linux honeypot, which we call shelLM. It can mimic a Linux shell allowing users the complete freedom of interaction. The final part of our proposal is an LLM attacker tool. It is an LLM-based software that can interact with Linux shell and shelLM, learn about the system, find vulnerabilities, and report of its findings. We evaluated the behavior of VelLMes and shelLM with three experiments. The first experiment evaluated if shelLM can generate output as expected from a Linux shell. The evaluation was done by asking cyber security professionals to use shelLM and give feedback if each answer from the honeypot was the expected one from a Linux shell. The results indicate that shelLM can create credible and dynamic answers addressing the limitations of current honeypots. The shelLM reached a TNR of 0.9, convincing humans it was consistent with a real Linux shell. The second experiment evaluated if VelLMes can generate realistic output for all the simulated services. This experiment included automated testing. We came up with the idea and implemented unit tests for LLMs. For each service in VelLMes, we run the tests comparing the behavior of various cloud models. In the case of shelLM, we also compared the performance of cloud and local models. The experiment results indicate that LLMs are good at behaving as various shell-accessible services. The results also show that cloud models outperform the local models we used for comparison. The final experiment evaluated shelLM's deception abilities and compared it to a popular honeypot Cowrie. The evaluation was done by asking 34 human participants to interact with a system randomly assigned to them and later decide whether it was a honeypot. The participants interacted either with a regular Ubuntu, Cowrie, or shelLM. The results indicate that shelLM is better at deception than Cowrie, managing to fool almost 45% of participants who interacted with it.
Collections
- Diplomové práce - 13136 [902]