gulp-cli 1.0.4__tar.gz → 1.0.5__tar.gz
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.
- {gulp_cli-1.0.4/src/gulp_cli.egg-info → gulp_cli-1.0.5}/PKG-INFO +2 -2
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/README.md +1 -1
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/docs/command-reference.md +13 -2
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/docs/examples.md +4 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/docs/resource-management.md +20 -8
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/_version.py +3 -3
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/enhance_map.py +5 -3
- {gulp_cli-1.0.4 → gulp_cli-1.0.5/src/gulp_cli.egg-info}/PKG-INFO +2 -2
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/.github/workflows/python-package.yml +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/.gitignore +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/docs/extensions.md +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/docs/getting-started.md +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/docs/troubleshooting-cli.md +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/pyproject.toml +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/setup.cfg +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/__init__.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/__main__.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/cli.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/client.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/__init__.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/acl.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/auth.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/collab.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/context.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/db.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/glyph.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/ingest.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/mapping.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/operations.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/plugin.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/query.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/source.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/stats.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/storage.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/user_group.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/commands/users.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/config.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/extension/__init__.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/extension/query_sigma_zip.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/extension/story.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/extension_helpers.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/extensions.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/output.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli/utils.py +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli.egg-info/SOURCES.txt +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli.egg-info/dependency_links.txt +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli.egg-info/entry_points.txt +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli.egg-info/requires.txt +0 -0
- {gulp_cli-1.0.4 → gulp_cli-1.0.5}/src/gulp_cli.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gulp-cli
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.5
|
|
4
4
|
Summary: Command-line client for gULP
|
|
5
5
|
Author-email: Mentat <info@mentat.is>
|
|
6
6
|
Requires-Python: >=3.12
|
|
@@ -23,7 +23,7 @@ Requires-Dist: gulp-sdk
|
|
|
23
23
|
- 👥 **User Management** — create users, manage permissions (admin only)
|
|
24
24
|
- 📋 **Operations** — create/list/manage operations and contexts
|
|
25
25
|
- 🔌 **Plugins** — list/upload/download plugins and mapping files
|
|
26
|
-
- 🗺️ **Enhance Maps** — map `gulp.event_code` to glyph/color per plugin
|
|
26
|
+
- 🗺️ **Enhance Maps** — map document fields (e.g., `gulp.event_code`) to glyph/color per plugin
|
|
27
27
|
- 🖼️ **Glyphs** — create/list/update/delete custom glyphs
|
|
28
28
|
- 🧩 **Dynamic Extensions** — load custom CLI commands from internal or user extension folders
|
|
29
29
|
- 📊 **Stats** — monitor ingestion and query requests
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
- 👥 **User Management** — create users, manage permissions (admin only)
|
|
12
12
|
- 📋 **Operations** — create/list/manage operations and contexts
|
|
13
13
|
- 🔌 **Plugins** — list/upload/download plugins and mapping files
|
|
14
|
-
- 🗺️ **Enhance Maps** — map `gulp.event_code` to glyph/color per plugin
|
|
14
|
+
- 🗺️ **Enhance Maps** — map document fields (e.g., `gulp.event_code`) to glyph/color per plugin
|
|
15
15
|
- 🖼️ **Glyphs** — create/list/update/delete custom glyphs
|
|
16
16
|
- 🧩 **Dynamic Extensions** — load custom CLI commands from internal or user extension folders
|
|
17
17
|
- 📊 **Stats** — monitor ingestion and query requests
|
|
@@ -2116,12 +2116,23 @@ gulp-cli mapping delete FILENAME [OPTIONS]
|
|
|
2116
2116
|
|
|
2117
2117
|
## Enhance Map Management (`enhance-map`)
|
|
2118
2118
|
|
|
2119
|
-
Map
|
|
2119
|
+
Map document field criteria per plugin to a glyph and/or color used by the UI. Criteria can be simple values for exact matches or operator dicts for numeric comparisons.
|
|
2120
2120
|
|
|
2121
2121
|
#### `enhance-map create`
|
|
2122
2122
|
|
|
2123
2123
|
```bash
|
|
2124
|
-
gulp-cli enhance-map create
|
|
2124
|
+
gulp-cli enhance-map create PLUGIN MATCH_CRITERIA [--glyph-id GLYPH_ID] [--color COLOR]
|
|
2125
|
+
```
|
|
2126
|
+
|
|
2127
|
+
Where `MATCH_CRITERIA` is a JSON dict mapping document field names to criteria values:
|
|
2128
|
+
- Simple values for exact match: `'{"field":"value"}'`
|
|
2129
|
+
- Operator dicts for numeric comparisons: `'{"field":{"eq":value}}'`, `'{"field":{"gte":min,"lte":max}}'`
|
|
2130
|
+
- Multiple criteria (all must match): `'{"field1":"value","field2":{"gte":10}}'`
|
|
2131
|
+
|
|
2132
|
+
Examples:
|
|
2133
|
+
```bash
|
|
2134
|
+
gulp-cli enhance-map create win_evtx '{"gulp.event_code":{"eq":4624}}' --glyph-id logon_glyph
|
|
2135
|
+
gulp-cli enhance-map create win_evtx '{"severity":{"gte":7,"lte":10}}' --color "#ff0000"
|
|
2125
2136
|
```
|
|
2126
2137
|
|
|
2127
2138
|
#### `enhance-map update`
|
|
@@ -132,6 +132,10 @@ gulp-cli ingest file incident-001 win_evtx /path/to/System.evtx
|
|
|
132
132
|
|
|
133
133
|
# Optional: delete and recreate operation before ingestion
|
|
134
134
|
gulp-cli ingest file incident-001 win_evtx /path/to/System.evtx --reset-operation
|
|
135
|
+
|
|
136
|
+
# pass GulpPluginParameters to specify a mapping file for a pcap ingestion
|
|
137
|
+
gulp-cli ingest file test_operation pcap ./ultimate_wireshark_protocols_pcap_220213.p
|
|
138
|
+
cap --plugin-params '{ "mapping_parameters": { "mapping_file": "pcap.json" } }' --reset-operation --wait
|
|
135
139
|
```
|
|
136
140
|
|
|
137
141
|
### Bulk File Ingestion with Wildcard
|
|
@@ -305,7 +305,7 @@ gulp mapping delete my_mapping.json
|
|
|
305
305
|
|
|
306
306
|
## Enhance Document Map Management
|
|
307
307
|
|
|
308
|
-
Enhance document maps let you
|
|
308
|
+
Enhance document maps let you map a set of document field criteria within a plugin to a visual style (`glyph_id` and/or `color`). Criteria can be simple values for exact matches or operator dicts for numeric ranges.
|
|
309
309
|
|
|
310
310
|
### List Enhance Maps
|
|
311
311
|
|
|
@@ -315,21 +315,33 @@ gulp-cli enhance-map list
|
|
|
315
315
|
# Filter by plugin
|
|
316
316
|
gulp-cli enhance-map list --flt '{"plugin":"win_evtx"}'
|
|
317
317
|
|
|
318
|
-
# Filter by
|
|
319
|
-
gulp-cli enhance-map list --flt '{"
|
|
318
|
+
# Filter by match_criteria pattern
|
|
319
|
+
gulp-cli enhance-map list --flt '{"match_criteria":{"gulp.event_code":{"eq":4624}}}'
|
|
320
320
|
```
|
|
321
321
|
|
|
322
322
|
### Create Enhance Map
|
|
323
323
|
|
|
324
|
+
Criteria values can be simple values for exact match or operator dicts:
|
|
325
|
+
- `"eq"`: exact equality
|
|
326
|
+
- `"gte"`: greater than or equal
|
|
327
|
+
- `"lte"`: less than or equal
|
|
328
|
+
- Operators can be combined for ranges
|
|
329
|
+
|
|
324
330
|
```bash
|
|
325
|
-
# Map
|
|
326
|
-
gulp-cli enhance-map create 4624
|
|
331
|
+
# Map event code to a glyph (exact match)
|
|
332
|
+
gulp-cli enhance-map create win_evtx '{"gulp.event_code":{"eq":4624}}' --glyph-id glyph_logon
|
|
327
333
|
|
|
328
334
|
# Map event to color only
|
|
329
|
-
gulp-cli enhance-map create 4625
|
|
335
|
+
gulp-cli enhance-map create win_evtx '{"gulp.event_code":{"eq":4625}}' --color "#ff3300"
|
|
336
|
+
|
|
337
|
+
# Map using numeric range
|
|
338
|
+
gulp-cli enhance-map create win_evtx '{"severity_level":{"gte":7,"lte":10}}' --color "#ffaa00"
|
|
339
|
+
|
|
340
|
+
# Map with multiple criteria (all must match)
|
|
341
|
+
gulp-cli enhance-map create win_evtx '{"gulp.event_code":{"eq":4688},"status":"active"}' --glyph-id glyph_process
|
|
330
342
|
|
|
331
|
-
#
|
|
332
|
-
gulp-cli enhance-map create
|
|
343
|
+
# Mix operators and simple values
|
|
344
|
+
gulp-cli enhance-map create win_evtx '{"event_id":{"eq":4624},"provider":"Security-Auditing"}' --color "#00ff00"
|
|
333
345
|
```
|
|
334
346
|
|
|
335
347
|
### Update/Get/Delete Enhance Map
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '1.0.
|
|
22
|
-
__version_tuple__ = version_tuple = (1, 0,
|
|
21
|
+
__version__ = version = '1.0.5'
|
|
22
|
+
__version_tuple__ = version_tuple = (1, 0, 5)
|
|
23
23
|
|
|
24
|
-
__commit_id__ = commit_id = '
|
|
24
|
+
__commit_id__ = commit_id = 'g99de7be1e'
|
|
@@ -13,21 +13,23 @@ app = typer.Typer(help="Enhance document map management")
|
|
|
13
13
|
|
|
14
14
|
@app.command("create")
|
|
15
15
|
def enhance_map_create(
|
|
16
|
-
gulp_event_code: int = typer.Argument(..., help="gulp.event_code to map"),
|
|
17
16
|
plugin: str = typer.Argument(..., help="Plugin name"),
|
|
17
|
+
match_criteria: str = typer.Argument(..., help="JSON dict mapping document fields to criteria values (e.g., '{\"gulp.event_code\": {\"eq\": 4624}}'). Values can be simple values for exact match or operator dicts with 'eq', 'gte', 'lte' keys."),
|
|
18
18
|
glyph_id: str | None = typer.Option(None, "--glyph-id", help="Glyph ID to map"),
|
|
19
19
|
color: str | None = typer.Option(None, "--color", help="Color to map (e.g. #ff0000)"),
|
|
20
20
|
) -> None:
|
|
21
|
-
"""Create an enhance map entry for plugin+
|
|
21
|
+
"""Create an enhance map entry for plugin + match criteria."""
|
|
22
22
|
|
|
23
23
|
async def _run() -> None:
|
|
24
24
|
if glyph_id is None and color is None:
|
|
25
25
|
raise typer.BadParameter("At least one of --glyph-id or --color must be provided")
|
|
26
26
|
|
|
27
|
+
criteria_dict = parse_json_option(match_criteria, field_name="match_criteria")
|
|
28
|
+
|
|
27
29
|
async with get_client() as client:
|
|
28
30
|
data = await client.plugins.enhance_map_create(
|
|
29
|
-
gulp_event_code=gulp_event_code,
|
|
30
31
|
plugin=plugin,
|
|
32
|
+
match_criteria=criteria_dict,
|
|
31
33
|
glyph_id=glyph_id,
|
|
32
34
|
color=color,
|
|
33
35
|
)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gulp-cli
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.5
|
|
4
4
|
Summary: Command-line client for gULP
|
|
5
5
|
Author-email: Mentat <info@mentat.is>
|
|
6
6
|
Requires-Python: >=3.12
|
|
@@ -23,7 +23,7 @@ Requires-Dist: gulp-sdk
|
|
|
23
23
|
- 👥 **User Management** — create users, manage permissions (admin only)
|
|
24
24
|
- 📋 **Operations** — create/list/manage operations and contexts
|
|
25
25
|
- 🔌 **Plugins** — list/upload/download plugins and mapping files
|
|
26
|
-
- 🗺️ **Enhance Maps** — map `gulp.event_code` to glyph/color per plugin
|
|
26
|
+
- 🗺️ **Enhance Maps** — map document fields (e.g., `gulp.event_code`) to glyph/color per plugin
|
|
27
27
|
- 🖼️ **Glyphs** — create/list/update/delete custom glyphs
|
|
28
28
|
- 🧩 **Dynamic Extensions** — load custom CLI commands from internal or user extension folders
|
|
29
29
|
- 📊 **Stats** — monitor ingestion and query requests
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|