Security AI Agent BRAMA

AI Agent Brama can help you check the security metrics and safety of the following resources:

  • Text messages,
  • Site URL,
  • Email,
  • Phone number,
  • SMS.

You can also use the educational mode to learn more about social engineering and cybersecurity threats, such as scams and phishing.

Some platforms, like email services, constantly improve their spam filters, and cyber criminals are learning to bypass them. Many channels are hard to protect, like direct calls, SMS, and messengers. These channels are used for phishing, scams, and vishing.

BRAMA agent is going to help users receive additional context regarding suspicious emails, messages, and SMS.

Agent utilize Anthropic Claude Models to analize the conext.
Together with information from 3d party APIs and resources, the agent can provide additional context:

  • Whether the URL was marked as malicious or used for phishing
  • Whether the phone number that is calling/sending SMS to you is being used for scams, phishing, or other suspicious activities
  • Check the sender's email and content
  • Checks the Domain-based Message Authentication, Reporting, and Conformance (DMARC) record of a domain

After processing by the BRAMA agent, you will receive a comprehensive analysis of the messages or content, providing you with the necessary information to make informed decisions.

If the input contains multiple data types to check (domain, phone, email), we call agent tools one by one.
Note: Some cases can work with errors. Error management needs to be improved.

Disclaimer: The agent will process the information using the Anthropic API check https://www.anthropic.com/legal/consumer-terms.
If you do not agree with the agent's conclusions or find an error, create an issue https://github.com/oborys/security-ai-agent-brama/issues

Installation

Clone the repository

git clone https://github.com/oborys/security-ai-agent-brama.git

Go to your project folder

cd security-ai-agent-brama

Set up a Python venv

To get started, ensure that Python 3 is installed on your machine. Then, we'll create a virtual environment using venv to keep our project dependencies separate from the rest of the system.

Install virtualenv via pip

pip install virtualenv

Create the venv

python3 -m venv venv

Activate your venv

source venv/bin/activate

Install dependencies

pip install -r requirements.txt

Configuration. Set related API Key

The project utilized 3d party APIs.

A Majority of APIs are free with usage limitations; you need to register and retrieve your API Key.

  1. Get the Anthropic API Key here https://console.anthropic.com/settings/keys

Set Anthropic API Key as an environment variable in your virtual environment:

export ANTHROPIC_API_KEY="YOUR_API_KEY"
  1. Get VirusTotal API Key here https://www.virustotal.com/gui/my-apikey

VirusTotal inspects items with over 70 antivirus scanners and URL/domain blocklisting services, in addition to a myriad of tools to extract signals from the studied content.

Set VirusTotal API Key as an environment variable in your virtual environment:

export VT_API_KEY="YOUR_API_KEY"
  1. Get Brave API Key here https://api.search.brave.com/register

The agent uses Brave Search API to search for information about phone numbers. Then, we use this information for further analysis.

Set Brave API Key as an environment variable in your virtual environment:

export BRAVE_API_KEY="YOUR_API_KEY"
  1. Get Voyage AI API Key here https://dash.voyageai.com/api-keys

Voyage AI provides cutting-edge embedding and rerankers.
Embedding models are neural net models (e.g., transformers) that convert unstructured and complex data, such as documents, images, audio, videos, or tabular data, into dense numerical vectors (i.e., embeddings) that capture their semantic meanings.

Embedding is used in the agent's Educational mode. In this mode, users can interact with an assistant and learn information by utilizing information from one of the PDFs connected with social engineering.

Set Voyage API Key as an environment variable in your virtual environment:

export VOYAGE_API_KEY="YOUR_API_KEY"
  1. URLhaus API using in agent without API Key

  2. Get Cisco Umbrella API Key here https://signup.umbrella.com/

Add Umbrella API Key documentation

Set Umbrella as an environment variable in your virtual environment:

export UMBRELLA_API_CLIENT="YOUR_Umbrella_API_Client"
export UMBRELLA_API_SECRET="YOUR_Umbrella_API_Secret"

Usage

Run the agent

python agentBrama.py  

Expected output:

Hi, this is an AI Agent Brama, who can help you check the security metrics and safety of the following resources: 
Text messages, Site URL, Email, Phone number, and SMS. You can also use the educational mode to learn more about social engineering and cybersecurity threats, such as scams and phishing.

Enter a URL, message, or write 'img', 'screenshot', or 'image' to attach an image, or 'education_mode' or 'quit' to exit: 

Work with URL

Type in malicious URL

http://117.222.254.157:39234/Mozi.m

Or type in malicious URL

jwgruop.com

Expected output:
img

Work with Screenshots

In the img folder of the reposytory there are a few screenshot of the messages that you can use.

Type in img

Enter a URL, message, or write 'img', 'screenshot', or 'image' to attach an image, or 'education_mode' or 'quit' to exit: img

Then provide a path to the image
[path]/Users/oleksa/ml/agent/security-ai-agent-brama/img/phishing-sms.png

Expected output:
img

Work with Phone Numbers

Type in number 202-221-7923

Expected output:

img

Educational mode

img

Roadmap

  • Improve Educational components
  • Developed feature that can check public information authorized and verified person in socials and highlight which data is available for cybercrime and can be used against person
  • Sent reports about malicious/phishing URL or domains to the security organizations that collect this information
  • Multimodal audio recognition for phone calls using https://github.com/fixie-ai/ultravox
  • Add Agent Protocol for interaction with another agents https://agentprotocol.ai/
View code on GitHub
  • Owner

  • Contributors

    +1Github contributor
  • Categories

  • Products

    Umbrella
  • Programming Languages

    Python
  • License

    Apache License 2.0

Code Exchange Community

Get help, share code, and collaborate with other developers in the Code Exchange community.View Community
Disclaimer:
Please note that some of the repositories in Code Exchange may be enabled to interact with third-party Generative AI platforms outside of Cisco’s control, and users should review those third-party terms and privacy statements to understand how data is processed, stored or used, including input data.