This document in RTF format.
Initial assumptions:
1. IODEF should be compatible with IDMEF and be capable to use/include IDMEF message into IO, e.g. as or inside of IncidentAlert IO class. However, backward compatibility is not required, i.e. it's not necessary that IODEF message will be understood by IDS or Intrusion Alert System. It is expected that Security administrator if necessary runs Incident Handling System.Problems discovered in developing IODEF from IDMEF
2. If some elements or attributes intersect, options should be considered: change name in IODEF, adopt to IODEF or extend
Note.
1. These comments refer to the current IO Data Model http://www.terena.nl/task-forces/tf-csirt/i-taxonomy/docs/iodef-datamodelv01.html
2. For clarity all terms related to IODEF are marked */IODEF, and those related to IDMEF - */IDMEF
3. Initial Version 0.0 of IODEF XML DTD is available (Format DTD, TXT)
| Problem/Question | Definitions from IDMEF and Comment | Suggestion/Action |
| 1. Is it possible to reuse (confirmed) IDMEF to generate in a simplest way IncidentAlert (message) | Possible format for IODEF IncidentAlert:
|
TBConsidered.
Ask IDWG about lifetime of IDMEF: What happen with confirmed Intrusion? |
| 2. Consider possibility/need of Incident classification.
Is it necessary if we have already classification of Vulnerabilities and Attacks in related documents? |
TBC | |
| 3. Consider using IRT-Role entry in RIPE database for identifying Security contact for Victim and Attacker | TBC | |
| 4. Compare (target, source)/IDMEF and
(target,
source)/IODEF.
Does source/IDMEF cover/equal to Attacker/IODEF? |
The Target class contains information
about the possible target(s) of the event(s) that generated an alert. An
event may have more than one target (e.g., in the case of a port sweep).
The Target class is composed of four aggregate classes: Node, User, Process, Service The Source class contains information about the possible source(s) of the event(s) that generated an alert. An event may have more than one source (e.g., in a distributed denial of service attack). The Source class is composed of four aggregate classes: Node, User, Process, Service <Source ident="a1a2" spoofed="yes">
|
O.K. to reuse |
| 5. Definition of impact/IDMEF | Impact (Optional). The evaluated impact of the event(s) leading up to the alert on the target. The permitted values for this attribute are shown below. The default value is "unknown". | O.K. to reuse |
| 6. IDMEF uses detectTime/IDMEF.
What is related element in IODEF |
Consider registrationTime/IODEF
The DetectTime class is used to indicate the date and time the event(s) producing an alert was detected by the analyzer. In the case of more than one event, the time the first event was detected. (This may or may not be the same time as CreateTime; analyzers are not required to send alerts immediately upon detection). The DetectTime class has one attribute: ntpstamp representing the same date and time as the element content. |
Can be adopted |
| 7. It seems that name "datetime" is commonly
used in XML world but IDMEF use "date-time" with dash.
Ask them about this. |
Date-time strings are represented by
the DATETIME data type. Each date-time string identifies a particular
instant in time; ranges are not supported.
Date-time strings are formatted according to a subset of ISO 8601:2000, as show below. Section references in parentheses refer to sections of the ISO 8601:2000 standard. |
O.K. |
| 8. IDMEF intends to define tool of the attack by element ToolAlert | ToolAlert is subclass of Alert.
The ToolAlert class carries additional information related to the use of attack tools or malevolent programs such as Trojan horses, and can be used by the analyzer when it is able to identify these tools. It is intended to group one or more previously-sent alerts together, to say "these alerts were all the result of someone using this tool." The ToolAlert class is composed of three aggregate classes: name, command, alertident. |
No suggestions.
(Not applicable for IODEF) |
| 9. Reuse definition of "Alertident" for extended identification of Incidents. | AlertIdent - the list of alert identifiers
that are related to this alert. Because alert identifiers are only unique
across the alerts sent by a single analyzer, the optional "analyzerid"
attribute of "alertident" should be used to identify the analyzer that
a particular alert came from. If the "analyzerid" is not provided, the
alert is assumed to have come from the same analyzer that is sending the
ToolAlert.
<CorrelationAlert>
|
Not applicable for IODEF |
| 10. Check "user" and "userId"
from IDMEF.
Do we have/need "user*" element in IODEF? |
The User class is used to describe user
that is receiving the event(s). It is primarily used as a "container" class
for the UserId aggregate class.
The UserId class provides specific information about a user. More than one UserId can be used within the User class to indicate attempts to transition from one user to another, or to provide complete information about a user's (or process') privileges. The UserId class is composed of two aggregate classes: name, number. |
User class in IDMEF is not clearly defined.
Comment to IDWG. |
11. IDMEF doesn't contain elements Attack
and Vulnerability because
|
Vulnerability is covered by Classification
element.
However, it looks a bit indefinite as sub-element of <!ELEMENT Alert (Analyzer, CreateTime, DetectTime?, AnalyzerTime?, Source*, Target*, Classification+, ToolAlert?, OverflowAlert?, CorrelationAlert?, AdditionalData*)> The Classification class provides the "name" of an alert, or other information allowing the manager to determine what it is (for example, to decide whether or not to display the alert on-screen, what color to display it in, etc.). The Classification class is composed of two aggregate classes: name (of vulnerability), url. |
TBC |
| 12. IDMEF doesn't contain element Vulnerability | It seems like Vulnerability is covered by Classification element | |
| 13. Check meaning/definition of "classification" in IDMEF. Does it mean known/registered vulnerability | <Classification origin="bugtraqid">
<name>629</name> <url>http://www.securityfocus.com</url> </Classification> |
Classification class not clearly defined. Is it related to Vulnerabilities, exposure or Attacks. If latter, what's attack? |
| 14. Check definition of method/IDMEF
And consider changing/redefining Method/IODEF and/or moving:
|
IDMEF: Service>webservice>method
The HTTP method (PUT, GET) used in the request <!ELEMENT WebService (url, cgi?, method?, arg*)>
|
Contact IDWG to change method to httpmethod.
Using generic term method is not good in general. |
15. Consider reusing
the following terms from IDMEF:
|
Size is a sub-element of OverflowAlert | N/A |
| Number is a sub-element of userId | ||
| url (exactly one string)-used in classification, WebService | O.K. | |
| location - sub-element of node (location, name address) | Not clearly defined. | |
| name - has diverse number
of definitions:
name of a particular tool in ToolAlert, name of equipment in node, name of the alert in Classification from one of the known origins, etc. |
Not clearly defined.
Meaning depends on place in IDMEF hierarchy. |
|