diff --git a/hw7/README.md b/hw7/README.md index 0ce8daf..52327fe 100644 --- a/hw7/README.md +++ b/hw7/README.md @@ -1,2 +1,66 @@ ###### David Westgate 31 May 2024 -## HW7 for gensec +# HW7 for gensec + +The purpose of this assignment is to generate a security related application using aider. The application I will attempt to generate is a wifi penetration testing python. The intention is that this application will be able to perform the same wifi cracking that my hw6 LLM application did. + +## Input +``` +Generate a python application to assist in wifi penetration testing by prompting the user for the name of a password protected wifi network BSSID and returning the plaintext password. + +This python application should use a combination of shell tools assumed to be on the users linux system, including but not limited to iwconfig, airmon-ng, airodump-ng, aireplay-ng, aircrack-ng. + +Operations may be run sequentially, or in parallel using multi-threading + +As needed, the use of shell tools should utilize sudo capabilities + +As needed, the application can change the state of the users wifi interface between managed and monitor mode + +Save this to hw7/{llm}/app.py +``` + +## Output - Gemini (gemini 1.5) +There were a few runs of errors, but eventually I was able to get aider to output a program with the gemini LLM + +### Errors +On the run where code was finally output, we still saw errors. But, we will ignore these for now + +![error0](./gemini/error0.png) +![error1](./gemini/error1.png) + +### Code output +[gemini/app.py](gemini/app.py) + +### Analysis + + + + +## Output - GPT4 (gpt40) +A script was generated here on the first try + +### Errors +Similarly, the code also generated with lint errors, and when prompted, I instructed airder to fix them. However, it did come up with a program on the first try +![error0](./gpt4/error0.png) +![error1](./gpt4/error1.png) + + +### Code output +[gpt4/app.py](gpt4/app.py) + +### Analysis + + + +## Output - Claude (claude-opus) +I was able to redeem $5 of free API credits for this test + +### Errors +On the first shot, claude rejected this ask. On the second try, it gave a program with a nice summary +![error0](./claude/error0.png) +![summary](./claude/summary.png) + + +### Code output +[claude/app.py](claude/app.py) + +### Analysis diff --git a/hw7/app.py b/hw7/app.py deleted file mode 100644 index e69de29..0000000 diff --git a/hw7/claude/error0.png b/hw7/claude/error0.png new file mode 100644 index 0000000..4f07544 Binary files /dev/null and b/hw7/claude/error0.png differ diff --git a/hw7/claude/summary.png b/hw7/claude/summary.png new file mode 100644 index 0000000..d60c408 Binary files /dev/null and b/hw7/claude/summary.png differ diff --git a/hw7/prompt0/app.py b/hw7/gemini/app.py similarity index 100% rename from hw7/prompt0/app.py rename to hw7/gemini/app.py diff --git a/hw7/gemini/error0.png b/hw7/gemini/error0.png new file mode 100644 index 0000000..e793f64 Binary files /dev/null and b/hw7/gemini/error0.png differ diff --git a/hw7/gemini/error1.png b/hw7/gemini/error1.png new file mode 100644 index 0000000..c73a8d9 Binary files /dev/null and b/hw7/gemini/error1.png differ diff --git a/hw7/gpt4/error0.png b/hw7/gpt4/error0.png new file mode 100644 index 0000000..07f1fd6 Binary files /dev/null and b/hw7/gpt4/error0.png differ diff --git a/hw7/gpt4/error1.png b/hw7/gpt4/error1.png new file mode 100644 index 0000000..1af121c Binary files /dev/null and b/hw7/gpt4/error1.png differ