@portll/cobolwork 0.2.76 → 0.2.140
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/README.md +66 -14
- package/bin/cobolwork.mjs +126 -9
- package/lib/arith.mjs +235 -0
- package/lib/baseline.mjs +5 -0
- package/lib/build.mjs +112 -30
- package/lib/capabilities.mjs +12 -7
- package/lib/card.mjs +18 -0
- package/lib/cics-commands.mjs +136 -125
- package/lib/consequence.mjs +29 -0
- package/lib/control.mjs +1169 -91
- package/lib/csd.mjs +17 -2
- package/lib/dataflow.mjs +276 -126
- package/lib/embedded-sql.mjs +110 -0
- package/lib/enterprise-options.mjs +255 -0
- package/lib/equivalence.mjs +124 -0
- package/lib/evidence/cli.mjs +65 -0
- package/lib/evidence/journal.mjs +94 -0
- package/lib/evidence/record.mjs +110 -0
- package/lib/evidence/run.mjs +111 -0
- package/lib/evidence/seal.mjs +177 -0
- package/lib/evidence/slsa.mjs +64 -0
- package/lib/evidence/sshsig.mjs +172 -0
- package/lib/evidence/store.mjs +170 -0
- package/lib/evidence/verify.mjs +167 -0
- package/lib/explain.mjs +9 -5
- package/lib/exploitability.mjs +263 -0
- package/lib/ftp.mjs +136 -0
- package/lib/ironwork.mjs +109 -0
- package/lib/jcl.mjs +27 -7
- package/lib/kernel/findings.mjs +11 -0
- package/lib/kernel/registry.mjs +4 -0
- package/lib/layout.mjs +202 -0
- package/lib/option-diff.mjs +49 -0
- package/lib/options.mjs +109 -46
- package/lib/parser.mjs +80 -209
- package/lib/policy.mjs +8 -3
- package/lib/precompile.mjs +5 -84
- package/lib/reach.mjs +29 -12
- package/lib/revision.json +1 -1
- package/lib/sarif.mjs +1 -0
- package/lib/sbom.mjs +235 -0
- package/lib/scan.mjs +93 -27
- package/lib/sets/cics.mjs +119 -2
- package/lib/sets/copybook.mjs +2 -1
- package/lib/sets/flow.mjs +82 -2
- package/lib/sets/hidden.mjs +4 -8
- package/lib/sets/jcl.mjs +70 -106
- package/lib/sets/recon.mjs +2 -1
- package/lib/sets/semantics.mjs +377 -0
- package/lib/sets/web.mjs +34 -10
- package/lib/sets/zowe.mjs +246 -0
- package/lib/sources.mjs +10 -0
- package/lib/tui/app.mjs +31 -13
- package/lib/tui/model.mjs +17 -2
- package/lib/utilities.mjs +229 -15
- package/lib/verify.mjs +128 -0
- package/package.json +1 -1
- package/rules/compliance-dora.json +507 -0
- package/rules/compliance-ffiec.json +507 -0
- package/rules/compliance-nist80053.json +507 -0
- package/schema/cobolwork.policy.schema.json +94 -16
|
@@ -63,6 +63,19 @@
|
|
|
63
63
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
64
64
|
}
|
|
65
65
|
},
|
|
66
|
+
{
|
|
67
|
+
"kind": "compliance",
|
|
68
|
+
"ruleId": "argv-or-env-to-connection-target",
|
|
69
|
+
"framework": "ffiec",
|
|
70
|
+
"clause": "DA&M V",
|
|
71
|
+
"title": "Development",
|
|
72
|
+
"rationale": "The rule reports: Command-line or environment input names the database or queue manager the program connects to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
73
|
+
"source": {
|
|
74
|
+
"doc": "ffiec",
|
|
75
|
+
"retrieved": "2026-09-20",
|
|
76
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
77
|
+
}
|
|
78
|
+
},
|
|
66
79
|
{
|
|
67
80
|
"kind": "compliance",
|
|
68
81
|
"ruleId": "argv-or-env-to-dynamic-file-path",
|
|
@@ -167,6 +180,19 @@
|
|
|
167
180
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
168
181
|
}
|
|
169
182
|
},
|
|
183
|
+
{
|
|
184
|
+
"kind": "compliance",
|
|
185
|
+
"ruleId": "argv-or-env-to-storage-length",
|
|
186
|
+
"framework": "ffiec",
|
|
187
|
+
"clause": "DA&M V",
|
|
188
|
+
"title": "Development",
|
|
189
|
+
"rationale": "The rule reports: Command-line or environment input decides how much storage the program acquires. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
190
|
+
"source": {
|
|
191
|
+
"doc": "ffiec",
|
|
192
|
+
"retrieved": "2026-09-20",
|
|
193
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
194
|
+
}
|
|
195
|
+
},
|
|
170
196
|
{
|
|
171
197
|
"kind": "compliance",
|
|
172
198
|
"ruleId": "argv-or-env-to-subscript",
|
|
@@ -193,6 +219,19 @@
|
|
|
193
219
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
194
220
|
}
|
|
195
221
|
},
|
|
222
|
+
{
|
|
223
|
+
"kind": "compliance",
|
|
224
|
+
"ruleId": "binary-store-exceeds-picture-under-trunc-opt",
|
|
225
|
+
"framework": "ffiec",
|
|
226
|
+
"clause": "DA&M V",
|
|
227
|
+
"title": "Development",
|
|
228
|
+
"rationale": "The rule reports: Under TRUNC(OPT) a binary field receives a value that can have more digits than its PICTURE. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
229
|
+
"source": {
|
|
230
|
+
"doc": "ffiec",
|
|
231
|
+
"retrieved": "2026-09-20",
|
|
232
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
233
|
+
}
|
|
234
|
+
},
|
|
196
235
|
{
|
|
197
236
|
"kind": "compliance",
|
|
198
237
|
"ruleId": "build-pins-exploited-compiler",
|
|
@@ -271,6 +310,19 @@
|
|
|
271
310
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
272
311
|
}
|
|
273
312
|
},
|
|
313
|
+
{
|
|
314
|
+
"kind": "compliance",
|
|
315
|
+
"ruleId": "character-range-reverses-in-ascii",
|
|
316
|
+
"framework": "ffiec",
|
|
317
|
+
"clause": "DA&M V",
|
|
318
|
+
"title": "Development",
|
|
319
|
+
"rationale": "The rule reports: A range of characters is in order in EBCDIC and reversed in ASCII, or the other way round, so it holds values in one and none in the other. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
320
|
+
"source": {
|
|
321
|
+
"doc": "ffiec",
|
|
322
|
+
"retrieved": "2026-09-20",
|
|
323
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
324
|
+
}
|
|
325
|
+
},
|
|
274
326
|
{
|
|
275
327
|
"kind": "compliance",
|
|
276
328
|
"ruleId": "cics-commarea-length-exceeds-area",
|
|
@@ -310,6 +362,19 @@
|
|
|
310
362
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
311
363
|
}
|
|
312
364
|
},
|
|
365
|
+
{
|
|
366
|
+
"kind": "compliance",
|
|
367
|
+
"ruleId": "cics-condition-ignored",
|
|
368
|
+
"framework": "ffiec",
|
|
369
|
+
"clause": "DA&M V",
|
|
370
|
+
"title": "Development",
|
|
371
|
+
"rationale": "The rule reports: A program issues CICS commands whose failure it cannot see: NOHANDLE with no RESP, or IGNORE CONDITION. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
372
|
+
"source": {
|
|
373
|
+
"doc": "ffiec",
|
|
374
|
+
"retrieved": "2026-09-20",
|
|
375
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
376
|
+
}
|
|
377
|
+
},
|
|
313
378
|
{
|
|
314
379
|
"kind": "compliance",
|
|
315
380
|
"ruleId": "cics-listener-accepts-cleartext",
|
|
@@ -414,6 +479,45 @@
|
|
|
414
479
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
415
480
|
}
|
|
416
481
|
},
|
|
482
|
+
{
|
|
483
|
+
"kind": "compliance",
|
|
484
|
+
"ruleId": "cics-terminal-to-cics-sysid",
|
|
485
|
+
"framework": "ffiec",
|
|
486
|
+
"clause": "DA&M V",
|
|
487
|
+
"title": "Development",
|
|
488
|
+
"rationale": "The rule reports: Terminal input decides which region a CICS command is shipped to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
489
|
+
"source": {
|
|
490
|
+
"doc": "ffiec",
|
|
491
|
+
"retrieved": "2026-09-20",
|
|
492
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
493
|
+
}
|
|
494
|
+
},
|
|
495
|
+
{
|
|
496
|
+
"kind": "compliance",
|
|
497
|
+
"ruleId": "cics-terminal-to-cics-system-resource",
|
|
498
|
+
"framework": "ffiec",
|
|
499
|
+
"clause": "DA&M V",
|
|
500
|
+
"title": "Development",
|
|
501
|
+
"rationale": "The rule reports: Terminal input names the resource an EXEC CICS SET changes. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
502
|
+
"source": {
|
|
503
|
+
"doc": "ffiec",
|
|
504
|
+
"retrieved": "2026-09-20",
|
|
505
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
506
|
+
}
|
|
507
|
+
},
|
|
508
|
+
{
|
|
509
|
+
"kind": "compliance",
|
|
510
|
+
"ruleId": "cics-terminal-to-connection-target",
|
|
511
|
+
"framework": "ffiec",
|
|
512
|
+
"clause": "DA&M V",
|
|
513
|
+
"title": "Development",
|
|
514
|
+
"rationale": "The rule reports: Terminal input names the database or queue manager the program connects to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
515
|
+
"source": {
|
|
516
|
+
"doc": "ffiec",
|
|
517
|
+
"retrieved": "2026-09-20",
|
|
518
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
519
|
+
}
|
|
520
|
+
},
|
|
417
521
|
{
|
|
418
522
|
"kind": "compliance",
|
|
419
523
|
"ruleId": "cics-terminal-to-dynamic-file-path",
|
|
@@ -570,6 +674,19 @@
|
|
|
570
674
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
571
675
|
}
|
|
572
676
|
},
|
|
677
|
+
{
|
|
678
|
+
"kind": "compliance",
|
|
679
|
+
"ruleId": "cics-terminal-to-storage-length",
|
|
680
|
+
"framework": "ffiec",
|
|
681
|
+
"clause": "DA&M V",
|
|
682
|
+
"title": "Development",
|
|
683
|
+
"rationale": "The rule reports: Terminal input decides how much storage the program acquires. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
684
|
+
"source": {
|
|
685
|
+
"doc": "ffiec",
|
|
686
|
+
"retrieved": "2026-09-20",
|
|
687
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
688
|
+
}
|
|
689
|
+
},
|
|
573
690
|
{
|
|
574
691
|
"kind": "compliance",
|
|
575
692
|
"ruleId": "cics-terminal-to-subscript",
|
|
@@ -596,6 +713,19 @@
|
|
|
596
713
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
597
714
|
}
|
|
598
715
|
},
|
|
716
|
+
{
|
|
717
|
+
"kind": "compliance",
|
|
718
|
+
"ruleId": "cics-terminal-to-xml-document",
|
|
719
|
+
"framework": "ffiec",
|
|
720
|
+
"clause": "DA&M V",
|
|
721
|
+
"title": "Development",
|
|
722
|
+
"rationale": "The rule reports: Terminal input is parsed as an XML document. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
723
|
+
"source": {
|
|
724
|
+
"doc": "ffiec",
|
|
725
|
+
"retrieved": "2026-09-20",
|
|
726
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
727
|
+
}
|
|
728
|
+
},
|
|
599
729
|
{
|
|
600
730
|
"kind": "compliance",
|
|
601
731
|
"ruleId": "cics-transfer-to-variable-program",
|
|
@@ -635,6 +765,45 @@
|
|
|
635
765
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
636
766
|
}
|
|
637
767
|
},
|
|
768
|
+
{
|
|
769
|
+
"kind": "compliance",
|
|
770
|
+
"ruleId": "cics-web-to-cics-sysid",
|
|
771
|
+
"framework": "ffiec",
|
|
772
|
+
"clause": "DA&M V",
|
|
773
|
+
"title": "Development",
|
|
774
|
+
"rationale": "The rule reports: Web input decides which region a CICS command is shipped to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
775
|
+
"source": {
|
|
776
|
+
"doc": "ffiec",
|
|
777
|
+
"retrieved": "2026-09-20",
|
|
778
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
779
|
+
}
|
|
780
|
+
},
|
|
781
|
+
{
|
|
782
|
+
"kind": "compliance",
|
|
783
|
+
"ruleId": "cics-web-to-cics-system-resource",
|
|
784
|
+
"framework": "ffiec",
|
|
785
|
+
"clause": "DA&M V",
|
|
786
|
+
"title": "Development",
|
|
787
|
+
"rationale": "The rule reports: Web input names the resource an EXEC CICS SET changes. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
788
|
+
"source": {
|
|
789
|
+
"doc": "ffiec",
|
|
790
|
+
"retrieved": "2026-09-20",
|
|
791
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
792
|
+
}
|
|
793
|
+
},
|
|
794
|
+
{
|
|
795
|
+
"kind": "compliance",
|
|
796
|
+
"ruleId": "cics-web-to-connection-target",
|
|
797
|
+
"framework": "ffiec",
|
|
798
|
+
"clause": "DA&M V",
|
|
799
|
+
"title": "Development",
|
|
800
|
+
"rationale": "The rule reports: Web input names the database or queue manager the program connects to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
801
|
+
"source": {
|
|
802
|
+
"doc": "ffiec",
|
|
803
|
+
"retrieved": "2026-09-20",
|
|
804
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
805
|
+
}
|
|
806
|
+
},
|
|
638
807
|
{
|
|
639
808
|
"kind": "compliance",
|
|
640
809
|
"ruleId": "cics-web-to-dynamic-file-path",
|
|
@@ -791,6 +960,19 @@
|
|
|
791
960
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
792
961
|
}
|
|
793
962
|
},
|
|
963
|
+
{
|
|
964
|
+
"kind": "compliance",
|
|
965
|
+
"ruleId": "cics-web-to-storage-length",
|
|
966
|
+
"framework": "ffiec",
|
|
967
|
+
"clause": "DA&M V",
|
|
968
|
+
"title": "Development",
|
|
969
|
+
"rationale": "The rule reports: Web input decides how much storage the program acquires. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
970
|
+
"source": {
|
|
971
|
+
"doc": "ffiec",
|
|
972
|
+
"retrieved": "2026-09-20",
|
|
973
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
974
|
+
}
|
|
975
|
+
},
|
|
794
976
|
{
|
|
795
977
|
"kind": "compliance",
|
|
796
978
|
"ruleId": "cics-web-to-subscript",
|
|
@@ -817,6 +999,19 @@
|
|
|
817
999
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
818
1000
|
}
|
|
819
1001
|
},
|
|
1002
|
+
{
|
|
1003
|
+
"kind": "compliance",
|
|
1004
|
+
"ruleId": "cics-web-to-xml-document",
|
|
1005
|
+
"framework": "ffiec",
|
|
1006
|
+
"clause": "DA&M V",
|
|
1007
|
+
"title": "Development",
|
|
1008
|
+
"rationale": "The rule reports: Web input is parsed as an XML document. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1009
|
+
"source": {
|
|
1010
|
+
"doc": "ffiec",
|
|
1011
|
+
"retrieved": "2026-09-20",
|
|
1012
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1013
|
+
}
|
|
1014
|
+
},
|
|
820
1015
|
{
|
|
821
1016
|
"kind": "compliance",
|
|
822
1017
|
"ruleId": "cobol-value-credential",
|
|
@@ -843,6 +1038,19 @@
|
|
|
843
1038
|
"quote": "Inventory of all systems and components (e.g., open-source, proprietary, application programming interfaces [API], and container images and registries), including related licenses, and data as part of IT asset management (ITAM)."
|
|
844
1039
|
}
|
|
845
1040
|
},
|
|
1041
|
+
{
|
|
1042
|
+
"kind": "compliance",
|
|
1043
|
+
"ruleId": "control-cards-from-dataset",
|
|
1044
|
+
"framework": "ffiec",
|
|
1045
|
+
"clause": "DA&M VII.B.3",
|
|
1046
|
+
"title": "Additional Control Considerations in Change Management",
|
|
1047
|
+
"rationale": "The rule reports: A utility step reads the commands it runs from a cataloged data set, so what it runs is not in the reviewed JCL. That is an unreviewed modification reaching code nobody edited, which is what change control over the repository exists to prevent.",
|
|
1048
|
+
"source": {
|
|
1049
|
+
"doc": "ffiec",
|
|
1050
|
+
"retrieved": "2026-09-20",
|
|
1051
|
+
"quote": "To prevent unauthorized access to or modification of code, access to code repositories should be role-based, follow the principle of least privilege, and limit access to authorized personnel, tools, and services."
|
|
1052
|
+
}
|
|
1053
|
+
},
|
|
846
1054
|
{
|
|
847
1055
|
"kind": "compliance",
|
|
848
1056
|
"ruleId": "copybook-shadowed",
|
|
@@ -908,6 +1116,32 @@
|
|
|
908
1116
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
909
1117
|
}
|
|
910
1118
|
},
|
|
1119
|
+
{
|
|
1120
|
+
"kind": "compliance",
|
|
1121
|
+
"ruleId": "database-to-cics-sysid",
|
|
1122
|
+
"framework": "ffiec",
|
|
1123
|
+
"clause": "DA&M V",
|
|
1124
|
+
"title": "Development",
|
|
1125
|
+
"rationale": "The rule reports: A database value decides which region a CICS command is shipped to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1126
|
+
"source": {
|
|
1127
|
+
"doc": "ffiec",
|
|
1128
|
+
"retrieved": "2026-09-20",
|
|
1129
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1130
|
+
}
|
|
1131
|
+
},
|
|
1132
|
+
{
|
|
1133
|
+
"kind": "compliance",
|
|
1134
|
+
"ruleId": "database-to-cics-system-resource",
|
|
1135
|
+
"framework": "ffiec",
|
|
1136
|
+
"clause": "DA&M V",
|
|
1137
|
+
"title": "Development",
|
|
1138
|
+
"rationale": "The rule reports: A database value names the resource an EXEC CICS SET changes. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1139
|
+
"source": {
|
|
1140
|
+
"doc": "ffiec",
|
|
1141
|
+
"retrieved": "2026-09-20",
|
|
1142
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1143
|
+
}
|
|
1144
|
+
},
|
|
911
1145
|
{
|
|
912
1146
|
"kind": "compliance",
|
|
913
1147
|
"ruleId": "database-to-dynamic-file-path",
|
|
@@ -1194,6 +1428,32 @@
|
|
|
1194
1428
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1195
1429
|
}
|
|
1196
1430
|
},
|
|
1431
|
+
{
|
|
1432
|
+
"kind": "compliance",
|
|
1433
|
+
"ruleId": "file-record-to-cics-sysid",
|
|
1434
|
+
"framework": "ffiec",
|
|
1435
|
+
"clause": "DA&M V",
|
|
1436
|
+
"title": "Development",
|
|
1437
|
+
"rationale": "The rule reports: A file record decides which region a CICS command is shipped to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1438
|
+
"source": {
|
|
1439
|
+
"doc": "ffiec",
|
|
1440
|
+
"retrieved": "2026-09-20",
|
|
1441
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1442
|
+
}
|
|
1443
|
+
},
|
|
1444
|
+
{
|
|
1445
|
+
"kind": "compliance",
|
|
1446
|
+
"ruleId": "file-record-to-cics-system-resource",
|
|
1447
|
+
"framework": "ffiec",
|
|
1448
|
+
"clause": "DA&M V",
|
|
1449
|
+
"title": "Development",
|
|
1450
|
+
"rationale": "The rule reports: A file record names the resource an EXEC CICS SET changes. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1451
|
+
"source": {
|
|
1452
|
+
"doc": "ffiec",
|
|
1453
|
+
"retrieved": "2026-09-20",
|
|
1454
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1455
|
+
}
|
|
1456
|
+
},
|
|
1197
1457
|
{
|
|
1198
1458
|
"kind": "compliance",
|
|
1199
1459
|
"ruleId": "file-record-to-dynamic-file-path",
|
|
@@ -1389,6 +1649,19 @@
|
|
|
1389
1649
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1390
1650
|
}
|
|
1391
1651
|
},
|
|
1652
|
+
{
|
|
1653
|
+
"kind": "compliance",
|
|
1654
|
+
"ruleId": "intermediate-result-loses-high-order-digits",
|
|
1655
|
+
"framework": "ffiec",
|
|
1656
|
+
"clause": "DA&M V",
|
|
1657
|
+
"title": "Development",
|
|
1658
|
+
"rationale": "The rule reports: A COMPUTE has an intermediate result wider than the compiler carries, so high-order digits can be lost. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1659
|
+
"source": {
|
|
1660
|
+
"doc": "ffiec",
|
|
1661
|
+
"retrieved": "2026-09-20",
|
|
1662
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1663
|
+
}
|
|
1664
|
+
},
|
|
1392
1665
|
{
|
|
1393
1666
|
"kind": "compliance",
|
|
1394
1667
|
"ruleId": "jcl-dlm-hides-instream",
|
|
@@ -1506,6 +1779,19 @@
|
|
|
1506
1779
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1507
1780
|
}
|
|
1508
1781
|
},
|
|
1782
|
+
{
|
|
1783
|
+
"kind": "compliance",
|
|
1784
|
+
"ruleId": "jcl-instream-to-connection-target",
|
|
1785
|
+
"framework": "ffiec",
|
|
1786
|
+
"clause": "DA&M V",
|
|
1787
|
+
"title": "Development",
|
|
1788
|
+
"rationale": "The rule reports: In-stream job data names the database or queue manager the program connects to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1789
|
+
"source": {
|
|
1790
|
+
"doc": "ffiec",
|
|
1791
|
+
"retrieved": "2026-09-20",
|
|
1792
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1793
|
+
}
|
|
1794
|
+
},
|
|
1509
1795
|
{
|
|
1510
1796
|
"kind": "compliance",
|
|
1511
1797
|
"ruleId": "jcl-instream-to-dynamic-file-path",
|
|
@@ -1610,6 +1896,19 @@
|
|
|
1610
1896
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1611
1897
|
}
|
|
1612
1898
|
},
|
|
1899
|
+
{
|
|
1900
|
+
"kind": "compliance",
|
|
1901
|
+
"ruleId": "jcl-instream-to-storage-length",
|
|
1902
|
+
"framework": "ffiec",
|
|
1903
|
+
"clause": "DA&M V",
|
|
1904
|
+
"title": "Development",
|
|
1905
|
+
"rationale": "The rule reports: In-stream job data decides how much storage the program acquires. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1906
|
+
"source": {
|
|
1907
|
+
"doc": "ffiec",
|
|
1908
|
+
"retrieved": "2026-09-20",
|
|
1909
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1910
|
+
}
|
|
1911
|
+
},
|
|
1613
1912
|
{
|
|
1614
1913
|
"kind": "compliance",
|
|
1615
1914
|
"ruleId": "jcl-instream-to-subscript",
|
|
@@ -1662,6 +1961,19 @@
|
|
|
1662
1961
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1663
1962
|
}
|
|
1664
1963
|
},
|
|
1964
|
+
{
|
|
1965
|
+
"kind": "compliance",
|
|
1966
|
+
"ruleId": "jcl-parm-to-connection-target",
|
|
1967
|
+
"framework": "ffiec",
|
|
1968
|
+
"clause": "DA&M V",
|
|
1969
|
+
"title": "Development",
|
|
1970
|
+
"rationale": "The rule reports: A JCL PARM names the database or queue manager the program connects to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1971
|
+
"source": {
|
|
1972
|
+
"doc": "ffiec",
|
|
1973
|
+
"retrieved": "2026-09-20",
|
|
1974
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1975
|
+
}
|
|
1976
|
+
},
|
|
1665
1977
|
{
|
|
1666
1978
|
"kind": "compliance",
|
|
1667
1979
|
"ruleId": "jcl-parm-to-dynamic-file-path",
|
|
@@ -1766,6 +2078,19 @@
|
|
|
1766
2078
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1767
2079
|
}
|
|
1768
2080
|
},
|
|
2081
|
+
{
|
|
2082
|
+
"kind": "compliance",
|
|
2083
|
+
"ruleId": "jcl-parm-to-storage-length",
|
|
2084
|
+
"framework": "ffiec",
|
|
2085
|
+
"clause": "DA&M V",
|
|
2086
|
+
"title": "Development",
|
|
2087
|
+
"rationale": "The rule reports: A JCL PARM decides how much storage the program acquires. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
2088
|
+
"source": {
|
|
2089
|
+
"doc": "ffiec",
|
|
2090
|
+
"retrieved": "2026-09-20",
|
|
2091
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
2092
|
+
}
|
|
2093
|
+
},
|
|
1769
2094
|
{
|
|
1770
2095
|
"kind": "compliance",
|
|
1771
2096
|
"ruleId": "jcl-parm-to-subscript",
|
|
@@ -1935,6 +2260,32 @@
|
|
|
1935
2260
|
"quote": "Inventory of all systems and components (e.g., open-source, proprietary, application programming interfaces [API], and container images and registries), including related licenses, and data as part of IT asset management (ITAM)."
|
|
1936
2261
|
}
|
|
1937
2262
|
},
|
|
2263
|
+
{
|
|
2264
|
+
"kind": "compliance",
|
|
2265
|
+
"ruleId": "password-case-folded-before-compare",
|
|
2266
|
+
"framework": "ffiec",
|
|
2267
|
+
"clause": "DA&M V",
|
|
2268
|
+
"title": "Development",
|
|
2269
|
+
"rationale": "The rule reports: A sign-on folds a password's case before comparing it. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
2270
|
+
"source": {
|
|
2271
|
+
"doc": "ffiec",
|
|
2272
|
+
"retrieved": "2026-09-20",
|
|
2273
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
2274
|
+
}
|
|
2275
|
+
},
|
|
2276
|
+
{
|
|
2277
|
+
"kind": "compliance",
|
|
2278
|
+
"ruleId": "program-checks-stored-password",
|
|
2279
|
+
"framework": "ffiec",
|
|
2280
|
+
"clause": "IS II.C.19",
|
|
2281
|
+
"title": "Encryption",
|
|
2282
|
+
"rationale": "The rule reports: A program compares a password it reads back from its own file or table. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
2283
|
+
"source": {
|
|
2284
|
+
"doc": "ffiec",
|
|
2285
|
+
"retrieved": "2026-09-20",
|
|
2286
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
2287
|
+
}
|
|
2288
|
+
},
|
|
1938
2289
|
{
|
|
1939
2290
|
"kind": "compliance",
|
|
1940
2291
|
"ruleId": "program-without-entry",
|
|
@@ -2000,6 +2351,19 @@
|
|
|
2000
2351
|
"quote": "Management should establish procedures to stay abreast of system vulnerabilities and software vendor patches, test the patches in a segregated environment, and install them when appropriate."
|
|
2001
2352
|
}
|
|
2002
2353
|
},
|
|
2354
|
+
{
|
|
2355
|
+
"kind": "compliance",
|
|
2356
|
+
"ruleId": "sort-exit-named",
|
|
2357
|
+
"framework": "ffiec",
|
|
2358
|
+
"clause": "DA&M IV",
|
|
2359
|
+
"title": "Common Development, Acquisition, and Maintenance Practices",
|
|
2360
|
+
"rationale": "The rule reports: A DFSORT or ICETOOL step names an exit routine on a MODS statement, a load module the sort loads and runs. That is a component or dependency the inventory does not accurately account for, which this practice requires be catalogued.",
|
|
2361
|
+
"source": {
|
|
2362
|
+
"doc": "ffiec",
|
|
2363
|
+
"retrieved": "2026-09-20",
|
|
2364
|
+
"quote": "Inventory of all systems and components (e.g., open-source, proprietary, application programming interfaces [API], and container images and registries), including related licenses, and data as part of IT asset management (ITAM)."
|
|
2365
|
+
}
|
|
2366
|
+
},
|
|
2003
2367
|
{
|
|
2004
2368
|
"kind": "compliance",
|
|
2005
2369
|
"ruleId": "system-response-to-http-header",
|
|
@@ -2013,6 +2377,19 @@
|
|
|
2013
2377
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
2014
2378
|
}
|
|
2015
2379
|
},
|
|
2380
|
+
{
|
|
2381
|
+
"kind": "compliance",
|
|
2382
|
+
"ruleId": "system-response-to-screen",
|
|
2383
|
+
"framework": "ffiec",
|
|
2384
|
+
"clause": "DA&M V",
|
|
2385
|
+
"title": "Development",
|
|
2386
|
+
"rationale": "The rule reports: Db2's error message text is shown on the terminal. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
2387
|
+
"source": {
|
|
2388
|
+
"doc": "ffiec",
|
|
2389
|
+
"retrieved": "2026-09-20",
|
|
2390
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
2391
|
+
}
|
|
2392
|
+
},
|
|
2016
2393
|
{
|
|
2017
2394
|
"kind": "compliance",
|
|
2018
2395
|
"ruleId": "system-response-to-web-response",
|
|
@@ -2026,6 +2403,19 @@
|
|
|
2026
2403
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
2027
2404
|
}
|
|
2028
2405
|
},
|
|
2406
|
+
{
|
|
2407
|
+
"kind": "compliance",
|
|
2408
|
+
"ruleId": "tso-batch-runs-program",
|
|
2409
|
+
"framework": "ffiec",
|
|
2410
|
+
"clause": "DA&M IV",
|
|
2411
|
+
"title": "Common Development, Acquisition, and Maintenance Practices",
|
|
2412
|
+
"rationale": "The rule reports: A TSO batch step runs another program, CLIST, REXX exec or job from its in-stream commands. That is a component or dependency the inventory does not accurately account for, which this practice requires be catalogued.",
|
|
2413
|
+
"source": {
|
|
2414
|
+
"doc": "ffiec",
|
|
2415
|
+
"retrieved": "2026-09-20",
|
|
2416
|
+
"quote": "Inventory of all systems and components (e.g., open-source, proprietary, application programming interfaces [API], and container images and registries), including related licenses, and data as part of IT asset management (ITAM)."
|
|
2417
|
+
}
|
|
2418
|
+
},
|
|
2029
2419
|
{
|
|
2030
2420
|
"kind": "compliance",
|
|
2031
2421
|
"ruleId": "tso-logon-password",
|
|
@@ -2129,6 +2519,123 @@
|
|
|
2129
2519
|
"retrieved": "2026-09-20",
|
|
2130
2520
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
2131
2521
|
}
|
|
2522
|
+
},
|
|
2523
|
+
{
|
|
2524
|
+
"kind": "compliance",
|
|
2525
|
+
"ruleId": "zowe-config-cleartext",
|
|
2526
|
+
"framework": "ffiec",
|
|
2527
|
+
"clause": "IS II.C.19",
|
|
2528
|
+
"title": "Encryption",
|
|
2529
|
+
"rationale": "The rule reports: A Zowe profile for z/OSMF, API ML or RSE connects over plain HTTP. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
2530
|
+
"source": {
|
|
2531
|
+
"doc": "ffiec",
|
|
2532
|
+
"retrieved": "2026-09-20",
|
|
2533
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
2534
|
+
}
|
|
2535
|
+
},
|
|
2536
|
+
{
|
|
2537
|
+
"kind": "compliance",
|
|
2538
|
+
"ruleId": "zowe-config-secret-in-clear",
|
|
2539
|
+
"framework": "ffiec",
|
|
2540
|
+
"clause": "IS II.C.19",
|
|
2541
|
+
"title": "Encryption",
|
|
2542
|
+
"rationale": "The rule reports: A Zowe team configuration holds a password or token in the file rather than in the credential vault. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
2543
|
+
"source": {
|
|
2544
|
+
"doc": "ffiec",
|
|
2545
|
+
"retrieved": "2026-09-20",
|
|
2546
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
2547
|
+
}
|
|
2548
|
+
},
|
|
2549
|
+
{
|
|
2550
|
+
"kind": "compliance",
|
|
2551
|
+
"ruleId": "zowe-config-tls-verify-off",
|
|
2552
|
+
"framework": "ffiec",
|
|
2553
|
+
"clause": "IS II.C.19",
|
|
2554
|
+
"title": "Encryption",
|
|
2555
|
+
"rationale": "The rule reports: A Zowe profile turns off TLS certificate verification. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
2556
|
+
"source": {
|
|
2557
|
+
"doc": "ffiec",
|
|
2558
|
+
"retrieved": "2026-09-20",
|
|
2559
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
2560
|
+
}
|
|
2561
|
+
},
|
|
2562
|
+
{
|
|
2563
|
+
"kind": "compliance",
|
|
2564
|
+
"ruleId": "zowe-mcp-data-marking-off",
|
|
2565
|
+
"framework": "ffiec",
|
|
2566
|
+
"clause": "DA&M V",
|
|
2567
|
+
"title": "Development",
|
|
2568
|
+
"rationale": "The rule reports: A Zowe MCP server has its untrusted-data marking turned off. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
2569
|
+
"source": {
|
|
2570
|
+
"doc": "ffiec",
|
|
2571
|
+
"retrieved": "2026-09-20",
|
|
2572
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
2573
|
+
}
|
|
2574
|
+
},
|
|
2575
|
+
{
|
|
2576
|
+
"kind": "compliance",
|
|
2577
|
+
"ruleId": "zowe-mcp-password-in-config",
|
|
2578
|
+
"framework": "ffiec",
|
|
2579
|
+
"clause": "IS II.C.19",
|
|
2580
|
+
"title": "Encryption",
|
|
2581
|
+
"rationale": "The rule reports: An MCP client configuration sets a Zowe MCP password, credential map or key passphrase to a literal value. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
2582
|
+
"source": {
|
|
2583
|
+
"doc": "ffiec",
|
|
2584
|
+
"retrieved": "2026-09-20",
|
|
2585
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
2586
|
+
}
|
|
2587
|
+
},
|
|
2588
|
+
{
|
|
2589
|
+
"kind": "compliance",
|
|
2590
|
+
"ruleId": "zowe-mcp-tier-full",
|
|
2591
|
+
"framework": "ffiec",
|
|
2592
|
+
"clause": "IS II.C.7",
|
|
2593
|
+
"title": "User Security Controls",
|
|
2594
|
+
"rationale": "The rule reports: A Zowe MCP server runs at the full capability tier. That is authority granted or exercised beyond job necessity, which the principle of least privilege exists to constrain.",
|
|
2595
|
+
"source": {
|
|
2596
|
+
"doc": "ffiec",
|
|
2597
|
+
"retrieved": "2026-09-20",
|
|
2598
|
+
"quote": "Principle of least privilege, which recommends minimum user profile privileges for both physical and logical access based on job necessity."
|
|
2599
|
+
}
|
|
2600
|
+
},
|
|
2601
|
+
{
|
|
2602
|
+
"kind": "compliance",
|
|
2603
|
+
"ruleId": "zowe-mcp-tier-writes",
|
|
2604
|
+
"framework": "ffiec",
|
|
2605
|
+
"clause": "IS II.C.7",
|
|
2606
|
+
"title": "User Security Controls",
|
|
2607
|
+
"rationale": "The rule reports: A Zowe MCP server runs at a capability tier that lets the agent change or delete mainframe data. That is authority granted or exercised beyond job necessity, which the principle of least privilege exists to constrain.",
|
|
2608
|
+
"source": {
|
|
2609
|
+
"doc": "ffiec",
|
|
2610
|
+
"retrieved": "2026-09-20",
|
|
2611
|
+
"quote": "Principle of least privilege, which recommends minimum user profile privileges for both physical and logical access based on job necessity."
|
|
2612
|
+
}
|
|
2613
|
+
},
|
|
2614
|
+
{
|
|
2615
|
+
"kind": "compliance",
|
|
2616
|
+
"ruleId": "zowe-mcp-unpinned",
|
|
2617
|
+
"framework": "ffiec",
|
|
2618
|
+
"clause": "DA&M IV",
|
|
2619
|
+
"title": "Common Development, Acquisition, and Maintenance Practices",
|
|
2620
|
+
"rationale": "The rule reports: A Zowe MCP server is launched from the registry with no pinned version. That is a component or dependency the inventory does not accurately account for, which this practice requires be catalogued.",
|
|
2621
|
+
"source": {
|
|
2622
|
+
"doc": "ffiec",
|
|
2623
|
+
"retrieved": "2026-09-20",
|
|
2624
|
+
"quote": "Inventory of all systems and components (e.g., open-source, proprietary, application programming interfaces [API], and container images and registries), including related licenses, and data as part of IT asset management (ITAM)."
|
|
2625
|
+
}
|
|
2626
|
+
},
|
|
2627
|
+
{
|
|
2628
|
+
"kind": "compliance",
|
|
2629
|
+
"ruleId": "zowe-mock-credentials",
|
|
2630
|
+
"framework": "ffiec",
|
|
2631
|
+
"clause": "IS II.C.19",
|
|
2632
|
+
"title": "Encryption",
|
|
2633
|
+
"rationale": "The rule reports: A Zowe MCP mock systems.json holds a password. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
2634
|
+
"source": {
|
|
2635
|
+
"doc": "ffiec",
|
|
2636
|
+
"retrieved": "2026-09-20",
|
|
2637
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
2638
|
+
}
|
|
2132
2639
|
}
|
|
2133
2640
|
]
|
|
2134
2641
|
}
|