@portll/cobolwork 0.6.0 → 0.7.0
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 +49 -18
- package/STABILITY.md +76 -0
- package/bin/cobolwork.mjs +30 -7
- package/lib/bms.mjs +21 -7
- package/lib/build.mjs +108 -53
- package/lib/capabilities.mjs +9 -10
- package/lib/cics-commands.mjs +501 -9
- package/lib/compliance.mjs +11 -0
- package/lib/consequence.mjs +13 -0
- package/lib/control-workers.mjs +161 -0
- package/lib/control.mjs +52 -3
- package/lib/dataflow.mjs +176 -125
- package/lib/db2/cursor.mjs +15 -0
- package/lib/db2/read.mjs +170 -0
- package/lib/db2/rules.mjs +77 -0
- package/lib/db2/stmt/alter.mjs +473 -0
- package/lib/db2/stmt/grant.mjs +125 -0
- package/lib/db2/stmt/index.mjs +141 -0
- package/lib/db2/stmt/misc.mjs +325 -0
- package/lib/db2/stmt/routine.mjs +564 -0
- package/lib/db2/stmt/storage.mjs +146 -0
- package/lib/db2/stmt/table.mjs +540 -0
- package/lib/db2/stmt/view.mjs +146 -0
- package/lib/diff.mjs +17 -5
- package/lib/evidence/cli.mjs +14 -3
- package/lib/evidence/record.mjs +1 -1
- package/lib/evidence/store.mjs +44 -31
- package/lib/exec-reading.mjs +51 -0
- package/lib/execution.mjs +3 -2
- package/lib/explain.mjs +2 -0
- package/lib/exploitability.mjs +11 -2
- package/lib/hlasm/asm/data.mjs +13 -1
- package/lib/hlasm/asm/sections.mjs +3 -1
- package/lib/hlasm/instr.mjs +25 -0
- package/lib/hlasm/macro/authorization.mjs +24 -4
- package/lib/hlasm/macro/datasets.mjs +30 -17
- package/lib/hlasm/macro/io.mjs +68 -45
- package/lib/hlasm/macro/le.mjs +2 -2
- package/lib/hlasm/macro/operator.mjs +32 -21
- package/lib/hlasm/macro/program.mjs +126 -84
- package/lib/hlasm/macro/recovery.mjs +10 -5
- package/lib/hlasm/macro/storage.mjs +64 -14
- package/lib/hlasm/macro/structured.mjs +1 -1
- package/lib/hlasm/model.mjs +35 -10
- package/lib/hlasm/mvs38.mjs +47 -0
- package/lib/hlasm/operands.mjs +10 -0
- package/lib/hlasm/optable.mjs +61 -0
- package/lib/hlasm/read.mjs +22 -8
- package/lib/hlasm.mjs +44 -7
- package/lib/ims/dli.mjs +37 -0
- package/lib/ims/macro/dbd.mjs +299 -0
- package/lib/ims/macro/psb.mjs +286 -0
- package/lib/ims/model.mjs +149 -0
- package/lib/ims/operands.mjs +23 -0
- package/lib/ims/read.mjs +37 -0
- package/lib/ims/rules.mjs +135 -0
- package/lib/ironwork.mjs +17 -13
- package/lib/kernel/pds-archive.mjs +256 -0
- package/lib/kernel/registry.mjs +14 -8
- package/lib/kernel/shared-pass.mjs +34 -9
- package/lib/kernel/source-tree.mjs +104 -36
- package/lib/kernel/version-key.mjs +17 -0
- package/lib/layout.mjs +26 -31
- package/lib/parser.mjs +136 -17
- package/lib/pli/cursor.mjs +15 -0
- package/lib/pli/expr.mjs +101 -0
- package/lib/pli/include.mjs +82 -0
- package/lib/pli/layout.mjs +125 -0
- package/lib/pli/lex.mjs +198 -0
- package/lib/pli/program.mjs +280 -0
- package/lib/pli/rules/based.mjs +95 -0
- package/lib/pli/rules/conditions.mjs +68 -0
- package/lib/pli/rules/entry.mjs +130 -0
- package/lib/pli/rules/index.mjs +24 -0
- package/lib/pli/rules/preprocessor.mjs +55 -0
- package/lib/pli/statements.mjs +130 -0
- package/lib/pli/stmt/alloc.mjs +45 -0
- package/lib/pli/stmt/assignment.mjs +56 -0
- package/lib/pli/stmt/call.mjs +104 -0
- package/lib/pli/stmt/conditions.mjs +94 -0
- package/lib/pli/stmt/control.mjs +219 -0
- package/lib/pli/stmt/declare.mjs +149 -0
- package/lib/pli/stmt/exec.mjs +55 -0
- package/lib/pli/stmt/io.mjs +239 -0
- package/lib/pli/stmt/misc.mjs +4 -0
- package/lib/pli/stmt/preprocessor.mjs +242 -0
- package/lib/pli/stmt/procedure.mjs +258 -0
- package/lib/pli/stmt/stream.mjs +283 -0
- package/lib/pli/storage.mjs +129 -0
- package/lib/precompile-check.mjs +124 -0
- package/lib/precompile-cics.mjs +7 -3
- package/lib/reach.mjs +11 -2
- package/lib/revision.json +1 -1
- package/lib/sarif.mjs +41 -3
- package/lib/scan.mjs +7 -1
- package/lib/sets/abend.mjs +16 -6
- package/lib/sets/cics.mjs +15 -35
- package/lib/sets/compile.mjs +41 -15
- package/lib/sets/crypto.mjs +5 -3
- package/lib/sets/ddl.mjs +36 -0
- package/lib/sets/flow.mjs +18 -1
- package/lib/sets/hidden.mjs +5 -3
- package/lib/sets/hlasm.mjs +72 -12
- package/lib/sets/ims.mjs +139 -0
- package/lib/sets/log.mjs +6 -6
- package/lib/sets/opaque.mjs +27 -7
- package/lib/sets/pli.mjs +40 -0
- package/lib/sets/recon.mjs +5 -3
- package/lib/sets/secrets.mjs +5 -3
- package/lib/sets/semantics.mjs +3 -0
- package/lib/sets/web.mjs +36 -22
- package/lib/site.mjs +10 -0
- package/lib/sources.mjs +80 -20
- package/lib/statement-cursor.mjs +67 -0
- package/lib/verify.mjs +3 -2
- package/lib/version.mjs +6 -0
- package/package.json +3 -2
- package/rules/compliance-cobit2019.json +432 -1
- package/rules/compliance-dora.json +414 -1
- package/rules/compliance-ffiec.json +414 -1
- package/rules/compliance-nist80053.json +466 -1
- package/rules/hlasm-optables.json +8024 -0
- package/schema/cobolwork-baseline.schema.json +36 -0
- package/schema/cobolwork-build-provenance.schema.json +187 -0
- package/schema/cobolwork-build.schema.json +382 -0
- package/schema/cobolwork-capabilities.schema.json +239 -0
- package/schema/cobolwork-diff.schema.json +217 -0
- package/schema/cobolwork-evidence.schema.json +161 -0
- package/schema/cobolwork-execution.schema.json +53 -0
- package/schema/cobolwork-explain.schema.json +360 -0
- package/schema/cobolwork-finding.schema.json +465 -0
- package/schema/cobolwork-flow.schema.json +465 -0
- package/schema/cobolwork-gate.schema.json +211 -0
- package/schema/cobolwork-inventory.schema.json +206 -0
- package/schema/cobolwork-parse.schema.json +105 -0
- package/schema/cobolwork-reach.schema.json +74 -0
- package/schema/cobolwork-report.schema.json +559 -0
- package/schema/cobolwork-witness.schema.json +107 -0
- package/schema/cobolwork.baseline.schema.json +101 -0
- package/schema/cobolwork.site.schema.json +116 -0
|
@@ -1454,6 +1454,19 @@
|
|
|
1454
1454
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1455
1455
|
}
|
|
1456
1456
|
},
|
|
1457
|
+
{
|
|
1458
|
+
"kind": "compliance",
|
|
1459
|
+
"ruleId": "cics-queue-to-cics-dynamic-transfer",
|
|
1460
|
+
"framework": "ffiec",
|
|
1461
|
+
"clause": "DA&M V",
|
|
1462
|
+
"title": "Development",
|
|
1463
|
+
"rationale": "The rule reports: A CICS queue item decides which program CICS transfers to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1464
|
+
"source": {
|
|
1465
|
+
"doc": "ffiec",
|
|
1466
|
+
"retrieved": "2026-09-20",
|
|
1467
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1468
|
+
}
|
|
1469
|
+
},
|
|
1457
1470
|
{
|
|
1458
1471
|
"kind": "compliance",
|
|
1459
1472
|
"ruleId": "file-record-to-cics-sysid",
|
|
@@ -1467,6 +1480,19 @@
|
|
|
1467
1480
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1468
1481
|
}
|
|
1469
1482
|
},
|
|
1483
|
+
{
|
|
1484
|
+
"kind": "compliance",
|
|
1485
|
+
"ruleId": "cics-queue-to-cics-sysid",
|
|
1486
|
+
"framework": "ffiec",
|
|
1487
|
+
"clause": "DA&M V",
|
|
1488
|
+
"title": "Development",
|
|
1489
|
+
"rationale": "The rule reports: A CICS queue item 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.",
|
|
1490
|
+
"source": {
|
|
1491
|
+
"doc": "ffiec",
|
|
1492
|
+
"retrieved": "2026-09-20",
|
|
1493
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1494
|
+
}
|
|
1495
|
+
},
|
|
1470
1496
|
{
|
|
1471
1497
|
"kind": "compliance",
|
|
1472
1498
|
"ruleId": "file-record-to-cics-system-resource",
|
|
@@ -1480,6 +1506,19 @@
|
|
|
1480
1506
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1481
1507
|
}
|
|
1482
1508
|
},
|
|
1509
|
+
{
|
|
1510
|
+
"kind": "compliance",
|
|
1511
|
+
"ruleId": "cics-queue-to-cics-system-resource",
|
|
1512
|
+
"framework": "ffiec",
|
|
1513
|
+
"clause": "DA&M V",
|
|
1514
|
+
"title": "Development",
|
|
1515
|
+
"rationale": "The rule reports: A CICS queue item names the resource an EXEC CICS SET changes. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1516
|
+
"source": {
|
|
1517
|
+
"doc": "ffiec",
|
|
1518
|
+
"retrieved": "2026-09-20",
|
|
1519
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1520
|
+
}
|
|
1521
|
+
},
|
|
1483
1522
|
{
|
|
1484
1523
|
"kind": "compliance",
|
|
1485
1524
|
"ruleId": "file-record-to-dynamic-file-path",
|
|
@@ -1493,6 +1532,19 @@
|
|
|
1493
1532
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1494
1533
|
}
|
|
1495
1534
|
},
|
|
1535
|
+
{
|
|
1536
|
+
"kind": "compliance",
|
|
1537
|
+
"ruleId": "cics-queue-to-dynamic-file-path",
|
|
1538
|
+
"framework": "ffiec",
|
|
1539
|
+
"clause": "DA&M V",
|
|
1540
|
+
"title": "Development",
|
|
1541
|
+
"rationale": "The rule reports: A CICS queue item decides which file is opened. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1542
|
+
"source": {
|
|
1543
|
+
"doc": "ffiec",
|
|
1544
|
+
"retrieved": "2026-09-20",
|
|
1545
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1546
|
+
}
|
|
1547
|
+
},
|
|
1496
1548
|
{
|
|
1497
1549
|
"kind": "compliance",
|
|
1498
1550
|
"ruleId": "file-record-to-dynamic-program-load",
|
|
@@ -1506,6 +1558,19 @@
|
|
|
1506
1558
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1507
1559
|
}
|
|
1508
1560
|
},
|
|
1561
|
+
{
|
|
1562
|
+
"kind": "compliance",
|
|
1563
|
+
"ruleId": "cics-queue-to-dynamic-program-load",
|
|
1564
|
+
"framework": "ffiec",
|
|
1565
|
+
"clause": "DA&M V",
|
|
1566
|
+
"title": "Development",
|
|
1567
|
+
"rationale": "The rule reports: A CICS queue item decides which program is called. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1568
|
+
"source": {
|
|
1569
|
+
"doc": "ffiec",
|
|
1570
|
+
"retrieved": "2026-09-20",
|
|
1571
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1572
|
+
}
|
|
1573
|
+
},
|
|
1509
1574
|
{
|
|
1510
1575
|
"kind": "compliance",
|
|
1511
1576
|
"ruleId": "file-record-to-dynamic-sql",
|
|
@@ -1519,6 +1584,19 @@
|
|
|
1519
1584
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1520
1585
|
}
|
|
1521
1586
|
},
|
|
1587
|
+
{
|
|
1588
|
+
"kind": "compliance",
|
|
1589
|
+
"ruleId": "cics-queue-to-dynamic-sql",
|
|
1590
|
+
"framework": "ffiec",
|
|
1591
|
+
"clause": "DA&M V",
|
|
1592
|
+
"title": "Development",
|
|
1593
|
+
"rationale": "The rule reports: A CICS queue item reaches dynamic SQL. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1594
|
+
"source": {
|
|
1595
|
+
"doc": "ffiec",
|
|
1596
|
+
"retrieved": "2026-09-20",
|
|
1597
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1598
|
+
}
|
|
1599
|
+
},
|
|
1522
1600
|
{
|
|
1523
1601
|
"kind": "compliance",
|
|
1524
1602
|
"ruleId": "file-record-to-extrapartition-queue",
|
|
@@ -1532,6 +1610,19 @@
|
|
|
1532
1610
|
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
1533
1611
|
}
|
|
1534
1612
|
},
|
|
1613
|
+
{
|
|
1614
|
+
"kind": "compliance",
|
|
1615
|
+
"ruleId": "cics-queue-to-extrapartition-queue",
|
|
1616
|
+
"framework": "ffiec",
|
|
1617
|
+
"clause": "IS II.C.19",
|
|
1618
|
+
"title": "Encryption",
|
|
1619
|
+
"rationale": "The rule reports: A CICS queue item is written to a transient-data queue that leaves the region. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
1620
|
+
"source": {
|
|
1621
|
+
"doc": "ffiec",
|
|
1622
|
+
"retrieved": "2026-09-20",
|
|
1623
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
1624
|
+
}
|
|
1625
|
+
},
|
|
1535
1626
|
{
|
|
1536
1627
|
"kind": "compliance",
|
|
1537
1628
|
"ruleId": "file-record-to-http-header",
|
|
@@ -1545,6 +1636,19 @@
|
|
|
1545
1636
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1546
1637
|
}
|
|
1547
1638
|
},
|
|
1639
|
+
{
|
|
1640
|
+
"kind": "compliance",
|
|
1641
|
+
"ruleId": "cics-queue-to-http-header",
|
|
1642
|
+
"framework": "ffiec",
|
|
1643
|
+
"clause": "DA&M V",
|
|
1644
|
+
"title": "Development",
|
|
1645
|
+
"rationale": "The rule reports: A CICS queue item is written into a header of the response. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1646
|
+
"source": {
|
|
1647
|
+
"doc": "ffiec",
|
|
1648
|
+
"retrieved": "2026-09-20",
|
|
1649
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1650
|
+
}
|
|
1651
|
+
},
|
|
1548
1652
|
{
|
|
1549
1653
|
"kind": "compliance",
|
|
1550
1654
|
"ruleId": "file-record-to-internal-reader",
|
|
@@ -1558,6 +1662,19 @@
|
|
|
1558
1662
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1559
1663
|
}
|
|
1560
1664
|
},
|
|
1665
|
+
{
|
|
1666
|
+
"kind": "compliance",
|
|
1667
|
+
"ruleId": "cics-queue-to-internal-reader",
|
|
1668
|
+
"framework": "ffiec",
|
|
1669
|
+
"clause": "DA&M V",
|
|
1670
|
+
"title": "Development",
|
|
1671
|
+
"rationale": "The rule reports: A CICS queue item is written into a job the internal reader submits. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1672
|
+
"source": {
|
|
1673
|
+
"doc": "ffiec",
|
|
1674
|
+
"retrieved": "2026-09-20",
|
|
1675
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1676
|
+
}
|
|
1677
|
+
},
|
|
1561
1678
|
{
|
|
1562
1679
|
"kind": "compliance",
|
|
1563
1680
|
"ruleId": "file-record-to-message-queue",
|
|
@@ -1571,6 +1688,19 @@
|
|
|
1571
1688
|
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
1572
1689
|
}
|
|
1573
1690
|
},
|
|
1691
|
+
{
|
|
1692
|
+
"kind": "compliance",
|
|
1693
|
+
"ruleId": "cics-queue-to-message-queue",
|
|
1694
|
+
"framework": "ffiec",
|
|
1695
|
+
"clause": "IS II.C.19",
|
|
1696
|
+
"title": "Encryption",
|
|
1697
|
+
"rationale": "The rule reports: A CICS queue item is put on a message queue. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
1698
|
+
"source": {
|
|
1699
|
+
"doc": "ffiec",
|
|
1700
|
+
"retrieved": "2026-09-20",
|
|
1701
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
1702
|
+
}
|
|
1703
|
+
},
|
|
1574
1704
|
{
|
|
1575
1705
|
"kind": "compliance",
|
|
1576
1706
|
"ruleId": "file-record-to-os-command",
|
|
@@ -1584,6 +1714,19 @@
|
|
|
1584
1714
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1585
1715
|
}
|
|
1586
1716
|
},
|
|
1717
|
+
{
|
|
1718
|
+
"kind": "compliance",
|
|
1719
|
+
"ruleId": "cics-queue-to-os-command",
|
|
1720
|
+
"framework": "ffiec",
|
|
1721
|
+
"clause": "DA&M V",
|
|
1722
|
+
"title": "Development",
|
|
1723
|
+
"rationale": "The rule reports: A CICS queue item reaches an operating-system command routine. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1724
|
+
"source": {
|
|
1725
|
+
"doc": "ffiec",
|
|
1726
|
+
"retrieved": "2026-09-20",
|
|
1727
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1728
|
+
}
|
|
1729
|
+
},
|
|
1587
1730
|
{
|
|
1588
1731
|
"kind": "compliance",
|
|
1589
1732
|
"ruleId": "file-record-to-outbound-host",
|
|
@@ -1597,6 +1740,19 @@
|
|
|
1597
1740
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1598
1741
|
}
|
|
1599
1742
|
},
|
|
1743
|
+
{
|
|
1744
|
+
"kind": "compliance",
|
|
1745
|
+
"ruleId": "cics-queue-to-outbound-host",
|
|
1746
|
+
"framework": "ffiec",
|
|
1747
|
+
"clause": "DA&M V",
|
|
1748
|
+
"title": "Development",
|
|
1749
|
+
"rationale": "The rule reports: A CICS queue item decides the host or path this program sends a request to. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1750
|
+
"source": {
|
|
1751
|
+
"doc": "ffiec",
|
|
1752
|
+
"retrieved": "2026-09-20",
|
|
1753
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1754
|
+
}
|
|
1755
|
+
},
|
|
1600
1756
|
{
|
|
1601
1757
|
"kind": "compliance",
|
|
1602
1758
|
"ruleId": "file-record-to-outbound-http",
|
|
@@ -1610,6 +1766,19 @@
|
|
|
1610
1766
|
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
1611
1767
|
}
|
|
1612
1768
|
},
|
|
1769
|
+
{
|
|
1770
|
+
"kind": "compliance",
|
|
1771
|
+
"ruleId": "cics-queue-to-outbound-http",
|
|
1772
|
+
"framework": "ffiec",
|
|
1773
|
+
"clause": "IS II.C.19",
|
|
1774
|
+
"title": "Encryption",
|
|
1775
|
+
"rationale": "The rule reports: A CICS queue item is sent to a remote server over HTTP. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
1776
|
+
"source": {
|
|
1777
|
+
"doc": "ffiec",
|
|
1778
|
+
"retrieved": "2026-09-20",
|
|
1779
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
1780
|
+
}
|
|
1781
|
+
},
|
|
1613
1782
|
{
|
|
1614
1783
|
"kind": "compliance",
|
|
1615
1784
|
"ruleId": "file-record-to-queue-name",
|
|
@@ -1623,6 +1792,19 @@
|
|
|
1623
1792
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1624
1793
|
}
|
|
1625
1794
|
},
|
|
1795
|
+
{
|
|
1796
|
+
"kind": "compliance",
|
|
1797
|
+
"ruleId": "cics-queue-to-queue-name",
|
|
1798
|
+
"framework": "ffiec",
|
|
1799
|
+
"clause": "DA&M V",
|
|
1800
|
+
"title": "Development",
|
|
1801
|
+
"rationale": "The rule reports: A CICS queue item names the queue a command reads, writes or deletes. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1802
|
+
"source": {
|
|
1803
|
+
"doc": "ffiec",
|
|
1804
|
+
"retrieved": "2026-09-20",
|
|
1805
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1806
|
+
}
|
|
1807
|
+
},
|
|
1626
1808
|
{
|
|
1627
1809
|
"kind": "compliance",
|
|
1628
1810
|
"ruleId": "file-record-to-socket-send",
|
|
@@ -1636,6 +1818,19 @@
|
|
|
1636
1818
|
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
1637
1819
|
}
|
|
1638
1820
|
},
|
|
1821
|
+
{
|
|
1822
|
+
"kind": "compliance",
|
|
1823
|
+
"ruleId": "cics-queue-to-socket-send",
|
|
1824
|
+
"framework": "ffiec",
|
|
1825
|
+
"clause": "IS II.C.19",
|
|
1826
|
+
"title": "Encryption",
|
|
1827
|
+
"rationale": "The rule reports: A CICS queue item is written to a network socket. That is an authentication credential or sensitive data left unprotected, which this control requires be encrypted in storage and in transit.",
|
|
1828
|
+
"source": {
|
|
1829
|
+
"doc": "ffiec",
|
|
1830
|
+
"retrieved": "2026-09-20",
|
|
1831
|
+
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
1832
|
+
}
|
|
1833
|
+
},
|
|
1639
1834
|
{
|
|
1640
1835
|
"kind": "compliance",
|
|
1641
1836
|
"ruleId": "file-record-to-web-response",
|
|
@@ -1649,6 +1844,19 @@
|
|
|
1649
1844
|
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1650
1845
|
}
|
|
1651
1846
|
},
|
|
1847
|
+
{
|
|
1848
|
+
"kind": "compliance",
|
|
1849
|
+
"ruleId": "cics-queue-to-web-response",
|
|
1850
|
+
"framework": "ffiec",
|
|
1851
|
+
"clause": "DA&M V",
|
|
1852
|
+
"title": "Development",
|
|
1853
|
+
"rationale": "The rule reports: A CICS queue item is written into the response this program returns. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
1854
|
+
"source": {
|
|
1855
|
+
"doc": "ffiec",
|
|
1856
|
+
"retrieved": "2026-09-20",
|
|
1857
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
1858
|
+
}
|
|
1859
|
+
},
|
|
1652
1860
|
{
|
|
1653
1861
|
"kind": "compliance",
|
|
1654
1862
|
"ruleId": "hidden-payload-in-identification-area",
|
|
@@ -1733,7 +1941,7 @@
|
|
|
1733
1941
|
"framework": "ffiec",
|
|
1734
1942
|
"clause": "IS II.C.7",
|
|
1735
1943
|
"title": "User Security Controls",
|
|
1736
|
-
"rationale": "The rule reports: Assembler source switches to PSW key zero or supervisor state. That is authority granted or exercised beyond job necessity, which the principle of least privilege exists to constrain.",
|
|
1944
|
+
"rationale": "The rule reports: Assembler source switches to PSW key zero, another system key, or supervisor state. That is authority granted or exercised beyond job necessity, which the principle of least privilege exists to constrain.",
|
|
1737
1945
|
"source": {
|
|
1738
1946
|
"doc": "ffiec",
|
|
1739
1947
|
"retrieved": "2026-09-20",
|
|
@@ -2922,6 +3130,211 @@
|
|
|
2922
3130
|
"retrieved": "2026-09-20",
|
|
2923
3131
|
"quote": "Encryption is used to secure communications and data storage, particularly authentication credentials and the transmission of sensitive information."
|
|
2924
3132
|
}
|
|
3133
|
+
},
|
|
3134
|
+
{
|
|
3135
|
+
"kind": "compliance",
|
|
3136
|
+
"ruleId": "db2-exit-routine-declared",
|
|
3137
|
+
"framework": "ffiec",
|
|
3138
|
+
"clause": "DA&M IV",
|
|
3139
|
+
"title": "Common Development, Acquisition, and Maintenance Practices",
|
|
3140
|
+
"rationale": "The rule reports: A table names an exit routine that runs inside Db2. That is a component or dependency the inventory does not accurately account for, which this practice requires be catalogued.",
|
|
3141
|
+
"source": {
|
|
3142
|
+
"doc": "ffiec",
|
|
3143
|
+
"retrieved": "2026-09-20",
|
|
3144
|
+
"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)."
|
|
3145
|
+
}
|
|
3146
|
+
},
|
|
3147
|
+
{
|
|
3148
|
+
"kind": "compliance",
|
|
3149
|
+
"ruleId": "db2-external-routine",
|
|
3150
|
+
"framework": "ffiec",
|
|
3151
|
+
"clause": "DA&M IV",
|
|
3152
|
+
"title": "Common Development, Acquisition, and Maintenance Practices",
|
|
3153
|
+
"rationale": "The rule reports: A procedure or function runs an external load module. That is a component or dependency the inventory does not accurately account for, which this practice requires be catalogued.",
|
|
3154
|
+
"source": {
|
|
3155
|
+
"doc": "ffiec",
|
|
3156
|
+
"retrieved": "2026-09-20",
|
|
3157
|
+
"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)."
|
|
3158
|
+
}
|
|
3159
|
+
},
|
|
3160
|
+
{
|
|
3161
|
+
"kind": "compliance",
|
|
3162
|
+
"ruleId": "db2-grant-to-public",
|
|
3163
|
+
"framework": "ffiec",
|
|
3164
|
+
"clause": "IS II.C.7",
|
|
3165
|
+
"title": "User Security Controls",
|
|
3166
|
+
"rationale": "The rule reports: A GRANT gives privileges to PUBLIC, every authorization ID. That is authority granted or exercised beyond job necessity, which the principle of least privilege exists to constrain.",
|
|
3167
|
+
"source": {
|
|
3168
|
+
"doc": "ffiec",
|
|
3169
|
+
"retrieved": "2026-09-20",
|
|
3170
|
+
"quote": "Principle of least privilege, which recommends minimum user profile privileges for both physical and logical access based on job necessity."
|
|
3171
|
+
}
|
|
3172
|
+
},
|
|
3173
|
+
{
|
|
3174
|
+
"kind": "compliance",
|
|
3175
|
+
"ruleId": "db2-grant-with-grant-option",
|
|
3176
|
+
"framework": "ffiec",
|
|
3177
|
+
"clause": "IS II.C.7",
|
|
3178
|
+
"title": "User Security Controls",
|
|
3179
|
+
"rationale": "The rule reports: WITH GRANT OPTION lets the grantee grant the privilege to others. That is authority granted or exercised beyond job necessity, which the principle of least privilege exists to constrain.",
|
|
3180
|
+
"source": {
|
|
3181
|
+
"doc": "ffiec",
|
|
3182
|
+
"retrieved": "2026-09-20",
|
|
3183
|
+
"quote": "Principle of least privilege, which recommends minimum user profile privileges for both physical and logical access based on job necessity."
|
|
3184
|
+
}
|
|
3185
|
+
},
|
|
3186
|
+
{
|
|
3187
|
+
"kind": "compliance",
|
|
3188
|
+
"ruleId": "db2-system-authority-granted",
|
|
3189
|
+
"framework": "ffiec",
|
|
3190
|
+
"clause": "IS II.C.7",
|
|
3191
|
+
"title": "User Security Controls",
|
|
3192
|
+
"rationale": "The rule reports: A system or database authority is granted. That is authority granted or exercised beyond job necessity, which the principle of least privilege exists to constrain.",
|
|
3193
|
+
"source": {
|
|
3194
|
+
"doc": "ffiec",
|
|
3195
|
+
"retrieved": "2026-09-20",
|
|
3196
|
+
"quote": "Principle of least privilege, which recommends minimum user profile privileges for both physical and logical access based on job necessity."
|
|
3197
|
+
}
|
|
3198
|
+
},
|
|
3199
|
+
{
|
|
3200
|
+
"kind": "compliance",
|
|
3201
|
+
"ruleId": "ims-definition-inconsistent",
|
|
3202
|
+
"framework": "ffiec",
|
|
3203
|
+
"clause": "DA&M V",
|
|
3204
|
+
"title": "Development",
|
|
3205
|
+
"rationale": "The rule reports: A DBD or PSB holds what DBDGEN, PSBGEN or ACBGEN refuses. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
3206
|
+
"source": {
|
|
3207
|
+
"doc": "ffiec",
|
|
3208
|
+
"retrieved": "2026-09-20",
|
|
3209
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
3210
|
+
}
|
|
3211
|
+
},
|
|
3212
|
+
{
|
|
3213
|
+
"kind": "compliance",
|
|
3214
|
+
"ruleId": "ims-pcb-procopt-all",
|
|
3215
|
+
"framework": "ffiec",
|
|
3216
|
+
"clause": "IS II.C.7",
|
|
3217
|
+
"title": "User Security Controls",
|
|
3218
|
+
"rationale": "The rule reports: A database PCB lets the program get, insert, replace and delete its sensitive segments. That is authority granted or exercised beyond job necessity, which the principle of least privilege exists to constrain.",
|
|
3219
|
+
"source": {
|
|
3220
|
+
"doc": "ffiec",
|
|
3221
|
+
"retrieved": "2026-09-20",
|
|
3222
|
+
"quote": "Principle of least privilege, which recommends minimum user profile privileges for both physical and logical access based on job necessity."
|
|
3223
|
+
}
|
|
3224
|
+
},
|
|
3225
|
+
{
|
|
3226
|
+
"kind": "compliance",
|
|
3227
|
+
"ruleId": "ims-senseg-unknown-segment",
|
|
3228
|
+
"framework": "ffiec",
|
|
3229
|
+
"clause": "DA&M V",
|
|
3230
|
+
"title": "Development",
|
|
3231
|
+
"rationale": "The rule reports: A SENSEG names a segment its PCB's DBD does not define, which ends the program with abend U0914. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
3232
|
+
"source": {
|
|
3233
|
+
"doc": "ffiec",
|
|
3234
|
+
"retrieved": "2026-09-20",
|
|
3235
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
3236
|
+
}
|
|
3237
|
+
},
|
|
3238
|
+
{
|
|
3239
|
+
"kind": "compliance",
|
|
3240
|
+
"ruleId": "pli-based-storage-addressing",
|
|
3241
|
+
"framework": "ffiec",
|
|
3242
|
+
"clause": "DA&M IV",
|
|
3243
|
+
"title": "Common Development, Acquisition, and Maintenance Practices",
|
|
3244
|
+
"rationale": "The rule reports: A program addresses storage through a pointer, so data flow through it is not followed. That is a component or dependency the inventory does not accurately account for, which this practice requires be catalogued.",
|
|
3245
|
+
"source": {
|
|
3246
|
+
"doc": "ffiec",
|
|
3247
|
+
"retrieved": "2026-09-20",
|
|
3248
|
+
"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)."
|
|
3249
|
+
}
|
|
3250
|
+
},
|
|
3251
|
+
{
|
|
3252
|
+
"kind": "compliance",
|
|
3253
|
+
"ruleId": "pli-entry-variable-call",
|
|
3254
|
+
"framework": "ffiec",
|
|
3255
|
+
"clause": "DA&M IV",
|
|
3256
|
+
"title": "Common Development, Acquisition, and Maintenance Practices",
|
|
3257
|
+
"rationale": "The rule reports: A CALL through an entry variable dispatches to a procedure chosen at run time, so the callee is not known statically. That is a component or dependency the inventory does not accurately account for, which this practice requires be catalogued.",
|
|
3258
|
+
"source": {
|
|
3259
|
+
"doc": "ffiec",
|
|
3260
|
+
"retrieved": "2026-09-20",
|
|
3261
|
+
"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)."
|
|
3262
|
+
}
|
|
3263
|
+
},
|
|
3264
|
+
{
|
|
3265
|
+
"kind": "compliance",
|
|
3266
|
+
"ruleId": "pli-error-condition-ignored",
|
|
3267
|
+
"framework": "ffiec",
|
|
3268
|
+
"clause": "DA&M V",
|
|
3269
|
+
"title": "Development",
|
|
3270
|
+
"rationale": "The rule reports: An ON unit for a condition does nothing with it, so the condition is silently ignored. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
3271
|
+
"source": {
|
|
3272
|
+
"doc": "ffiec",
|
|
3273
|
+
"retrieved": "2026-09-20",
|
|
3274
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
3275
|
+
}
|
|
3276
|
+
},
|
|
3277
|
+
{
|
|
3278
|
+
"kind": "compliance",
|
|
3279
|
+
"ruleId": "pli-fetch-title-variable",
|
|
3280
|
+
"framework": "ffiec",
|
|
3281
|
+
"clause": "DA&M V",
|
|
3282
|
+
"title": "Development",
|
|
3283
|
+
"rationale": "The rule reports: A FETCH whose TITLE is not a literal names the module to load at run time. That is a source code-related vulnerability of the kind secure coding practices exist to minimise.",
|
|
3284
|
+
"source": {
|
|
3285
|
+
"doc": "ffiec",
|
|
3286
|
+
"retrieved": "2026-09-20",
|
|
3287
|
+
"quote": "Secure coding practices help developers minimize the potential for known source code-related vulnerabilities in the development phase."
|
|
3288
|
+
}
|
|
3289
|
+
},
|
|
3290
|
+
{
|
|
3291
|
+
"kind": "compliance",
|
|
3292
|
+
"ruleId": "pli-preprocessor-in-use",
|
|
3293
|
+
"framework": "ffiec",
|
|
3294
|
+
"clause": "DA&M IV",
|
|
3295
|
+
"title": "Common Development, Acquisition, and Maintenance Practices",
|
|
3296
|
+
"rationale": "The rule reports: A program uses PL/I preprocessor directives, so the source text is not the code that is compiled. That is a component or dependency the inventory does not accurately account for, which this practice requires be catalogued.",
|
|
3297
|
+
"source": {
|
|
3298
|
+
"doc": "ffiec",
|
|
3299
|
+
"retrieved": "2026-09-20",
|
|
3300
|
+
"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)."
|
|
3301
|
+
}
|
|
3302
|
+
},
|
|
3303
|
+
{
|
|
3304
|
+
"kind": "compliance",
|
|
3305
|
+
"ruleId": "ims-procopt-broader-than-used",
|
|
3306
|
+
"framework": "ffiec",
|
|
3307
|
+
"clause": "IS II.C.7",
|
|
3308
|
+
"title": "User Security Controls",
|
|
3309
|
+
"rationale": "The rule reports: A PSB grants a processing option that no DL/I call of the program it is named for uses. That is authority granted or exercised beyond job necessity, which the principle of least privilege exists to constrain.",
|
|
3310
|
+
"source": {
|
|
3311
|
+
"doc": "ffiec",
|
|
3312
|
+
"retrieved": "2026-09-20",
|
|
3313
|
+
"quote": "Principle of least privilege, which recommends minimum user profile privileges for both physical and logical access based on job necessity."
|
|
3314
|
+
}
|
|
3315
|
+
}
|
|
3316
|
+
],
|
|
3317
|
+
"evidence": [],
|
|
3318
|
+
"unmappedEvidence": [
|
|
3319
|
+
{
|
|
3320
|
+
"evidenceId": "journal-records",
|
|
3321
|
+
"why": "None of the sections fetched from the three booklets concerns logging. The Information Security booklet's treatment of logs has to be fetched by hand before a run journal can be mapped to it."
|
|
3322
|
+
},
|
|
3323
|
+
{
|
|
3324
|
+
"evidenceId": "journal-chain",
|
|
3325
|
+
"why": "None of the sections fetched concerns protecting logs from change; the Information Security booklet has to be fetched by hand first."
|
|
3326
|
+
},
|
|
3327
|
+
{
|
|
3328
|
+
"evidenceId": "provenance",
|
|
3329
|
+
"why": "None of the sections fetched concerns the provenance of an output. DA&M IV inventories components, not where one run's output came from."
|
|
3330
|
+
},
|
|
3331
|
+
{
|
|
3332
|
+
"evidenceId": "options-in-force",
|
|
3333
|
+
"why": "None of the sections fetched concerns recording the settings a run used."
|
|
3334
|
+
},
|
|
3335
|
+
{
|
|
3336
|
+
"evidenceId": "assumptions-register",
|
|
3337
|
+
"why": "No booklet concerns how a compiler resolves what its language leaves open."
|
|
2925
3338
|
}
|
|
2926
3339
|
]
|
|
2927
3340
|
}
|