@j3r3mcdev/oast-server 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/ci.yml +29 -29
- package/.github/workflows/publish.yml +31 -31
- package/README.md +192 -192
- package/dist/listeners/ssrf/__tests__/ssrf.listener.test.js +16 -4
- package/jest.config.js +14 -14
- package/package.json +45 -45
- package/sadmin list shadows +9 -9
- package/src/api/controllers/__tests__/tasks.controller.test.ts +74 -74
- package/src/api/controllers/events.controller.ts +10 -10
- package/src/api/controllers/health.controller.ts +7 -7
- package/src/api/controllers/tasks.controller.ts +41 -41
- package/src/api/dto/__tests__/create-task.dto.test.ts +41 -41
- package/src/api/dto/__tests__/filter-tasks.dto.test.ts +35 -35
- package/src/api/dto/create-task.dto.ts +33 -33
- package/src/api/dto/filter-tasks.dto.ts +33 -33
- package/src/api/services/__tests__/events.service.test.ts +41 -41
- package/src/api/services/__tests__/tasks.service.test.ts +41 -41
- package/src/api/services/events.service.ts +17 -17
- package/src/api/services/tasks.service.ts +79 -79
- package/src/api/sse/events.stream.ts +90 -90
- package/src/core/__tests__/core-router.test.ts +30 -30
- package/src/core/__tests__/core-server.test.ts +44 -44
- package/src/core/__tests__/event.normalizer.test.ts +56 -56
- package/src/core/__tests__/event.router.test.ts +89 -89
- package/src/core/__tests__/logger.test.ts +32 -32
- package/src/core/__tests__/storage-manager.test.ts +74 -74
- package/src/core/event.normalizer.ts +147 -147
- package/src/core/event.router.ts +13 -13
- package/src/core/http/__tests__/adapter-node.test.ts +52 -52
- package/src/core/http/__tests__/body-parser-multipart.test.ts +41 -41
- package/src/core/http/__tests__/body-parser-raw.test.ts +28 -28
- package/src/core/http/__tests__/body-parser-text.test.ts +28 -28
- package/src/core/http/__tests__/compile-path.test.ts +39 -39
- package/src/core/http/__tests__/middleware-pipeline.test.ts +51 -51
- package/src/core/http/__tests__/request.test.ts +34 -34
- package/src/core/http/__tests__/response.test.ts +35 -35
- package/src/core/http/__tests__/router-match.test.ts +171 -171
- package/src/core/http/adapter-node.ts +51 -51
- package/src/core/http/buildRequest.ts +18 -18
- package/src/core/http/compile-path.ts +32 -32
- package/src/core/http/errors.ts +37 -37
- package/src/core/http/http-server.ts +52 -52
- package/src/core/http/middleware.ts +160 -160
- package/src/core/http/request.ts +55 -55
- package/src/core/http/response.ts +93 -93
- package/src/core/http/router.ts +138 -138
- package/src/core/id-generator.ts +8 -8
- package/src/core/logger.ts +113 -113
- package/src/core/router.ts +44 -44
- package/src/core/server.ts +85 -85
- package/src/core/storage.ts +64 -64
- package/src/index.ts +89 -89
- package/src/listeners/api/__tests__/api.controller.test.ts +116 -116
- package/src/listeners/api/__tests__/api.extractor.test.ts +46 -46
- package/src/listeners/api/__tests__/api.listener.test.ts +82 -82
- package/src/listeners/api/__tests__/api.routes.test.ts +155 -155
- package/src/listeners/api/__tests__/api.sse.test.ts +105 -105
- package/src/listeners/api/api.controllers.ts +67 -67
- package/src/listeners/api/api.extractor.ts +43 -43
- package/src/listeners/api/api.listener.ts +50 -50
- package/src/listeners/api/api.routes.ts +76 -76
- package/src/listeners/api/api.sse.ts +38 -38
- package/src/listeners/dns/__tests__/dns.test.ts +118 -118
- package/src/listeners/dns/dns.extractor.ts +14 -14
- package/src/listeners/dns/dns.listener.ts +61 -61
- package/src/listeners/http/__tests__/http.extractor.test.ts +59 -59
- package/src/listeners/http/__tests__/http.listener.test.ts +133 -133
- package/src/listeners/http/http.extractor.ts +15 -15
- package/src/listeners/http/http.listener.ts +110 -110
- package/src/listeners/listener.interface.ts +4 -4
- package/src/listeners/smtp/__tests__/smtp.extractor.test.ts +69 -69
- package/src/listeners/smtp/__tests__/smtp.listener.test.ts +150 -150
- package/src/listeners/smtp/smtp.extractor.ts +18 -18
- package/src/listeners/smtp/smtp.listener.ts +60 -60
- package/src/listeners/ssrf/__tests__/ssrf.extractor.test.ts +41 -41
- package/src/listeners/ssrf/__tests__/ssrf.listener.test.ts +87 -87
- package/src/listeners/ssrf/ssrf.extractor.ts +14 -14
- package/src/listeners/ssrf/ssrf.listener.ts +37 -37
- package/src/listeners/tcp/tcp.extractor.ts +16 -16
- package/src/listeners/tcp/tcp.listener.ts +61 -61
- package/src/listeners/webhook/__tests__/webhook.extractor.test.ts +35 -35
- package/src/listeners/webhook/__tests__/webhook.listener.test.ts +122 -122
- package/src/listeners/webhook/webhook.extractor.ts +12 -12
- package/src/listeners/webhook/webhook.listener.ts +58 -58
- package/src/listeners/websocket/__tests__/websocket.extractor.test.ts +33 -33
- package/src/listeners/websocket/__tests__/websocket.listener.test.ts +90 -90
- package/src/listeners/websocket/websocket.extractor.ts +11 -11
- package/src/listeners/websocket/websocket.listener.ts +40 -40
- package/src/storage-adapters/adapters/__tests__/memory.storage.test.ts +75 -75
- package/src/storage-adapters/adapters/memory.storage.ts +64 -64
- package/src/storage-adapters/storage.interface.ts +26 -26
- package/src/types/event.types.ts +147 -147
- package/tsconfig.json +21 -21
- package/dist/api/controllers/__tests__/tasks.controller.test.d.ts +0 -1
- package/dist/api/controllers/events.controller.d.ts +0 -6
- package/dist/api/controllers/health.controller.d.ts +0 -4
- package/dist/api/controllers/index.d.ts +0 -0
- package/dist/api/controllers/tasks.controller.d.ts +0 -40
- package/dist/api/dto/__tests__/create-task.dto.test.d.ts +0 -1
- package/dist/api/dto/__tests__/filter-tasks.dto.test.d.ts +0 -1
- package/dist/api/dto/create-task.dto.d.ts +0 -9
- package/dist/api/dto/filter-tasks.dto.d.ts +0 -8
- package/dist/api/services/__tests__/events.service.test.d.ts +0 -1
- package/dist/api/services/__tests__/tasks.service.test.d.ts +0 -1
- package/dist/api/services/events.service.d.ts +0 -8
- package/dist/api/services/tasks.service.d.ts +0 -22
- package/dist/api/sse/events.stream.d.ts +0 -25
- package/dist/config/constants.d.ts +0 -0
- package/dist/config/env.d.ts +0 -0
- package/dist/core/__tests__/core-router.test.d.ts +0 -1
- package/dist/core/__tests__/core-server.test.d.ts +0 -1
- package/dist/core/__tests__/event.normalizer.test.d.ts +0 -1
- package/dist/core/__tests__/event.router.test.d.ts +0 -1
- package/dist/core/__tests__/logger.test.d.ts +0 -1
- package/dist/core/__tests__/storage-manager.test.d.ts +0 -1
- package/dist/core/event.normalizer.d.ts +0 -10
- package/dist/core/event.router.d.ts +0 -7
- package/dist/core/http/__tests__/adapter-node.test.d.ts +0 -1
- package/dist/core/http/__tests__/body-parser-multipart.test.d.ts +0 -1
- package/dist/core/http/__tests__/body-parser-raw.test.d.ts +0 -1
- package/dist/core/http/__tests__/body-parser-text.test.d.ts +0 -1
- package/dist/core/http/__tests__/compile-path.test.d.ts +0 -1
- package/dist/core/http/__tests__/middleware-pipeline.test.d.ts +0 -1
- package/dist/core/http/__tests__/request.test.d.ts +0 -1
- package/dist/core/http/__tests__/response.test.d.ts +0 -1
- package/dist/core/http/__tests__/router-match.test.d.ts +0 -1
- package/dist/core/http/adapter-node.d.ts +0 -8
- package/dist/core/http/buildRequest.d.ts +0 -2
- package/dist/core/http/compile-path.d.ts +0 -13
- package/dist/core/http/errors.d.ts +0 -9
- package/dist/core/http/http-server.d.ts +0 -7
- package/dist/core/http/index.d.ts +0 -0
- package/dist/core/http/main.d.ts +0 -0
- package/dist/core/http/middleware.d.ts +0 -12
- package/dist/core/http/request.d.ts +0 -35
- package/dist/core/http/response.d.ts +0 -17
- package/dist/core/http/router.d.ts +0 -28
- package/dist/core/http/utils.d.ts +0 -0
- package/dist/core/id-generator.d.ts +0 -3
- package/dist/core/logger.d.ts +0 -29
- package/dist/core/router.d.ts +0 -16
- package/dist/core/server.d.ts +0 -25
- package/dist/core/storage.d.ts +0 -24
- package/dist/index.d.ts +0 -1
- package/dist/listeners/api/__tests__/api.controller.test.d.ts +0 -1
- package/dist/listeners/api/__tests__/api.extractor.test.d.ts +0 -1
- package/dist/listeners/api/__tests__/api.listener.test.d.ts +0 -1
- package/dist/listeners/api/__tests__/api.routes.test.d.ts +0 -1
- package/dist/listeners/api/__tests__/api.sse.test.d.ts +0 -1
- package/dist/listeners/api/api.controllers.d.ts +0 -9
- package/dist/listeners/api/api.extractor.d.ts +0 -5
- package/dist/listeners/api/api.listener.d.ts +0 -17
- package/dist/listeners/api/api.routes.d.ts +0 -5
- package/dist/listeners/api/api.sse.d.ts +0 -10
- package/dist/listeners/dns/__tests__/dns.test.d.ts +0 -1
- package/dist/listeners/dns/dns.extractor.d.ts +0 -8
- package/dist/listeners/dns/dns.listener.d.ts +0 -15
- package/dist/listeners/http/__tests__/http.extractor.test.d.ts +0 -1
- package/dist/listeners/http/__tests__/http.listener.test.d.ts +0 -1
- package/dist/listeners/http/http.extractor.d.ts +0 -11
- package/dist/listeners/http/http.listener.d.ts +0 -17
- package/dist/listeners/listener.interface.d.ts +0 -4
- package/dist/listeners/smtp/__tests__/smtp.extractor.test.d.ts +0 -1
- package/dist/listeners/smtp/__tests__/smtp.listener.test.d.ts +0 -1
- package/dist/listeners/smtp/smtp.extractor.d.ts +0 -12
- package/dist/listeners/smtp/smtp.listener.d.ts +0 -13
- package/dist/listeners/ssrf/__tests__/ssrf.extractor.test.d.ts +0 -1
- package/dist/listeners/ssrf/__tests__/ssrf.listener.test.d.ts +0 -1
- package/dist/listeners/ssrf/ssrf.extractor.d.ts +0 -10
- package/dist/listeners/ssrf/ssrf.listener.d.ts +0 -8
- package/dist/listeners/tcp/tcp.extractor.d.ts +0 -4
- package/dist/listeners/tcp/tcp.listener.d.ts +0 -18
- package/dist/listeners/webhook/__tests__/webhook.extractor.test.d.ts +0 -1
- package/dist/listeners/webhook/__tests__/webhook.listener.test.d.ts +0 -1
- package/dist/listeners/webhook/webhook.extractor.d.ts +0 -8
- package/dist/listeners/webhook/webhook.listener.d.ts +0 -8
- package/dist/listeners/websocket/__tests__/websocket.extractor.test.d.ts +0 -1
- package/dist/listeners/websocket/__tests__/websocket.listener.test.d.ts +0 -1
- package/dist/listeners/websocket/websocket.extractor.d.ts +0 -10
- package/dist/listeners/websocket/websocket.listener.d.ts +0 -8
- package/dist/storage-adapters/adapters/__tests__/memory.storage.test.d.ts +0 -1
- package/dist/storage-adapters/adapters/memory.storage.d.ts +0 -21
- package/dist/storage-adapters/adapters/redis.storage.d.ts +0 -0
- package/dist/storage-adapters/adapters/sqlite.storage.d.ts +0 -0
- package/dist/storage-adapters/storage.interface.d.ts +0 -18
- package/dist/types/event.types.d.ts +0 -118
- package/dist/utils/token.d.ts +0 -0
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
export interface RequestContext {
|
|
2
|
-
[key: string]: any;
|
|
3
|
-
}
|
|
4
|
-
export declare class Request {
|
|
5
|
-
readonly method: string;
|
|
6
|
-
readonly path: string;
|
|
7
|
-
readonly headers: Record<string, string>;
|
|
8
|
-
readonly query: Record<string, string | string[]>;
|
|
9
|
-
readonly params: Record<string, string>;
|
|
10
|
-
body: any;
|
|
11
|
-
bodyRaw?: Buffer;
|
|
12
|
-
bodyText?: string;
|
|
13
|
-
files?: Array<{
|
|
14
|
-
fieldname: string;
|
|
15
|
-
filename: string;
|
|
16
|
-
contentType: string;
|
|
17
|
-
data: Buffer;
|
|
18
|
-
}>;
|
|
19
|
-
form?: Record<string, string>;
|
|
20
|
-
readonly ip: string;
|
|
21
|
-
readonly raw: any;
|
|
22
|
-
readonly context: RequestContext;
|
|
23
|
-
constructor(options: {
|
|
24
|
-
method: string;
|
|
25
|
-
path: string;
|
|
26
|
-
headers: Record<string, string>;
|
|
27
|
-
query?: Record<string, string | string[]>;
|
|
28
|
-
params?: Record<string, string>;
|
|
29
|
-
body?: any;
|
|
30
|
-
ip?: string;
|
|
31
|
-
raw?: any;
|
|
32
|
-
context?: RequestContext;
|
|
33
|
-
});
|
|
34
|
-
header(name: string): string | undefined;
|
|
35
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export declare class Response {
|
|
2
|
-
private _status;
|
|
3
|
-
private _headers;
|
|
4
|
-
private _sent;
|
|
5
|
-
private _raw;
|
|
6
|
-
constructor(raw: any);
|
|
7
|
-
status(code: number): this;
|
|
8
|
-
header(name: string, value: string): this;
|
|
9
|
-
json(data: any): void;
|
|
10
|
-
text(data: string): void;
|
|
11
|
-
send(data: any): void;
|
|
12
|
-
stream(readable: NodeJS.ReadableStream): void;
|
|
13
|
-
sse(): void;
|
|
14
|
-
write(data: string): void;
|
|
15
|
-
end(): void;
|
|
16
|
-
private ensureNotSent;
|
|
17
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Middleware } from "./middleware";
|
|
2
|
-
export declare class Router {
|
|
3
|
-
private routes;
|
|
4
|
-
/**
|
|
5
|
-
* Enregistre une route avec middlewares optionnels :
|
|
6
|
-
* router.get("/x", mw1, mw2, handler)
|
|
7
|
-
*/
|
|
8
|
-
register(method: string, path: string, ...middlewaresAndHandler: any[]): void;
|
|
9
|
-
/**
|
|
10
|
-
* Trouve la route et extrait les params
|
|
11
|
-
*/
|
|
12
|
-
match(method: string, urlPath: string): {
|
|
13
|
-
handler: Function;
|
|
14
|
-
middlewares: Middleware[];
|
|
15
|
-
params: Record<string, string>;
|
|
16
|
-
} | null;
|
|
17
|
-
/**
|
|
18
|
-
* Ton moteur de matching existant — inchangé
|
|
19
|
-
*/
|
|
20
|
-
private matchSegments;
|
|
21
|
-
get(path: string, ...middlewaresAndHandler: any[]): void;
|
|
22
|
-
post(path: string, ...middlewaresAndHandler: any[]): void;
|
|
23
|
-
put(path: string, ...middlewaresAndHandler: any[]): void;
|
|
24
|
-
delete(path: string, ...middlewaresAndHandler: any[]): void;
|
|
25
|
-
patch(path: string, ...middlewaresAndHandler: any[]): void;
|
|
26
|
-
options(path: string, ...middlewaresAndHandler: any[]): void;
|
|
27
|
-
head(path: string, ...middlewaresAndHandler: any[]): void;
|
|
28
|
-
}
|
|
File without changes
|
package/dist/core/logger.d.ts
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
export type LogLevel = "debug" | "info" | "warn" | "error" | "fatal";
|
|
2
|
-
export interface LoggerOptions {
|
|
3
|
-
level?: LogLevel;
|
|
4
|
-
context?: string;
|
|
5
|
-
enabled?: boolean;
|
|
6
|
-
hooks?: Array<(entry: LogEntry) => void>;
|
|
7
|
-
}
|
|
8
|
-
export interface LogEntry {
|
|
9
|
-
timestamp: string;
|
|
10
|
-
level: LogLevel;
|
|
11
|
-
message: string;
|
|
12
|
-
context?: string;
|
|
13
|
-
data?: any;
|
|
14
|
-
}
|
|
15
|
-
export declare class Logger {
|
|
16
|
-
private level;
|
|
17
|
-
private context?;
|
|
18
|
-
private enabled;
|
|
19
|
-
private hooks;
|
|
20
|
-
constructor(options?: LoggerOptions);
|
|
21
|
-
private shouldLog;
|
|
22
|
-
private emit;
|
|
23
|
-
debug(msg: string, data?: any): void;
|
|
24
|
-
info(msg: string, data?: any): void;
|
|
25
|
-
warn(msg: string, data?: any): void;
|
|
26
|
-
error(msg: string, data?: any): void;
|
|
27
|
-
fatal(msg: string, data?: any): void;
|
|
28
|
-
withContext(context: string): Logger;
|
|
29
|
-
}
|
package/dist/core/router.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Storage } from "../storage-adapters/storage.interface";
|
|
2
|
-
import { Logger } from "./logger";
|
|
3
|
-
import { AnyNormalizedEvent } from "../types/event.types";
|
|
4
|
-
export type RouterHook = (event: AnyNormalizedEvent) => void | Promise<void>;
|
|
5
|
-
export interface RouterOptions {
|
|
6
|
-
logger?: Logger;
|
|
7
|
-
hooks?: RouterHook[];
|
|
8
|
-
}
|
|
9
|
-
export declare class CoreRouter {
|
|
10
|
-
private storage;
|
|
11
|
-
private logger;
|
|
12
|
-
private hooks;
|
|
13
|
-
constructor(storage: Storage, options?: RouterOptions);
|
|
14
|
-
dispatch(event: AnyNormalizedEvent): Promise<void>;
|
|
15
|
-
addHook(hook: RouterHook): void;
|
|
16
|
-
}
|
package/dist/core/server.d.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Logger } from "./logger";
|
|
2
|
-
import { CoreRouter } from "./router";
|
|
3
|
-
import { StorageManager } from "./storage";
|
|
4
|
-
import { Listener } from "../listeners/listener.interface";
|
|
5
|
-
export interface CoreServerOptions {
|
|
6
|
-
logger?: Logger;
|
|
7
|
-
storage?: StorageManager;
|
|
8
|
-
listeners?: Listener[];
|
|
9
|
-
}
|
|
10
|
-
export declare class CoreServer {
|
|
11
|
-
private logger;
|
|
12
|
-
private storage;
|
|
13
|
-
private router;
|
|
14
|
-
private listeners;
|
|
15
|
-
constructor(options?: CoreServerOptions);
|
|
16
|
-
getRouter(): CoreRouter;
|
|
17
|
-
getStorage(): StorageManager;
|
|
18
|
-
start(): Promise<void>;
|
|
19
|
-
stop(): Promise<void>;
|
|
20
|
-
/**
|
|
21
|
-
* Méthode appelée par CoreRouter après chaque event normalisé.
|
|
22
|
-
* Permet de diffuser l’event aux listeners SSE (ApiListener).
|
|
23
|
-
*/
|
|
24
|
-
broadcast(event: any): void;
|
|
25
|
-
}
|
package/dist/core/storage.d.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Storage } from "../storage-adapters/storage.interface";
|
|
2
|
-
import { AnyNormalizedEvent } from "../types/event.types";
|
|
3
|
-
import { Logger } from "./logger";
|
|
4
|
-
export declare class StorageManager implements Storage {
|
|
5
|
-
private events;
|
|
6
|
-
private logger;
|
|
7
|
-
constructor(options?: {
|
|
8
|
-
logger?: Logger;
|
|
9
|
-
});
|
|
10
|
-
save(event: AnyNormalizedEvent): Promise<void>;
|
|
11
|
-
getEvent(id: string): Promise<AnyNormalizedEvent | null>;
|
|
12
|
-
listEvents(params: {
|
|
13
|
-
type?: string;
|
|
14
|
-
page?: number;
|
|
15
|
-
limit?: number;
|
|
16
|
-
}): Promise<AnyNormalizedEvent[]>;
|
|
17
|
-
getAll(): Promise<AnyNormalizedEvent[]>;
|
|
18
|
-
deleteEvent(id: string): Promise<boolean>;
|
|
19
|
-
clearEvents(): Promise<void>;
|
|
20
|
-
getStats(): Promise<{
|
|
21
|
-
total: number;
|
|
22
|
-
byType: Record<string, number>;
|
|
23
|
-
}>;
|
|
24
|
-
}
|
package/dist/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ServerResponse } from "http";
|
|
2
|
-
import { StorageManager } from "../../core/storage";
|
|
3
|
-
export declare class ApiController {
|
|
4
|
-
static listEvents(url: URL, res: ServerResponse, storage: StorageManager): Promise<void>;
|
|
5
|
-
static getEvent(id: string, res: ServerResponse, storage: StorageManager): Promise<void>;
|
|
6
|
-
static deleteAll(res: ServerResponse, storage: StorageManager): Promise<void>;
|
|
7
|
-
static deleteOne(id: string, res: ServerResponse, storage: StorageManager): Promise<void>;
|
|
8
|
-
static stats(res: ServerResponse, storage: StorageManager): Promise<void>;
|
|
9
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Logger } from "../../core/logger";
|
|
2
|
-
import { StorageManager } from "../../core/storage";
|
|
3
|
-
export interface ApiListenerOptions {
|
|
4
|
-
port: number;
|
|
5
|
-
logger?: Logger;
|
|
6
|
-
}
|
|
7
|
-
export declare class ApiListener {
|
|
8
|
-
private storage;
|
|
9
|
-
private options;
|
|
10
|
-
private logger;
|
|
11
|
-
private server;
|
|
12
|
-
private sse;
|
|
13
|
-
constructor(storage: StorageManager, options: ApiListenerOptions);
|
|
14
|
-
start(): Promise<void>;
|
|
15
|
-
stop(): Promise<void>;
|
|
16
|
-
broadcastEvent(event: any): void;
|
|
17
|
-
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { IncomingMessage, ServerResponse } from "http";
|
|
2
|
-
import { Logger } from "../../core/logger";
|
|
3
|
-
import { StorageManager } from "../../core/storage";
|
|
4
|
-
import { ApiSse } from "./api.sse";
|
|
5
|
-
export declare function handleApiRequest(req: IncomingMessage, res: ServerResponse, storage: StorageManager, sse: ApiSse, logger: Logger): Promise<void>;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { ServerResponse } from "http";
|
|
2
|
-
import { Logger } from "../../core/logger";
|
|
3
|
-
export declare class ApiSse {
|
|
4
|
-
private logger;
|
|
5
|
-
private clients;
|
|
6
|
-
constructor(logger: Logger);
|
|
7
|
-
handle(res: ServerResponse): void;
|
|
8
|
-
broadcast(event: any): void;
|
|
9
|
-
closeAll(): void;
|
|
10
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Logger } from "../../core/logger";
|
|
2
|
-
import { CoreRouter } from "../../core/router";
|
|
3
|
-
export interface DnsListenerOptions {
|
|
4
|
-
server: any;
|
|
5
|
-
logger?: Logger;
|
|
6
|
-
}
|
|
7
|
-
export declare class DnsListener {
|
|
8
|
-
private router;
|
|
9
|
-
private options;
|
|
10
|
-
private logger;
|
|
11
|
-
constructor(router: CoreRouter, options: DnsListenerOptions);
|
|
12
|
-
start(): Promise<void>;
|
|
13
|
-
stop(): Promise<void>;
|
|
14
|
-
private handleQuery;
|
|
15
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Logger } from "../../core/logger";
|
|
2
|
-
import { CoreRouter } from "../../core/router";
|
|
3
|
-
export interface HttpListenerOptions {
|
|
4
|
-
port: number;
|
|
5
|
-
logger?: Logger;
|
|
6
|
-
}
|
|
7
|
-
export declare class HttpListener {
|
|
8
|
-
private router;
|
|
9
|
-
private options;
|
|
10
|
-
private server?;
|
|
11
|
-
private logger;
|
|
12
|
-
constructor(router: CoreRouter, options: HttpListenerOptions);
|
|
13
|
-
start(): Promise<void>;
|
|
14
|
-
stop(): Promise<void>;
|
|
15
|
-
private handleRequest;
|
|
16
|
-
private readBody;
|
|
17
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { CoreRouter } from "../../core/router";
|
|
2
|
-
import { Logger } from "../../core/logger";
|
|
3
|
-
export declare class SmtpListener {
|
|
4
|
-
private router;
|
|
5
|
-
private server;
|
|
6
|
-
private logger;
|
|
7
|
-
constructor(router: CoreRouter, options: {
|
|
8
|
-
server: any;
|
|
9
|
-
logger?: Logger;
|
|
10
|
-
});
|
|
11
|
-
start(): Promise<void>;
|
|
12
|
-
stop(): Promise<void>;
|
|
13
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Listener } from "../listener.interface";
|
|
2
|
-
import { CoreRouter } from "../../core/router";
|
|
3
|
-
import { StorageManager } from "../../core/storage";
|
|
4
|
-
import { Logger } from "../../core/logger";
|
|
5
|
-
export interface TcpListenerOptions {
|
|
6
|
-
port: number;
|
|
7
|
-
logger?: Logger;
|
|
8
|
-
}
|
|
9
|
-
export declare class TcpListener implements Listener {
|
|
10
|
-
private router;
|
|
11
|
-
private storage;
|
|
12
|
-
private options;
|
|
13
|
-
private server;
|
|
14
|
-
private logger;
|
|
15
|
-
constructor(router: CoreRouter, storage: StorageManager, options: TcpListenerOptions);
|
|
16
|
-
start(): Promise<void>;
|
|
17
|
-
stop(): Promise<void>;
|
|
18
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Storage } from "../storage.interface";
|
|
2
|
-
import { AnyNormalizedEvent } from "../../types/event.types";
|
|
3
|
-
export declare class MemoryStorage implements Storage {
|
|
4
|
-
private events;
|
|
5
|
-
save(event: AnyNormalizedEvent): Promise<void>;
|
|
6
|
-
getEvent(id: string): Promise<AnyNormalizedEvent | null>;
|
|
7
|
-
listEvents(params: {
|
|
8
|
-
type?: string;
|
|
9
|
-
page?: number;
|
|
10
|
-
limit?: number;
|
|
11
|
-
}): Promise<AnyNormalizedEvent[]>;
|
|
12
|
-
getAll(): Promise<AnyNormalizedEvent[]>;
|
|
13
|
-
deleteEvent(id: string): Promise<boolean>;
|
|
14
|
-
clearEvents(): Promise<void>;
|
|
15
|
-
getStats(): Promise<{
|
|
16
|
-
total: number;
|
|
17
|
-
byType: Record<string, number>;
|
|
18
|
-
}>;
|
|
19
|
-
getById(id: string): Promise<AnyNormalizedEvent | null>;
|
|
20
|
-
delete(id: string): Promise<boolean>;
|
|
21
|
-
}
|
|
File without changes
|
|
File without changes
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { AnyNormalizedEvent } from "../types/event.types";
|
|
2
|
-
export interface StorageListParams {
|
|
3
|
-
type?: string;
|
|
4
|
-
page?: number;
|
|
5
|
-
limit?: number;
|
|
6
|
-
}
|
|
7
|
-
export interface Storage {
|
|
8
|
-
save(event: AnyNormalizedEvent): Promise<void>;
|
|
9
|
-
getEvent(id: string): Promise<AnyNormalizedEvent | null>;
|
|
10
|
-
listEvents(params: StorageListParams): Promise<AnyNormalizedEvent[]>;
|
|
11
|
-
deleteEvent(id: string): Promise<boolean>;
|
|
12
|
-
clearEvents(): Promise<void>;
|
|
13
|
-
getAll(): Promise<AnyNormalizedEvent[]>;
|
|
14
|
-
getStats(): Promise<{
|
|
15
|
-
total: number;
|
|
16
|
-
byType: Record<string, number>;
|
|
17
|
-
}>;
|
|
18
|
-
}
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
export interface RawEvent {
|
|
2
|
-
ip: string;
|
|
3
|
-
method: string;
|
|
4
|
-
path: string;
|
|
5
|
-
headers: Record<string, string | string[] | undefined>;
|
|
6
|
-
query: Record<string, any>;
|
|
7
|
-
body: any;
|
|
8
|
-
raw: any;
|
|
9
|
-
}
|
|
10
|
-
export interface RawDnsEvent {
|
|
11
|
-
ip: string;
|
|
12
|
-
query: string;
|
|
13
|
-
recordType: string;
|
|
14
|
-
raw: any;
|
|
15
|
-
}
|
|
16
|
-
export interface RawSmtpEvent {
|
|
17
|
-
ip: string;
|
|
18
|
-
from: string;
|
|
19
|
-
to: string[];
|
|
20
|
-
subject: string;
|
|
21
|
-
body: string;
|
|
22
|
-
raw: any;
|
|
23
|
-
}
|
|
24
|
-
export interface RawTcpEvent {
|
|
25
|
-
ip: string;
|
|
26
|
-
port: number;
|
|
27
|
-
data: string;
|
|
28
|
-
raw: any;
|
|
29
|
-
}
|
|
30
|
-
export interface RawSsrfEvent {
|
|
31
|
-
ip: string;
|
|
32
|
-
method: string | undefined;
|
|
33
|
-
path: string | undefined;
|
|
34
|
-
headers: Record<string, string | string[] | undefined>;
|
|
35
|
-
query: Record<string, any>;
|
|
36
|
-
raw: any;
|
|
37
|
-
}
|
|
38
|
-
export interface RawWebhookEvent {
|
|
39
|
-
ip: string;
|
|
40
|
-
headers: Record<string, string | string[] | undefined>;
|
|
41
|
-
body: any;
|
|
42
|
-
raw: any;
|
|
43
|
-
}
|
|
44
|
-
export interface RawWebSocketEvent {
|
|
45
|
-
ip: string;
|
|
46
|
-
message: string;
|
|
47
|
-
raw: any;
|
|
48
|
-
}
|
|
49
|
-
export interface NormalizedHttpEvent {
|
|
50
|
-
id: string;
|
|
51
|
-
type: "http";
|
|
52
|
-
timestamp: number;
|
|
53
|
-
sourceIp: string;
|
|
54
|
-
request: {
|
|
55
|
-
method: string;
|
|
56
|
-
path: string;
|
|
57
|
-
headers: Record<string, string | string[] | undefined>;
|
|
58
|
-
query: Record<string, any>;
|
|
59
|
-
body: any;
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
export interface NormalizedDnsEvent {
|
|
63
|
-
id: string;
|
|
64
|
-
type: "dns";
|
|
65
|
-
timestamp: number;
|
|
66
|
-
ip: string;
|
|
67
|
-
query: string;
|
|
68
|
-
recordType: string;
|
|
69
|
-
raw: any;
|
|
70
|
-
}
|
|
71
|
-
export interface NormalizedSmtpEvent {
|
|
72
|
-
id: string;
|
|
73
|
-
type: "smtp";
|
|
74
|
-
timestamp: number;
|
|
75
|
-
ip: string;
|
|
76
|
-
from: string;
|
|
77
|
-
to: string[];
|
|
78
|
-
subject: string;
|
|
79
|
-
body: string;
|
|
80
|
-
raw: any;
|
|
81
|
-
}
|
|
82
|
-
export interface NormalizedTcpEvent {
|
|
83
|
-
id: string;
|
|
84
|
-
type: "tcp";
|
|
85
|
-
timestamp: number;
|
|
86
|
-
ip: string;
|
|
87
|
-
port: number;
|
|
88
|
-
data: string;
|
|
89
|
-
raw: any;
|
|
90
|
-
}
|
|
91
|
-
export interface NormalizedSsrfEvent {
|
|
92
|
-
id: string;
|
|
93
|
-
type: "ssrf";
|
|
94
|
-
timestamp: number;
|
|
95
|
-
sourceIp: string;
|
|
96
|
-
request: {
|
|
97
|
-
method: string | undefined;
|
|
98
|
-
path: string | undefined;
|
|
99
|
-
headers: Record<string, string | string[] | undefined>;
|
|
100
|
-
query: Record<string, any>;
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
export interface NormalizedWebhookEvent {
|
|
104
|
-
id: string;
|
|
105
|
-
type: "webhook";
|
|
106
|
-
timestamp: number;
|
|
107
|
-
sourceIp: string;
|
|
108
|
-
headers: Record<string, string | string[] | undefined>;
|
|
109
|
-
body: any;
|
|
110
|
-
}
|
|
111
|
-
export interface NormalizedWebSocketEvent {
|
|
112
|
-
id: string;
|
|
113
|
-
type: "websocket";
|
|
114
|
-
timestamp: number;
|
|
115
|
-
sourceIp: string;
|
|
116
|
-
message: string;
|
|
117
|
-
}
|
|
118
|
-
export type AnyNormalizedEvent = NormalizedHttpEvent | NormalizedDnsEvent | NormalizedSmtpEvent | NormalizedTcpEvent | NormalizedSsrfEvent | NormalizedWebhookEvent | NormalizedWebSocketEvent;
|
package/dist/utils/token.d.ts
DELETED
|
File without changes
|