-
Notifications
You must be signed in to change notification settings - Fork 183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Produce Metaschemas without XXEs (#1665) #1901
Produce Metaschemas without XXEs (#1665) #1901
Conversation
Example outputRunning ➜ tree generated | grep RESOLVED
├── oscal_assessment-common_metaschema_RESOLVED.xml
├── oscal_assessment-plan_metaschema_RESOLVED.xml
├── oscal_assessment-results_metaschema_RESOLVED.xml
├── oscal_catalog_metaschema_RESOLVED.xml
├── oscal_complete_metaschema_RESOLVED.xml
├── oscal_component_metaschema_RESOLVED.xml
├── oscal_control-common_metaschema_RESOLVED.xml
├── oscal_implementation-common_metaschema_RESOLVED.xml
├── oscal_metadata_metaschema_RESOLVED.xml
├── oscal_poam_metaschema_RESOLVED.xml
├── oscal_profile_metaschema_RESOLVED.xml
├── oscal_ssp_metaschema_RESOLVED.xml The resolved metaschemas are identical to the source ones but with two crucial differences:
Example: <?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="../../build/metaschema-xslt/src/validate/metaschema-composition-check.sch" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?>
<!-- OSCAL GRAND UNIFIED MEGALOMETASCHEMA -->
<!-- validate with XSD and Schematron (linked) -->
<METASCHEMA xmlns="http://csrc.nist.gov/ns/oscal/metaschema/1.0">
<schema-name>OSCAL Unified Model of Models</schema-name>
<schema-version>1.1.0</schema-version>
<short-name>oscal-complete</short-name>
<namespace>http://csrc.nist.gov/ns/oscal/1.0</namespace>
<json-base-uri>http://csrc.nist.gov/ns/oscal/1.0</json-base-uri>
<remarks>
<p>This format represents a combination of all of the OSCAL models.</p>
</remarks>
<import href="oscal_catalog_metaschema_RESOLVED.xml"/>
<import href="oscal_profile_metaschema_RESOLVED.xml"/>
<import href="oscal_component_metaschema_RESOLVED.xml"/>
<import href="oscal_ssp_metaschema_RESOLVED.xml"/>
<import href="oscal_assessment-plan_metaschema_RESOLVED.xml"/>
<import href="oscal_assessment-results_metaschema_RESOLVED.xml"/>
<import href="oscal_poam_metaschema_RESOLVED.xml"/>
</METASCHEMA> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice concept, nice simple implementation--
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a great addition, thank you very much. All I would ask is that you add an ADR and then I can approve.
Co-authored-by: A.J. Stein <[email protected]>
* Produce Metaschemas without XXEs (#1665) * ADR for XXE resolution * Accepted ADR 5 * Apply suggestions from code review Co-authored-by: A.J. Stein <[email protected]> * Revert release artifact archive readme extension change --------- Co-authored-by: A.J. Stein <[email protected]>
* Produce Metaschemas without XXEs (#1665) * ADR for XXE resolution * Accepted ADR 5 * Apply suggestions from code review Co-authored-by: A.J. Stein <[email protected]> * Revert release artifact archive readme extension change --------- Co-authored-by: A.J. Stein <[email protected]>
Committer Notes
Fixes #1665
Also in this PR:
list-release-artifacts
utility makefile target for use in OSCAL-Reference;src/release/README.txt
to a more descriptive name to prevent confusion in the future (see Rename README.txt to README.md #1891);All Submissions:
By submitting a pull request, you are agreeing to provide this contribution under the CC0 1.0 Universal public domain dedication.
(For reviewers: The wiki has guidance on code review and overall issue review for completeness.)
Changes to Core Features:
Have you updated all OSCAL website and readme documentation affected by the changes you made? Changes to the OSCAL website can be made in the docs/content directory of your branch.