zitterbewegung / securday

A natural language chatbot accessible using SMS augmented with tools using langchain.
Apache License 2.0
15 stars 3 forks source link

Saturday

The code for Securday autonomous agent that assists in information security tasks.

Description

Under the hood it uses langchain (a way to augment LLMs) that currently uses an web interface that will allow for basic information retrieval tasks (google search, searching shodan, google places) and has the goal of doing complex offensive and defensive security tasks using anything from a dumb phone to a smartphone. It is preprogramed with tools that it can intelligently use to accomplish certain tasks such as performing a search on shodan given an IP address.

Getting Started

Dependencies

Installing & Execution

Create a virtualenv from requirements.py

python -m venv venv
source venv/bin/activate
pip install -r requirements.txt

I use ngrok to make a public ip that can be consumed from twilio

ngrok http 5000

Install rabbitmq using the script https://rabbitmq.com/install-debian.html

Executing program

First start app.py

python app.py

Then start reciever.py

Then start receiver.py (at minium you need one of these).

python receiver.py

Help

If you aren't seeing SMSs flowing down to the flask server look at the twilio console. You probably don't have the phone number URL / IP correctly entered.

Using ngrok for development or initial setup is recommended but not required.

command to run if program contains helper info

Authors

If you contribute to the project for your first contribution if you accept I will buy you gyros either through a gift card or in person depending on where you are.

ex. Zitterbewegung

Special thanks to miniagi working out pentesting.

Version History

License

This project is licensed under the Apache 2.0 License - see the LICENSE.md file for details

Acknowledgments

I have used an Miniagi with modifications so that it can be accessed through SMS. I have made it use a message queue and also to only do pentesting.