contentctl 4.1.3__py3-none-any.whl → 4.1.4__py3-none-any.whl

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.
@@ -32,7 +32,6 @@ class NewContent:
32
32
  answers['status'] = "production" #start everything as production since that's what we INTEND the content to become
33
33
  answers['description'] = 'UPDATE_DESCRIPTION'
34
34
  file_name = answers['name'].replace(' ', '_').replace('-','_').replace('.','_').replace('/','_').lower()
35
- answers['kind'] = answers['detection_kind']
36
35
  answers['search'] = answers['detection_search'] + ' | `' + file_name + '_filter`'
37
36
  del answers['detection_search']
38
37
  answers['how_to_implement'] = 'UPDATE_HOW_TO_IMPLEMENT'
@@ -8,7 +8,6 @@ build = 16367
8
8
 
9
9
  [triggers]
10
10
  reload.analytic_stories = simple
11
- reload.usage_searches = simple
12
11
  reload.use_case_library = simple
13
12
  reload.correlationsearches = simple
14
13
  reload.analyticstories = simple
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: contentctl
3
- Version: 4.1.3
3
+ Version: 4.1.4
4
4
  Summary: Splunk Content Control Tool
5
5
  License: Apache 2.0
6
6
  Author: STRT
@@ -17,7 +17,7 @@ contentctl/actions/doc_gen.py,sha256=YNc1VYA0ikL1hWDHYjfEOmUkfhy8PEIdvTyC4ZLxQRY
17
17
  contentctl/actions/initialize.py,sha256=2h3_A68mNWcyZjbrKF-OeQXBi5p4Zu3z74K7QxEtII4,1749
18
18
  contentctl/actions/initialize_old.py,sha256=0qXbW_fNDvkcnEeL6Zpte8d-hpTu1REyzHsXOCY-YB8,9333
19
19
  contentctl/actions/inspect.py,sha256=6gVVKmV5CUUYOkNNVTMPKj9bM1uXVthgGCoFKZGDeS8,12628
20
- contentctl/actions/new_content.py,sha256=4gTlxV0fmdsSETPX4T9uQPpIAm--Jf2vc6Vm3w-RkfI,6128
20
+ contentctl/actions/new_content.py,sha256=o5ZYBQ216RN6TnW_wRxVGJybx2SsJ7ht4PAi1dw45Yg,6076
21
21
  contentctl/actions/release_notes.py,sha256=akkFfLhsJuaPUyjsb6dLlKt9cUM-JApAjTFQMbYoXeM,13115
22
22
  contentctl/actions/reporting.py,sha256=MJEmvmoA1WnSFZEU9QM6daL_W94oOX0WXAcX1qAM2As,1583
23
23
  contentctl/actions/test.py,sha256=dx7f750_MrlvysxOmOdIro1bH0iVKF4K54TSwhvU2MU,5146
@@ -135,13 +135,12 @@ contentctl/templates/app_template/README/essoc_summary.txt,sha256=u6wYNYBqmmm7Kn
135
135
  contentctl/templates/app_template/README/essoc_usage_dashboard.txt,sha256=xYUKKVtdgzPyT3mqdTccaBZuwWnC63lbc9zyYpmHN4o,2432
136
136
  contentctl/templates/app_template/README.md,sha256=RT-J9bgRSFsEFgNr9qV6yc2LkfUH_uiMJ2RV4NM9Ymo,366
137
137
  contentctl/templates/app_template/default/analytic_stories.conf,sha256=zWuCOOl8SiP7Kit2s-de4KRu3HySLtBSXcp1QnJx0ec,168
138
- contentctl/templates/app_template/default/app.conf,sha256=eTSq1QI4-BgylZJgnNVg5jQCZFXJVNyEJA33lQAgYoc,685
138
+ contentctl/templates/app_template/default/app.conf,sha256=PrW8TosZ5oVBfpB0SoLxa5vk2ewEAbVKQ6rG8g5WDSQ,654
139
139
  contentctl/templates/app_template/default/commands.conf,sha256=U2ccwUeGXKKKt5jo14QY5swi-p9_TSJtaNquOkeF3Yk,319
140
140
  contentctl/templates/app_template/default/content-version.conf,sha256=TGzX6qLdzRK7x6b0y5AE8ZF59PLU-DrRfS43fVWITqo,34
141
141
  contentctl/templates/app_template/default/data/ui/nav/default.xml,sha256=fKN53HZCtNJbQqq_5pP8e5-5m30DRrJittr6q5s6V_0,236
142
142
  contentctl/templates/app_template/default/data/ui/views/escu_summary.xml,sha256=jQhkIthPgEEptCJ2wUCj2lWGHBvUl6JGsKkDfONloxI,8635
143
143
  contentctl/templates/app_template/default/data/ui/views/feedback.xml,sha256=uM71EMK2uFz8h68nOTNKGnYxob3HhE_caSL6yA-3H-k,696
144
- contentctl/templates/app_template/default/usage_searches.conf,sha256=mFnhAHGhFHIzl8xxA626thnAjyxs5ZQQfur1PP_Xmbg,4257
145
144
  contentctl/templates/app_template/default/use_case_library.conf,sha256=zWuCOOl8SiP7Kit2s-de4KRu3HySLtBSXcp1QnJx0ec,168
146
145
  contentctl/templates/app_template/lookups/mitre_enrichment.csv,sha256=tifPQjFoQHtvpb78hxSP2fKHnHeehNbZDwUjdvc0aEM,66072
147
146
  contentctl/templates/app_template/metadata/default.meta,sha256=tcYHZkDF44ApDoDQ_rp8MCA8cuT3DVd5atHgulR1Tvc,423
@@ -164,8 +163,8 @@ contentctl/templates/detections/web/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRk
164
163
  contentctl/templates/macros/security_content_ctime.yml,sha256=Gg1YNllHVsX_YB716H1SJLWzxXZEfuJlnsgB2fuyoHU,159
165
164
  contentctl/templates/macros/security_content_summariesonly.yml,sha256=9BYUxAl2E4Nwh8K19F3AJS8Ka7ceO6ZDBjFiO3l3LY0,162
166
165
  contentctl/templates/stories/cobalt_strike.yml,sha256=rlaXxMN-5k8LnKBLPafBoksyMtlmsPMHPJOjTiMiZ-M,3063
167
- contentctl-4.1.3.dist-info/LICENSE.md,sha256=hQWUayRk-pAiOZbZnuy8djmoZkjKBx8MrCFpW-JiOgo,11344
168
- contentctl-4.1.3.dist-info/METADATA,sha256=VxqSwKj59aGzVSuESf7w0PefidDnsaFwre-MlIh6nLI,19706
169
- contentctl-4.1.3.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
170
- contentctl-4.1.3.dist-info/entry_points.txt,sha256=5bjZ2NkbQfSwK47uOnA77yCtjgXhvgxnmCQiynRF_-U,57
171
- contentctl-4.1.3.dist-info/RECORD,,
166
+ contentctl-4.1.4.dist-info/LICENSE.md,sha256=hQWUayRk-pAiOZbZnuy8djmoZkjKBx8MrCFpW-JiOgo,11344
167
+ contentctl-4.1.4.dist-info/METADATA,sha256=gyBEu2sSknwen-oTm0WdQtCvaPgbWuJBd4jvPuel6iQ,19706
168
+ contentctl-4.1.4.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
169
+ contentctl-4.1.4.dist-info/entry_points.txt,sha256=5bjZ2NkbQfSwK47uOnA77yCtjgXhvgxnmCQiynRF_-U,57
170
+ contentctl-4.1.4.dist-info/RECORD,,
@@ -1,73 +0,0 @@
1
- [escu-metrics-usage]
2
- action.email.useNSSubject = 1
3
- alert.digest_mode = True
4
- alert.suppress = 0
5
- alert.track = 0
6
- auto_summarize.dispatch.earliest_time = -1d@h
7
- dispatchAs = user
8
- search = index=_audit sourcetype="audittrail" \
9
- "ESCU - "\
10
- `comment("Find all the search names in the audittrail.")`\
11
- | stats count(search) by search savedsearch_name user\
12
- | eval usage=(if(savedsearch_name=="","Adhoc","Scheduled")) \
13
- `comment("If the savedsearch_name field in the audittrail is empty, the search was run adhoc. Otherwise it was run as a scheduled search")`\
14
- | rex field=search "\"(?<savedsearch_name>.*)\""\
15
- `comment("Extract the name of the search from the search string")`\
16
- | table savedsearch_name count(search) usage user | join savedsearch_name max=0 type=left [search sourcetype="manifests" | spath searches{} | mvexpand searches{} | spath input=searches{} | table category search_name | rename search_name as savedsearch_name | dedup savedsearch_name] | search category=*
17
-
18
- [escu-metrics-search]
19
- action.email.useNSSubject = 1
20
- alert.suppress = 0
21
- alert.track = 0
22
- auto_summarize.dispatch.earliest_time = -1d@h
23
- enableSched = 1
24
- cron_schedule = 0 0 * * *
25
- dispatch.earliest_time = -4h@h
26
- dispatch.latest_time = -1h@h
27
- search = index=_audit action=search | transaction search_id maxspan=3m | search ESCU | stats sum(total_run_time) avg(total_run_time) max(total_run_time) sum(result_count)
28
-
29
- [escu-metrics-search-events]
30
- action.email.useNSSubject = 1
31
- alert.digest_mode = True
32
- alert.suppress = 0
33
- alert.track = 0
34
- auto_summarize.dispatch.earliest_time = -1d@h
35
- cron_schedule = 0 0 * * *
36
- enableSched = 1
37
- dispatch.earliest_time = -4h@h
38
- dispatch.latest_time = -1h@h
39
- search = [search index=_audit sourcetype="audittrail" \"ESCU NOT "index=_audit" | where search !="" | dedup search_id | rex field=search "\"(?<search_name>.*)\"" | rex field=_raw "user=(?<user>[a-zA-Z0-9_\-]+)" | eval usage=if(savedsearch_name!="", "scheduled", "adhoc") | eval savedsearch_name=if(savedsearch_name != "", savedsearch_name, search_name) | table savedsearch_name search_id user _time usage | outputlookup escu_search_id.csv | table search_id] index=_audit total_run_time event_count result_count NOT "index=_audit" | lookup escu_search_id.csv search_id | stats count(savedsearch_name) AS search_count avg(total_run_time) AS search_avg_run_time sum(total_run_time) AS search_total_run_time sum(result_count) AS search_total_results earliest(_time) AS firsts latest(_time) AS lasts by savedsearch_name user usage| eval first_run=strftime(firsts, "%B %d %Y") | eval last_run=strftime(lasts, "%B %d %Y")
40
-
41
- [escu-metrics-search-longest-runtime]
42
- action.email.useNSSubject = 1
43
- alert.digest_mode = True
44
- alert.suppress = 0
45
- alert.track = 0
46
- auto_summarize.dispatch.earliest_time = -1d@h
47
- enableSched = 1
48
- cron_schedule = 0 0 * * *
49
- disabled = 1
50
- dispatch.earliest_time = -4h@h
51
- dispatch.latest_time = -1h@h
52
- search = index=_* ESCU [search index=_* action=search latest=-2h earliest=-1d| transaction search_id maxspan=3m | search ESCU | stats values(total_run_time) AS run by search_id | sort -run | head 1| table search_id] | table search search_id
53
-
54
- [escu-metrics-usage-search]
55
- action.email.useNSSubject = 1
56
- alert.digest_mode = True
57
- alert.suppress = 0
58
- alert.track = 0
59
- auto_summarize.dispatch.earliest_time = -1d@h
60
- cron_schedule = 0 0 * * *
61
- dispatch.earliest_time = -4h@h
62
- dispatch.latest_time = -1h@h
63
- enableSched = 1
64
- dispatchAs = user
65
- search = index=_audit sourcetype="audittrail" \
66
- "ESCU - "\
67
- `comment("Find all the search names in the audittrail. Ignore the last few minutes so we can exclude this search's text from the result.")`\
68
- | stats count(search) by search savedsearch_name user\
69
- | eval usage=(if(savedsearch_name=="","Adhoc","Scheduled")) \
70
- `comment("If the savedsearch_name field in the audittrail is empty, the search was run adhoc. Otherwise it was run as a scheduled search")`\
71
- | rex field=search "\"(?<savedsearch_name>.*)\""\
72
- `comment("Extract the name of the search from the search string")`\
73
- | table savedsearch_name count(search) usage user | join savedsearch_name max=0 type=left [search sourcetype="manifests" | spath searches{} | mvexpand searches{} | spath input=searches{} | table category search_name | rename search_name as savedsearch_name | dedup savedsearch_name] | search category=*