Giter VIP home page Giter VIP logo

trades's People

Contributors

adaussy avatar ash-systems avatar lredor avatar tairlo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

trades's Issues

The application “Trades.app” can’t be opened on macOS Catalina

The app Trades_2.5.2.202103110953-macosx.cocoa.x86_64 can’t be opened on macOS Catalina 10.15.7 (19H1030) with the following message on the system logs: "Could not find and/or execute program specified by service: 13: Permission denied: /Applications/Trades.app/Contents/MacOS/trades"

Export TRADES control into a an OSCAL Catalog

As a user I want to be able to export an existing TRADES Control into a OSCAL Catalog. In order to do so I:

  • [Optional] Create a new OSCAL Catalog in my project
  • [Optional] Create on or several Group to classifiy my controls
  • Select one or more TRADES Control(s) in my analysis and run the action "Export in OSCAL Catalog"

This action should :

  • Ask me to choose a destination for my control (Catalog or Group)
  • [For each selected control] Create a new OSCAL Control with:
    ** A title = Name of the Control
    ** A Documentation = Description of the control
    ** An ID = ID of the TRADES Control (Mandatory)
  • [For each selected control] Replace in my analysis the existing control by a external control with link to the newly created control.

Update OSCAL to last version

Update Metadata and LibOscal to the last version.

The aim is to use a maven provided jar from LibOscal and not one build locally

[OSCAL] Offera way for users to enter values for the parameters used in documentation

The parameters are used in an OSCAL catalog to give the user the opportunity to customize the documentation.

This issues aims to provide a way to fill those values.

Using property view

When selecting an OSCAL item, the user should be able to define value for the parameters

When Drag and Dropping an OSCAL

When drag and droping control into a analisys a dialog should be opened offering to the user a way to fill missing value for parameters.

This issues does not aim to support all the complex OSCAL mecanism for properties: choice, select etc.. It is only here to handle simple cases.

M2doc

Document generation bug - Error while generating a report
image001

Mitigation links are not working properly

The tool from creating a mitigation link from a security control to a threat allocation cannot be applied to threat allocation elements (only to threats). This worked in previous versions.

DSL evaluation for TRADES - please take a look

Hello, greetings from the software engineering group from Beihang University, China. We have been working on the evaluation of Domain Specific Modeling Languages (DSMLs ), the main purpose is to find out the flaws of the design of the DSML. To test our evaluation framework, we evaluated your software design, mainly based on your ecore and odesign files, and found out that even though the overall quality of your software design is very good, there still exists some minor problems. The details are as follows:

rule-based evaluation

Firstly, we did some rule-based evaluation, mainly focusing on the graphic part.

Evaluation of Semiotic Clarity

We've checked your odesign file according to Goodman's theory of symbols[Goodman N. Languages of Art: An Approach to a Theory of Symbols[M]. Hackett publishing, Indianapolis, 1976.], and there are some minor problems that can decrease the semiotic clarity of your design as follows:

  1. Excess

    There are some graphic symbols in your design that does not represent any of the elements of your language.

    • TRADES\bundles\dsm.oscal.design\icons\add.png
    • TRADES\bundles\dsm.oscal.design\icons\edit_template.png
    • TRADES\bundles\dsm.oscal.design\icons\folderType_filter.png
  2. Deficit Elements

    There are some elements in your design that are not represented by any graphic symbols.

    Certainly, we know that some elements do not need to be assigned symbols to, but we believe it is best to check whether these elements really do not need symbols or they were just overlooked.

    • EEFExtHTMLRendererDescription
    • EEFExtMarkdownWidget
    • Group
    • ParameterConstraint
    • ParameterConstraintTest
    • ParameterGuideline
    • ParameterSelection
    • Address
    • BackMatter
    • BackMatterResource
    • Base64
    • Base64Type
    • ControlOwner
    • DateTimeType
    • DateTimeWithTzType
    • DateType
    • DateWithTzType
    • DocumentId
    • DocumentationComputer
    • ElementWithClazz
    • ElementWithId
    • ElementWithRemarks
    • ElementWithValue
    • ExternalId
    • Hash
    • IpV4AddressType
    • IpV6AddressType
    • LinkOwner
    • Location
    • MarkupLineType
    • MarkupMultilineType
    • OscalElement
    • ParameterOwner
    • PartOwner
    • Party
    • PropertyOwner
    • ResourceCitation
    • ResourceRlink
    • ResponsibleParty
    • ResponsibleRole
    • Revision
    • Role
    • TelephoneNumber
    • UUIDElement
    • UriReferenceType
    • UriType
    • UuidType
    • ExtHTMLRendererDescription
    • ExtMarkdownDescription
    • AssessmentENUM
    • AffectedENUM
    • threatTypeENUM
    • ScoreSystem
    • NamedElement
    • ExternalThreat
    • ExternalElement
    • ImpactConfiguration
    • RGBColor
    • ExternalControl
    • ThreatsOwner
    • ControlOwner
    • AbstractControlOwner
    • ControlStatusENUM
    • AbstractThreatOwner
    • IThreatDefinition
    • IControlDefinition
    • ICatalogDefinition
    • IMitigationLink
    • ColoredElement
    • IElementWithSource
    • ElementWithId

LLMS-based evaluation

Secondly, we did some LLMS-based evaluation, mainly focusing on the model part. Generally speaking, we try to make LLM act as a domain expert to provide multidimensional evaluations of your language design.

Model Completeness

We give your ecore design to LLM and ask the LLM to guess which domain your language is designed for. And then we ask LLM to add possible missing elements to your language (perhaps not taken into account in the first version of the design, but can be considered for inclusion in future versions). The results are as follows:

Based on the meta models you provided and their relationships, these models appear to belong to the field of information security, particularly those related to risk assessment, threat modeling, and security control. Next, I will supplement some key meta models and their relationships that may be lost according to the required format.

Element:

Vulnerability: description; Mitigation;
Risk: level; Description; Likelihood; Impact;
RiskAssessment: methodology; AssessmentDate; Assessor;
Security Requirement: category; Description;
Security Policy: description; Title;
MitigationStrategy: description; Effectiveness;
Incident Response Plan: procedure; ResponsibleParty;
Security Standard: standardName; Version; PublicationDate;

Relationship:

Vulnerability (1)<- effects ->Component (n)
Risk (1)<- identifiedIn ->Component (n)
Risk (1)<- associated With ->Vulnerability (n)
RiskAssessment (1)<- evaluations ->Risk (n)
Security Requirement (1)<- addresses ->Risk (n)
Security Requirement (1)<- derived From ->Security Policy (1)
MitigationStrategy (1)<- initiatives ->Vulnerability (n)
Component (1)<- compliesWith ->Security Standard (n)
Control (1)<- elements ->Security Requirement (n)
Incident Response Plan (1)<- activesInResponse To ->Incident (n)
Party (1)<- assignedResponsibilityFor ->MitigationStrategy (n)

These supplements reflect a structured approach to analyzing, responding to, and managing information security risks while ensuring compliance with specific security policies and standards. It covers the complete process of identifying threats and vulnerabilities, planning and implementing corresponding mitigation measures, and establishing accident response plans and security requirements.

We are not sure if these issues actually constitute a problem, the decision to fix them or not is still up to your team, looing forward to your respond, thanks!

D&D from trades model

After importing the trades model as a catalog the D&D to the main model doesn't work

Sirius version

What is the latest Sirius version support for table representations?

Write a test campaign

A test campaign should be written in order to validate that there is regression before a release.

link types

Implement tool to support the link types in the metamodel

Write a user documentation

A documentation should be written describing all the feature available in TRADES.

This documentation should be available inside the the Eclipse RCP platform and in the Github website

OSCAL Problem

When trying to generate a version, there is an OSCAL related problem reported.
It seems like "import gov.nist.secauto.metaschema.datatypes.DataTypes" in OscalDataTypeHandlerGenerator.xtend fails.

[ERROR] Failed to execute goal org.eclipse.tycho:tycho-compiler-plugin:2.3.0:compile (default-compile) on project dsm.oscal.ext: Compilation failure: Compilation failure:
[ERROR] C:\Users\scmas9\git\TRADES\bundles\dsm.oscal.ext\xtend-gen\dsm\oscal\ext\ItemProviderGenerator.java:[90]
[ERROR] Files.writeString(targetPath, this.generateBaseClassContent(genClass, packageName, baseCustomClassName, imagePath),
[ERROR] ^^^^^^^^^^^
[ERROR] The method writeString(Path, String, StandardOpenOption, StandardOpenOption) is undefined for the type Files
[ERROR] C:\Users\scmas9\git\TRADES\bundles\dsm.oscal.ext\xtend-gen\dsm\oscal\ext\ItemProviderGenerator.java:[99]
[ERROR] Files.writeString(customTargetPath,
[ERROR] ^^^^^^^^^^^
[ERROR] The method writeString(Path, String, StandardOpenOption, StandardOpenOption) is undefined for the type Files
[ERROR] C:\Users\scmas9\git\TRADES\bundles\dsm.oscal.ext\src\dsm\oscal\ext\MetaschemaToEcoreApplication.java:[37]
[ERROR] .transform(List.of(//
[ERROR] ^^
[ERROR] The method of(String, String, String) is undefined for the type List
[ERROR] C:\Users\scmas9\git\TRADES\bundles\dsm.oscal.ext\src\dsm\oscal\ext\MetaschemaToEcoreApplication.java:[49]
[ERROR] ), Path.of(args[0]));
[ERROR] ^^
[ERROR] The method of(String) is undefined for the type Path
[ERROR] C:\Users\scmas9\git\TRADES\bundles\dsm.oscal.ext\xtend-gen\dsm\oscal\ext\OscalDataTypeHandlerGenerator.java:[68]
[ERROR] _xblockexpression = Files.writeString(file, this.generateClassContent(), StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING);
[ERROR] ^^^^^^^^^^^
[ERROR] The method writeString(Path, String, StandardOpenOption, StandardOpenOption) is undefined for the type Files
[ERROR] C:\Users\scmas9\git\TRADES\bundles\dsm.oscal.ext\src\dsm\oscal\ext\DeleteMetaschemaAnnotApplication.java:[46]
[ERROR] Files.walk(Path.of(args[0])).filter(p -> p.getFileName().toString().endsWith("ecore"))
[ERROR] ^^

Re-import TRADES catalog

Current behavior:
The user import TRADES catalog to his project and uses several threats/controls on his analysis.
Then the user makes changes in the catalog source.
The user need to delete the catalog in order to re-import it,

User story (behavior required) :
The user import TRADES catalog to his project and uses several threats/controls on his analysis.
Then the user makes changes in the catalog source.
The user re-import the same TRADES catalog.
The threats and controls that are already used in the analysis remain linked to the catalog.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.