Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: arxiv.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (7.5%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: bsinger98
- License: mit
- Language: Python
- Default Branch: main
- Size: 111 MB
Statistics
- Stars: 50
- Watchers: 1
- Forks: 11
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Incalmo: An Autonomous LLM-Based Multi-Stage Attacker
Research Paper: On the Feasibility of Using LLMs to Execute Multistage Network Attacks
Quick Start Guide
Prerequisites
- Docker Desktop
- Node.js (Optional: only needed for UI Interface)
Setup Instructions
1. Setup configuration
Create a configuration file by copying the example:
bash
cp config/config_example.json config/config.json
Then edit config/config.json as needed.
2. Set API Keys
Create an environment file by copying the example:
bash
cp .env.example .env
Then add LLM API keys to .env.
3. Start the Development Environment
Navigate to the docker directory and start the containers:
bash
cd docker
docker compose up
4. Run Incalmo
In a new terminal window, attach to the running container and execute Incalmo:
bash
cd docker
docker compose exec attacker /bin/bash
uv run main.py
UI Interface (optional)
If you want to use the web-based interface for Incalmo:
1. Start Backend
Follow Steps 1 through 3 in the Setup Instructions.
2. Install Node.js dependencies
Install Node dependencies:
bash
cd incalmo/frontend/incalmo-ui
npm install
3. Start the React Server
Once dependencies are installed, run the react server:
bash
npm start
This will lauch the frontend at http://localhost:3000
Owner
- Name: Brian Singer
- Login: bsinger98
- Kind: user
- Location: United States
- Company: Carnegie Mellon University
- Website: https://www.briansinger.me
- Repositories: 2
- Profile: https://github.com/bsinger98
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this work, please cite it as below."
authors:
- family-names: "Singer"
given-names: "Brian"
- family-names: "Lucas"
given-names: "Keane"
- family-names: "Adiga"
given-names: "Lakshmi"
- family-names: "Jain"
given-names: "Meghna"
- family-names: "Bauer"
given-names: "Lujo"
- family-names: "Sekar"
given-names: "Vyas"
title: "On the Feasibility of Using LLMs to Execute Multistage Network Attacks"
date-released: 2025-01-30
url: https://arxiv.org/abs/2501.16466
preferred-citation:
type: article
authors:
- family-names: "Singer"
given-names: "Brian"
- family-names: "Lucas"
given-names: "Keane"
- family-names: "Adiga"
given-names: "Lakshmi"
- family-names: "Jain"
given-names: "Meghna"
- family-names: "Bauer"
given-names: "Lujo"
- family-names: "Sekar"
given-names: "Vyas"
title: "On the Feasibility of Using LLMs to Execute Multistage Network Attacks"
year: 2025
journal: "arXiv preprint arXiv:2501.16466"
GitHub Events
Total
- Issues event: 4
- Watch event: 29
- Delete event: 23
- Issue comment event: 2
- Push event: 79
- Pull request review event: 37
- Pull request review comment event: 29
- Pull request event: 53
- Fork event: 7
- Create event: 29
Last Year
- Issues event: 4
- Watch event: 29
- Delete event: 23
- Issue comment event: 2
- Push event: 79
- Pull request review event: 37
- Pull request review comment event: 29
- Pull request event: 53
- Fork event: 7
- Create event: 29
Dependencies
- actions/checkout v4 composite
- astral-sh/setup-uv v6 composite
- ubuntu 22.04 build
- ubuntu 22.04 build
- anthropic >=0.52.0
- click >=8.1.8
- flask [async]>=3.1.0
- google-generativeai >=0.8.5
- marshmallow >=4.0.0
- openai >=1.84.0
- pydantic >=2.11.4
- pydantic-settings >=2.9.1
- requests >=2.32.3
- structlog >=25.3.0
- annotated-types 0.7.0
- anthropic 0.52.0
- anyio 4.9.0
- asgiref 3.8.1
- blinker 1.9.0
- cachetools 5.5.2
- certifi 2025.4.26
- charset-normalizer 3.4.2
- click 8.1.8
- colorama 0.4.6
- distro 1.9.0
- flask 3.1.0
- google-ai-generativelanguage 0.6.15
- google-api-core 2.24.2
- google-api-python-client 2.170.0
- google-auth 2.40.2
- google-auth-httplib2 0.2.0
- google-generativeai 0.8.5
- googleapis-common-protos 1.70.0
- grpcio 1.71.0
- grpcio-status 1.71.0
- h11 0.16.0
- httpcore 1.0.9
- httplib2 0.22.0
- httpx 0.28.1
- idna 3.10
- incalmo 0.1.0
- itsdangerous 2.2.0
- jinja2 3.1.6
- jiter 0.10.0
- markupsafe 3.0.2
- marshmallow 4.0.0
- openai 1.84.0
- proto-plus 1.26.1
- protobuf 5.29.4
- pyasn1 0.6.1
- pyasn1-modules 0.4.2
- pydantic 2.11.4
- pydantic-core 2.33.2
- pydantic-settings 2.9.1
- pyparsing 3.2.3
- python-dotenv 1.1.0
- requests 2.32.3
- rsa 4.9.1
- ruff 0.11.11
- sniffio 1.3.1
- structlog 25.3.0
- tqdm 4.67.1
- typing-extensions 4.13.2
- typing-inspection 0.4.0
- uritemplate 4.1.1
- urllib3 2.4.0
- werkzeug 3.1.3
- 1348 dependencies
- @emotion/react ^11.14.0
- @emotion/styled ^11.14.0
- @mui/icons-material ^7.1.1
- @mui/material ^7.1.1
- @mui/types ^7.4.3
- @testing-library/dom ^10.4.0
- @testing-library/jest-dom ^6.6.3
- @testing-library/react ^16.3.0
- @testing-library/user-event ^13.5.0
- @types/node ^24.0.1
- @types/react ^19.1.8
- @types/react-dom ^19.1.6
- axios ^1.9.0
- dagre ^0.8.5
- react ^19.1.0
- react-dom ^19.1.0
- react-scripts 5.0.1
- reactflow ^11.11.4
- typescript ^4.9.5
- web-vitals ^2.1.4