MCPcopy Index your code
hub / github.com/Autumn-27/ScopeSentry

github.com/Autumn-27/ScopeSentry @v1.9.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.9.2 ↗ · + Follow
37,419 symbols 142,744 edges 1,433 files 922 documented · 2%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README
<img src="https://github.com/Autumn-27/ScopeSentry/raw/v1.9.2/docs/images/favicon.ico"/>

English | 中文

Ask DeepWiki

Introduction

Scope Sentry is a tool with functions such as asset mapping, subdomain enumeration, information leakage detection, vulnerability scanning, directory scanning, subdomain takeover, crawler, and page monitoring. By building multiple nodes, users can freely choose nodes to run scanning tasks. When new vulnerabilities emerge, it can quickly check whether the concerned assets have related components.

Distributed Implementation Reference Articles: https://mp.weixin.qq.com/s/xfgRxUjljoQ8KzacblktxA

Server Recommendation: lightnode

Discord:

https://discord.gg/GWVwSBBm48

Language

Server:python - FastApi

Scan:go

Front-end:vue - vue-element-plus-admin

Website

Install

git clone https://github.com/Autumn-27/ScopeSentry.git
cd ScopeSentry
# Change the MongoDB and Redis account passwords in the. env file.
docker-compose -f single-host-deployment.yml up -d

After running, there will be four containers: mongodb, redis, scope-sentry (server), and scopesentry-scan (scan). By default, there will be one scanning node.

View the initial user password and the secondary verification password of the plug-in

docker logs scope-sentry

Add new nodes(Optional)

git clone https://github.com/Autumn-27/ScopeSentry-Scan.git
cd ScopeSentry-Scan/build
# Edit the connection information for MongoDB and Redis in the .env file. NodeName is the node name, and each node name should be unique (if it is empty, it will be randomly generated, and you can change the name in the web interface).
docker-compose -f scan-docker-compose.yml up -d

Plugin Flowchart

Current Features

  • Plugin System (Add any tool through extension)
  • Subdomain Enumeration
  • Subdomain Takeover Detection
  • Port Scanning
  • Asset Identification
  • Directory Scanning
  • Vulnerability Scanning
  • Sensitive Information Leakage Detection
  • URL Extraction
  • Crawler
  • Page Monitoring
  • Custom WEB Fingerprint
  • POC Import
  • Asset Grouping
  • Multi-Node Scanning
  • Webhook

To Do

- Weak Password Cracking

Installation

For installation instructions, see the official website

Communication

Discord:

https://discord.gg/agsYdAyN

Screenshots

Login

alt text

Homepage Dashboard

alt text

Plugin System

alt text alt text

Asset Data

Assets

alt text alt text alt text

Quick syntax search:

alt text

Root Domain

alt text

Subdomains

alt text

Subdomain Takeover

alt text

APP

alt text

小程序

alt text

URL

alt text

Crawler

alt text

Sensitive Information

alt text

Directory Scanning

alt text

Vulnerabilities

alt text

Page Monitoring

alt text alt text

Projects

Project asset aggregation

Panel - Overview

Subdomains

Port

Service

Tasks

Task Progress

Nodes

License

All branches of this project follow AGPL-3.0, and additional terms need to be followed: 1. The commercial use of this software requires a separate commercial license. 2. Companies, organizations, and for-profit entities must obtain a commercial license before using, distributing, or modifying this software. Individuals and non-profit organizations are free to use this software in accordance with the terms of AGPL-3.0. 4. If you have any commercial license inquiries, please contact rainy-autumn@outlook.com .

Extension points exported contracts — how you extend this code

EventHandler (Interface)
事件处理器接口 EventHandler 事件处理器接口 [4 implementers]
internal/utils/ct/models/event.go
TakerRepository (Interface)
(no doc) [6 implementers]
internal/repositories/assets/subdomain/taker.go
DedupService (Interface)
--------------------------------------------- 资产去重服务(从 Python 的 do_asset_deduplication/asset_data_dedup 重构) ------------ [1 …
internal/services/assets/common/common.go
RouteMetaCustom (Interface)
* redirect: noredirect 当设置 noredirect 的时候该路由在面包屑导航中不可被点击 * name:'router-name' 设定路由的名字,一定要填写不然使用<keep-ali
frontend/types/router.d.ts
JobHandler (FuncType)
JobHandler 表示任务处理函数的类型
internal/scheduler/scheduler.go
StartupEvent (FuncType)
StartupEvent 启动事件处理函数
internal/bootstrap/bootstrap .go
Plugin (Interface)
(no doc) [1 implementers]
internal/interfaces/plugin.go
IconTypes (Interface)
(no doc)
frontend/src/components/Icon/src/types/index.ts

Core symbols most depended-on inside this repo

n
called by 5132
cmd/main/static/assets/MP-BRldb8Qx.js
call
called by 2880
cmd/main/static/js/@tresjs.CJvYCGUA1764683399638.js
push
called by 2718
cmd/main/static/assets/jsonMode-By8YtWaE.js
push
called by 2368
cmd/main/static/js/mqtt.rTqcrTe21764683399638.js
me
called by 1830
cmd/main/static/js/naive-ui.B3U9nW8I1764683399638.js
get
called by 1812
cmd/main/static/js/mqtt.rTqcrTe21764683399638.js
get
called by 1778
cmd/main/static/assets/index-JT3FOLaL.js
apply
called by 1711
cmd/main/static/assets/index-r_ORVl1e.js

Shape

Function 20,072
Method 13,589
Class 3,153
Struct 387
Interface 209
FuncType 6
TypeAlias 2
Enum 1

Languages

TypeScript95%
Go5%

Modules by API surface

cmd/main/static/js/@tresjs.CJvYCGUA1764683399638.js4,622 symbols
cmd/main/static/assets/index-r_ORVl1e.js1,977 symbols
cmd/main/static/assets/index-B_6x2qU9.js1,977 symbols
cmd/main/static/js/@icegl.eCZDSHLk1764683399638.js1,486 symbols
cmd/main/static/assets/style.css_vue_type_style_index_0_src_true_lang-oIWjqAOa.js1,356 symbols
cmd/main/static/assets/style.css_vue_type_style_index_0_src_true_lang-CmXaVCF1.js1,356 symbols
cmd/main/static/js/echarts.BqGvY13C1764683399638.js1,088 symbols
cmd/main/static/js/index.DM693cYN1764683399638.js1,065 symbols
cmd/main/static/draco/draco_encoder.js986 symbols
cmd/main/static/draco/gltf/draco_encoder.js970 symbols
cmd/main/static/js/tweakpane.CqZAnw7f1764683399638.js877 symbols
cmd/main/static/assets/Dashboard-D8BzASbz.js856 symbols

Datastores touched

PageMonitoringCollection · 1 repos
ScheduledTasksCollection · 1 repos
assetCollection · 1 repos
pluginsCollection · 1 repos
taskCollection · 1 repos
FingerprintRulesCollection · 1 repos
HttpBodyCollection · 1 repos
IPAssetCollection · 1 repos

For agents

$ claude mcp add ScopeSentry \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact