Project

General

Profile

IDMEFV2 » History » Version 12

Guillaume Hiet, 10/30/2015 10:49 AM

1 1 Gilles Lehmann
h1. IDMEFV2
2 2 Anonymous
3 2 Anonymous
One of SECEF's projects was to build a new IDMEF structure, that referred to as IDMEF V2.
4 2 Anonymous
5 8 Anonymous
Here are listed the changes that we think could be insteresting to include in the V2.
6 2 Anonymous
7 8 Anonymous
All of these changes were discussed during meetings or on the forum.
8 2 Anonymous
9 8 Anonymous
In red are the fields or class to be suppressed, the others are to be added.
10 2 Anonymous
11 2 Anonymous
|_.Evolution|_.Class|_.Field|_. Type   |
12 9 Anonymous
|/2. Identifier la date de début et de fin d'un événement (scan, propagation de vers, etc.) ou une durée
13 9 Anonymous
*YV: Rôle déjà rempli par CreateTime / detectTime*
14 10 Anonymous
*SM: Pas forcément une attaque sur une durée peut commencer à 10h finir à 11h, être détectée à 10h30 et être créée à 11h01 (IODEF fait aussi cette distinction)*
15 9 Anonymous
| StartTime     |   Date | Date|
16 1 Gilles Lehmann
                                                                                                         | EndTime       |   Date | Date|
17 9 Anonymous
|Champs pour identifer le protocole de transport (TCP, UDP) indépendamment du protocole applicatif 
18 9 Anonymous
*YV: déjà sur-présent, iana_protocol_number, iana_protocol_name, name, port*      
19 9 Anonymous
*SM: Je me trompe peut être, mais on peut représenter que le protocol applicatif non ? On peut pas différencier un HTTP over UDP et HTTP over TCP (c'est un mauvais exemple comme c'est forcément TCP, mais j'en avais pas d'autres sous la main ^^)*
20 12 Guillaume Hiet
*GH : DNS est un meilleur exemple. Je crois me souvenir qu'Hervé avait évoqué la possibilité de préciser le port sous la forme TCP:53 ou UDP:53. Cela éviterait l'ajout d'un champs dédié mais il faudrait vérifier que la V1 d'IDMEF le permet effectivement et surtout faire un tuto à ce sujet. Je préfère la solution d'un champs dédié (je préfère des champs les plus "atomiques" et homogène possibles).*
21 9 Anonymous
| Service       | transport_protocol |ATP
22 2 Anonymous
CUDP
23 2 Anonymous
DCCP
24 2 Anonymous
FCP
25 2 Anonymous
IL
26 2 Anonymous
MPTCP
27 2 Anonymous
RDP
28 2 Anonymous
RUDP
29 2 Anonymous
SCTP
30 2 Anonymous
SPX
31 2 Anonymous
SST
32 2 Anonymous
TCP
33 2 Anonymous
UDP
34 2 Anonymous
UDP Lite
35 2 Anonymous
µTP|
36 2 Anonymous
|Gérer les adresses et les ports translatés.| Address | translation |no_translation
37 2 Anonymous
pre_trabslation
38 2 Anonymous
post_translation|
39 2 Anonymous
|/3.Attachement du log originel (plus specifique que Additional Data)|/3.Classification->Origin|origin|log_analysis
40 2 Anonymous
sensor|
41 2 Anonymous
|signature|String|
42 2 Anonymous
|log|String|
43 5 Yoann Vandoorselaere
|Compteur d'occurrence des événements qui sont agrégés dans une alerte|Origin|counter|Integer|
44 1 Gilles Lehmann
|Champs pour identifier le thread *YV: intérêt très limité IMHO* |Process| TID|Integer|
45 1 Gilles Lehmann
|/2.Distinguer la sévérité d'une attaque, la vulnérabilité probable de la cible, la criticité de la cible et la priorité finale de l'alerte|/2.Impact|target_vulnerability|Enum|
46 1 Gilles Lehmann
|target_criticity|Enum|
47 9 Anonymous
|Supprimer les OverflowAlerts
48 9 Anonymous
*YV: ça semble être une mauvaise idée. Pourquoi ?*
49 10 Anonymous
*SM: Pourquoi faire la distinction entre les Alertes Overflow et pas les autres ? Dans ce cas on pourrait mettre les injections SQL, non ?...*
50 9 Anonymous
|\3{background:#e99b9b}.OverflowAlerts|
51 2 Anonymous
|Ajouter un champs pour identifier la catégorie d'un hôte|Node|type|Enum à travailler|
52 2 Anonymous
|/6.Gestion explicite des données de géolocalisation (longitude, lattitude, ville pays)|/5.Node->Location|latitude|float|
53 2 Anonymous
|longitude|float|
54 1 Gilles Lehmann
|city|String|
55 2 Anonymous
|country|String|
56 2 Anonymous
|state|String|
57 2 Anonymous
|{background:#e99b9b}.Node|\2{background:#e99b9b}.Location|
58 9 Anonymous
|/4.Compléter la classe WebService|/2.WebService->WebServiceHeaderParams|parameter|host
59 2 Anonymous
referer
60 2 Anonymous
user-agent
61 1 Gilles Lehmann
server
62 1 Gilles Lehmann
cookie
63 1 Gilles Lehmann
http-method
64 1 Gilles Lehmann
other|
65 2 Anonymous
|value|String|
66 9 Anonymous
|/2.WebService->WebServiceParams
67 9 Anonymous
*YV: WebService->arg ?*
68 10 Anonymous
*SM: Les paramètres HTTP sont sous formes de clé/valeur on ne peut pas les mettre non dans arg, si ?*
69 9 Anonymous
|parameter|String|
70 2 Anonymous
|value|String|
71 2 Anonymous
|/16.Ajouter des sous-classes à la classe Service|/4.Service->LDAPService|url|String|
72 2 Anonymous
|operation|start_tls
73 2 Anonymous
bind
74 2 Anonymous
search
75 2 Anonymous
compare
76 2 Anonymous
add
77 2 Anonymous
delete
78 2 Anonymous
modify
79 2 Anonymous
modify_dn
80 2 Anonymous
abandon
81 2 Anonymous
extended-operation
82 2 Anonymous
unbind
83 2 Anonymous
other|
84 2 Anonymous
|ext-operation|String|
85 2 Anonymous
|dn|String|
86 2 Anonymous
|/2.LDAPService->LDAPServiceParams|parameter|scope
87 2 Anonymous
filter
88 2 Anonymous
deref_aliases
89 2 Anonymous
attribute
90 2 Anonymous
sizelimit
91 2 Anonymous
timelimit
92 2 Anonymous
sizeonly
93 2 Anonymous
ext-type|
94 2 Anonymous
|ext-type|String|
95 2 Anonymous
|/4.Service->SIPService|uri|String|
96 2 Anonymous
|request|INVITE
97 2 Anonymous
ACK
98 2 Anonymous
BYE
99 2 Anonymous
CANCEL
100 2 Anonymous
OPTIONS
101 2 Anonymous
REGISTER
102 2 Anonymous
PRACK
103 2 Anonymous
SUBSCRIBE
104 2 Anonymous
NOTIFY
105 2 Anonymous
PUBLISH
106 2 Anonymous
INFO
107 2 Anonymous
referer
108 2 Anonymous
MESSAGE
109 2 Anonymous
UPDATE
110 2 Anonymous
other|
111 2 Anonymous
|ext-request|String|
112 2 Anonymous
|response|integer|
113 2 Anonymous
|/2.SIPService->HeaderSIPService|parameter|Enum|
114 2 Anonymous
|value|String|
115 2 Anonymous
|/4.Service->SMTPService|messsageid|String|
116 2 Anonymous
|user-agent|String|
117 2 Anonymous
|subject|String|
118 2 Anonymous
|references|String|