synapse 2.188.1__py311-none-any.whl → 2.189.0__py311-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.
Potentially problematic release.
This version of synapse might be problematic. Click here for more details.
- synapse/lib/storm.py +40 -8
- synapse/lib/version.py +2 -2
- synapse/models/risk.py +3 -0
- synapse/tests/test_lib_ast.py +1 -1
- synapse/tests/test_lib_storm.py +11 -2
- synapse/tests/test_model_risk.py +2 -0
- {synapse-2.188.1.dist-info → synapse-2.189.0.dist-info}/METADATA +1 -1
- {synapse-2.188.1.dist-info → synapse-2.189.0.dist-info}/RECORD +11 -11
- {synapse-2.188.1.dist-info → synapse-2.189.0.dist-info}/WHEEL +1 -1
- {synapse-2.188.1.dist-info → synapse-2.189.0.dist-info}/LICENSE +0 -0
- {synapse-2.188.1.dist-info → synapse-2.189.0.dist-info}/top_level.txt +0 -0
synapse/lib/storm.py
CHANGED
|
@@ -626,7 +626,7 @@ stormcmds = (
|
|
|
626
626
|
{
|
|
627
627
|
'name': 'feed.list',
|
|
628
628
|
'descr': 'List the feed functions available in the Cortex',
|
|
629
|
-
'
|
|
629
|
+
'cmdargs': (),
|
|
630
630
|
'storm': '''
|
|
631
631
|
$lib.print('Storm feed list:')
|
|
632
632
|
for $flinfo in $lib.feed.list() {
|
|
@@ -824,19 +824,51 @@ stormcmds = (
|
|
|
824
824
|
{
|
|
825
825
|
'name': 'pkg.list',
|
|
826
826
|
'descr': 'List the storm packages loaded in the cortex.',
|
|
827
|
-
'
|
|
827
|
+
'cmdargs': (
|
|
828
|
+
('--verbose', {'default': False, 'action': 'store_true',
|
|
829
|
+
'help': 'Display build time for each package.'}),
|
|
830
|
+
),
|
|
828
831
|
'storm': '''
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
+
init {
|
|
833
|
+
$conf = ({
|
|
834
|
+
"columns": [
|
|
835
|
+
{"name": "name", "width": 40},
|
|
836
|
+
{"name": "vers", "width": 10},
|
|
837
|
+
],
|
|
838
|
+
"separators": {
|
|
839
|
+
"row:outline": false,
|
|
840
|
+
"column:outline": false,
|
|
841
|
+
"header:row": "#",
|
|
842
|
+
"data:row": "",
|
|
843
|
+
"column": "",
|
|
844
|
+
},
|
|
845
|
+
})
|
|
846
|
+
if $cmdopts.verbose {
|
|
847
|
+
$conf.columns.append(({"name": "time", "width": 20}))
|
|
848
|
+
}
|
|
849
|
+
$printer = $lib.tabular.printer($conf)
|
|
850
|
+
}
|
|
832
851
|
|
|
833
|
-
|
|
852
|
+
$pkgs = $lib.pkg.list()
|
|
834
853
|
|
|
835
|
-
|
|
854
|
+
if $($pkgs.size() > 0) {
|
|
836
855
|
$lib.print('Loaded storm packages:')
|
|
856
|
+
$lib.print($printer.header())
|
|
837
857
|
for $pkg in $pkgs {
|
|
838
|
-
$
|
|
858
|
+
$row = (
|
|
859
|
+
$pkg.name, $pkg.version,
|
|
860
|
+
)
|
|
861
|
+
if $cmdopts.verbose {
|
|
862
|
+
try {
|
|
863
|
+
$row.append($lib.time.format($pkg.build.time, '%Y-%m-%d %H:%M:%S'))
|
|
864
|
+
} catch StormRuntimeError as _ {
|
|
865
|
+
$row.append('not available')
|
|
866
|
+
}
|
|
867
|
+
}
|
|
868
|
+
$lib.print($printer.row($row))
|
|
839
869
|
}
|
|
870
|
+
} else {
|
|
871
|
+
$lib.print('No storm packages installed.')
|
|
840
872
|
}
|
|
841
873
|
'''
|
|
842
874
|
},
|
synapse/lib/version.py
CHANGED
|
@@ -223,6 +223,6 @@ def reqVersion(valu, reqver,
|
|
|
223
223
|
##############################################################################
|
|
224
224
|
# The following are touched during the release process by bumpversion.
|
|
225
225
|
# Do not modify these directly.
|
|
226
|
-
version = (2,
|
|
226
|
+
version = (2, 189, 0)
|
|
227
227
|
verstring = '.'.join([str(x) for x in version])
|
|
228
|
-
commit = '
|
|
228
|
+
commit = '0cec341c3b35e19b0cb34c1d5210afb0790cba99'
|
synapse/models/risk.py
CHANGED
|
@@ -709,6 +709,9 @@ class RiskModule(s_module.CoreModule):
|
|
|
709
709
|
('vuln', ('risk:vuln', {}), {
|
|
710
710
|
'doc': 'The vulnerability that the node is susceptible to.'}),
|
|
711
711
|
|
|
712
|
+
('technique', ('ou:technique', {}), {
|
|
713
|
+
'doc': 'The technique that the node is susceptible to.'}),
|
|
714
|
+
|
|
712
715
|
('period', ('ival', {}), {
|
|
713
716
|
'doc': 'The time window where the node was vulnerable.'}),
|
|
714
717
|
|
synapse/tests/test_lib_ast.py
CHANGED
|
@@ -1351,7 +1351,7 @@ class AstTest(s_test.SynTest):
|
|
|
1351
1351
|
{n.ndef for n in nodes})
|
|
1352
1352
|
|
|
1353
1353
|
msgs = await core.stormlist('pkg.list')
|
|
1354
|
-
self.stormIsInPrint('foo
|
|
1354
|
+
self.stormIsInPrint('foo 0.0.1', msgs, whitespace=False)
|
|
1355
1355
|
|
|
1356
1356
|
msgs = await core.stormlist('pkg.del asdf')
|
|
1357
1357
|
self.stormIsInPrint('No package names match "asdf". Aborting.', msgs)
|
synapse/tests/test_lib_storm.py
CHANGED
|
@@ -862,8 +862,8 @@ class StormTest(s_t_utils.SynTest):
|
|
|
862
862
|
pkg1 = {'name': 'haha', 'version': '1.2.3'}
|
|
863
863
|
await core.addStormPkg(pkg1)
|
|
864
864
|
msgs = await core.stormlist('pkg.list')
|
|
865
|
-
self.
|
|
866
|
-
self.
|
|
865
|
+
self.stormIsInPrint('haha', msgs)
|
|
866
|
+
self.stormIsInPrint('hehe', msgs)
|
|
867
867
|
|
|
868
868
|
self.true(await core.callStorm('return($lib.pkg.has(haha))'))
|
|
869
869
|
|
|
@@ -871,6 +871,15 @@ class StormTest(s_t_utils.SynTest):
|
|
|
871
871
|
self.none(await core.callStorm('return($lib.pkg.get(haha))'))
|
|
872
872
|
self.false(await core.callStorm('return($lib.pkg.has(haha))'))
|
|
873
873
|
|
|
874
|
+
msgs = await core.stormlist('pkg.list --verbose')
|
|
875
|
+
self.stormIsInPrint('not available', msgs)
|
|
876
|
+
|
|
877
|
+
pkg2 = {'name': 'hoho', 'version': '4.5.6', 'build': {'time': 1732017600000}}
|
|
878
|
+
await core.addStormPkg(pkg2)
|
|
879
|
+
self.eq('4.5.6', await core.callStorm('return($lib.pkg.get(hoho).version)'))
|
|
880
|
+
msgs = await core.stormlist('pkg.list --verbose')
|
|
881
|
+
self.stormIsInPrint('2024-11-19 12:00:00', msgs)
|
|
882
|
+
|
|
874
883
|
# test for $lib.queue.gen()
|
|
875
884
|
self.eq(0, await core.callStorm('return($lib.queue.gen(woot).size())'))
|
|
876
885
|
# and again to test *not* creating it...
|
synapse/tests/test_model_risk.py
CHANGED
|
@@ -523,6 +523,7 @@ class RiskModelTest(s_t_utils.SynTest):
|
|
|
523
523
|
:period=(2022, ?)
|
|
524
524
|
:node=(inet:fqdn, vertex.link)
|
|
525
525
|
:vuln={[ risk:vuln=* :name=redtree ]}
|
|
526
|
+
:technique={[ ou:technique=* :name=foo ]}
|
|
526
527
|
:mitigated=true
|
|
527
528
|
:mitigations={[ risk:mitigation=* :name=patchstuff ]}
|
|
528
529
|
]
|
|
@@ -535,6 +536,7 @@ class RiskModelTest(s_t_utils.SynTest):
|
|
|
535
536
|
self.len(1, await core.nodes('risk:vulnerable -> risk:vuln'))
|
|
536
537
|
self.len(1, await core.nodes('risk:vuln:name=redtree -> risk:vulnerable :node -> *'))
|
|
537
538
|
self.len(1, await core.nodes('risk:vulnerable -> risk:mitigation'))
|
|
539
|
+
self.len(1, await core.nodes('risk:vulnerable -> ou:technique'))
|
|
538
540
|
|
|
539
541
|
nodes = await core.nodes('''
|
|
540
542
|
[ risk:outage=*
|
|
@@ -141,7 +141,7 @@ synapse/lib/slabseqn.py,sha256=LJ2SZEsZlROBAD3mdS-3JxNVVPXXkBW8GIJXsW0OGG8,10287
|
|
|
141
141
|
synapse/lib/snap.py,sha256=QfNtFHV_76ABrm7Zf7WR5kVBB-MvuZmdmDfy0n1Whlo,59880
|
|
142
142
|
synapse/lib/spooled.py,sha256=pKPacX-fvZDUTUWPaKgyct_lk_3eoSsF9Ufh_cn_1fQ,5987
|
|
143
143
|
synapse/lib/storm.lark,sha256=ItEIPItfrCT5VmaoS1vm8FWD8Wv7b7B6ZWucCJCdO6s,26517
|
|
144
|
-
synapse/lib/storm.py,sha256=
|
|
144
|
+
synapse/lib/storm.py,sha256=lW4f2Qny0jfcclxkWbWlgarD8NdjwFXf955EZjbHATQ,216918
|
|
145
145
|
synapse/lib/storm_format.py,sha256=Q8mf9QWzPljwp70BC4dYv0MGWB_YUJi3Ul4T7ReqjlQ,4818
|
|
146
146
|
synapse/lib/stormctrl.py,sha256=XvyZ6M0Ew8sXsjGvRTWbXh0MjktZrGi_zQ9kNa7AWTE,285
|
|
147
147
|
synapse/lib/stormhttp.py,sha256=tw0LuO0UfxZT50sfF_V9hemudv5yZc2M9nFMkGrRHRw,28884
|
|
@@ -157,7 +157,7 @@ synapse/lib/time.py,sha256=FKTYwpdvpuAj8p8sSodRjOxoA7Vu67CIbbXz55gtghk,9231
|
|
|
157
157
|
synapse/lib/trigger.py,sha256=mnfkoBHB88JfqPoxb5oflvAaBKZpNvYdxP247YS53fE,20697
|
|
158
158
|
synapse/lib/types.py,sha256=u89ukW38oDziRzeA6IWrPwwPD0Ds75u-gwJSXsQ4loY,69708
|
|
159
159
|
synapse/lib/urlhelp.py,sha256=j-DvWGi-xH0TcO0NbCuwG7guUuiV8wxIxfMyJOzDygo,2523
|
|
160
|
-
synapse/lib/version.py,sha256=
|
|
160
|
+
synapse/lib/version.py,sha256=e55WoEalWhgontsiSsICZ1XYBKyX5yUoK68uJXNWF3w,7162
|
|
161
161
|
synapse/lib/view.py,sha256=BjIp5tPQhNmVRQ25_BQCwKNTw4xydx24wDl-YSBslAo,60658
|
|
162
162
|
synapse/lib/crypto/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
163
163
|
synapse/lib/crypto/coin.py,sha256=_dhlkzIrHT8BvHdJOWK7PDThz3sK3dDRnWAUqjRpZJc,4910
|
|
@@ -246,7 +246,7 @@ synapse/models/orgs.py,sha256=hX0bkMK33qCr5vxl2RhaBz1MJFe6Rs3I9C5pANJiliA,70851
|
|
|
246
246
|
synapse/models/person.py,sha256=-YJh_KgEvL4a0ArdBX1xirMQy_8YZGyaA04Mq7Hg_VQ,27193
|
|
247
247
|
synapse/models/planning.py,sha256=vmrY4d3WRxizrNU1YBe36NGZTuuu4lhGS8KI5lCZ5yQ,7302
|
|
248
248
|
synapse/models/proj.py,sha256=VLqeQGaOT_ZqN5Lh6aTsOvDfBUM4FCUGCgC0jfACA68,9879
|
|
249
|
-
synapse/models/risk.py,sha256=
|
|
249
|
+
synapse/models/risk.py,sha256=NUqWGBSTNwuYTXTcuoQQNeTZw5JZwdzJ4SmeP5CDBAE,55879
|
|
250
250
|
synapse/models/science.py,sha256=oSkKbjmVncYcVkVgx8rhM08XtcsgDgjf3mpunz5kL30,4329
|
|
251
251
|
synapse/models/syn.py,sha256=oY6NTeDNUw0fv7wku8ieB1PqoZ-3qac0Chmdm8kk5Ds,13565
|
|
252
252
|
synapse/models/telco.py,sha256=1BdnFr6Cyb1ZPtekIXaoUuRjISfJnIerTklQUEk_MzE,15273
|
|
@@ -280,7 +280,7 @@ synapse/tests/test_glob.py,sha256=cSNrtEKWLsZXRhsjxQjRjjMqdgqfpl05yT4S53dC0NU,24
|
|
|
280
280
|
synapse/tests/test_init.py,sha256=rHqYBVL_aFf1HO6zCF5akHVcHUP2g1kpJLRdTkV0yys,557
|
|
281
281
|
synapse/tests/test_lib_agenda.py,sha256=jQe0csMPBCmwojEy0EMtM83DSG96TFPWwptlMu_W7-4,44672
|
|
282
282
|
synapse/tests/test_lib_aha.py,sha256=nRHs14-LtnsSRi-C7nRu24g3ENN-R3S-0Uk8Oq2LVy4,61945
|
|
283
|
-
synapse/tests/test_lib_ast.py,sha256=
|
|
283
|
+
synapse/tests/test_lib_ast.py,sha256=rYYA9JYUSnY29EjHMzm2f5diqyDD5xiGsETHK8whxxg,180182
|
|
284
284
|
synapse/tests/test_lib_auth.py,sha256=xkKacwMEb5xI9vMJIE4rx9e703xcMyVQsAdkKzIsCbY,38360
|
|
285
285
|
synapse/tests/test_lib_autodoc.py,sha256=H2XO2_d8FmsHUd-cn7M-LjTX-078xLhMiOGiGGk5Oj0,8381
|
|
286
286
|
synapse/tests/test_lib_base.py,sha256=0XUGNaXmfDW896gpBTYYd7ovADUD8cyDLkGTefqn1FM,14550
|
|
@@ -330,7 +330,7 @@ synapse/tests/test_lib_slaboffs.py,sha256=FHQ8mGZ27dGqVwGk6q2UJ4gkPRZN22eIVzS8hM
|
|
|
330
330
|
synapse/tests/test_lib_slabseqn.py,sha256=74V6jU7DRTsy_hqUFDuT4C6dPlJ6ObNnjmI9qhbbyVc,5230
|
|
331
331
|
synapse/tests/test_lib_snap.py,sha256=OviJtj9N5LhBV-56TySkWvRly7f8VH9d-VBcNFLAtmg,27805
|
|
332
332
|
synapse/tests/test_lib_spooled.py,sha256=fkLuujrDqjeJtyByptmGZvJbM9QiETCAu4r_4PdLfZg,3929
|
|
333
|
-
synapse/tests/test_lib_storm.py,sha256=
|
|
333
|
+
synapse/tests/test_lib_storm.py,sha256=mATYbEaT0IdG6J0uO3HZSMRpQ_jBZO7essqOTP9Ok08,228626
|
|
334
334
|
synapse/tests/test_lib_storm_format.py,sha256=tEZgQMmKAeG8FQZE5HUjOT7bnKawVTpNaVQh_3Wa630,277
|
|
335
335
|
synapse/tests/test_lib_stormhttp.py,sha256=ZS8iONsisWjEi2CXx9AttiQ9bOrPs9x4GCwXlJEB_u0,42592
|
|
336
336
|
synapse/tests/test_lib_stormlib_aha.py,sha256=2x3KQa64LN86wzSdJwAu3QFb5NNR3WNx1o9aD3N954o,8796
|
|
@@ -410,7 +410,7 @@ synapse/tests/test_model_orgs.py,sha256=4ndVUD7mQAQ_FFxj_h3KT-KOD7gEuJxtkV3L9cC6
|
|
|
410
410
|
synapse/tests/test_model_person.py,sha256=6Zj_dnOyY4axLvl7VKCEYGtwVlnEYqKSg5kOi3Brp9s,17322
|
|
411
411
|
synapse/tests/test_model_planning.py,sha256=U2kkE0uBO6CqtTfy7wlnhEIu_NFdSri4I_I5b-mRjBE,5615
|
|
412
412
|
synapse/tests/test_model_proj.py,sha256=hCuM-CTyCAvqVPy7klP6NXOEtgJ61OyyT0x8mcJsjns,23238
|
|
413
|
-
synapse/tests/test_model_risk.py,sha256=
|
|
413
|
+
synapse/tests/test_model_risk.py,sha256=6aEpAWWVrBW-m_exNxY88iXR5M793jq1Zfnx3hDjyYI,29956
|
|
414
414
|
synapse/tests/test_model_science.py,sha256=2T9VxdzpltDufgjkUB95q97TQP9AxH2-T_sBbHfPDRk,2450
|
|
415
415
|
synapse/tests/test_model_syn.py,sha256=9yWzWRSBI3rjv7hu3MUE9KuE00n4GxxlQmxDvQJj6gw,23028
|
|
416
416
|
synapse/tests/test_model_telco.py,sha256=5ToiRhCX7faiDx4lDMV6b7E9WteN3PcBlznYF6GA2co,13166
|
|
@@ -602,8 +602,8 @@ synapse/vendor/xrpl/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
|
|
|
602
602
|
synapse/vendor/xrpl/tests/test_codec.py,sha256=Zwq6A5uZUK_FWDL3BA932c5b-rL3hnC6efobWHSLC4o,6651
|
|
603
603
|
synapse/vendor/xrpl/tests/test_main.py,sha256=kZQwWk7I6HrP-PMvLdsUUN4POvWD9I-iXDHOwdeF090,4299
|
|
604
604
|
synapse/vendor/xrpl/tests/test_main_test_cases.py,sha256=vTlUM4hJD2Hd2wCIdd9rfsvcMZZZQmNHWdCTTFeGz2Y,4221
|
|
605
|
-
synapse-2.
|
|
606
|
-
synapse-2.
|
|
607
|
-
synapse-2.
|
|
608
|
-
synapse-2.
|
|
609
|
-
synapse-2.
|
|
605
|
+
synapse-2.189.0.dist-info/LICENSE,sha256=xllut76FgcGL5zbIRvuRc7aezPbvlMUTWJPsVr2Sugg,11358
|
|
606
|
+
synapse-2.189.0.dist-info/METADATA,sha256=Zkwn98ReEux1V9vICgxWOFPZoeLHw_fxIuyoL7YDn94,4598
|
|
607
|
+
synapse-2.189.0.dist-info/WHEEL,sha256=SzIPD_RU47f7h-36tIDPOo2oz_W3FX5e2XbmWR-qLbQ,93
|
|
608
|
+
synapse-2.189.0.dist-info/top_level.txt,sha256=v_1YsqjmoSCzCKs7oIhzTNmWtSYoORiBMv1TJkOhx8A,8
|
|
609
|
+
synapse-2.189.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|