-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTables.sql
More file actions
101 lines (88 loc) · 2.45 KB
/
Tables.sql
File metadata and controls
101 lines (88 loc) · 2.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
DROP TABLE Vuln_doc;
DROP TABLE Exploit_doc;
DROP TABLE Fonctionne_sur;
DROP TABLE Affecte;
DROP TABLE Version_P;
DROP TABLE Produit;
DROP TABLE Exploit;
DROP TABLE Plateforme;
DROP TABLE Reference;
DROP TABLE Fournisseur;
DROP TABLE Auteur;
DROP TABLE Vulnerabilite;
CREATE TABLE Vulnerabilite (
CVE_Id VARCHAR(30) PRIMARY KEY,
Description VARCHAR(200) NOT NULL,
Score_CVSS NUMBER(3,1),
Date_pub DATE,
Date_MAJ DATE,
Gravite VARCHAR(10)
);
CREATE TABLE Auteur (
Id_auteur NUMBER(5) PRIMARY KEY,
Nom VARCHAR(50) NOT NULL,
Affiliation VARCHAR(50),
Email VARCHAR(80),
Nb_exploits NUMBER(5) DEFAULT 0
);
CREATE TABLE Fournisseur (
Id_fournisseur NUMBER(5) PRIMARY KEY,
Siteweb VARCHAR(100) NOT NULL,
Nom VARCHAR(50) NOT NULL,
Description VARCHAR(200),
Nb_employer NUMBER(10)
);
CREATE TABLE Reference (
IdRef NUMBER(5) PRIMARY KEY,
Url VARCHAR(200),
Source VARCHAR(50)
);
CREATE TABLE Plateforme (
Id_plateforme NUMBER(5) PRIMARY KEY,
Nom_OS VARCHAR(50) NOT NULL,
Noyau VARCHAR(50)
);
CREATE TABLE Exploit (
Id_exploit NUMBER(5) PRIMARY KEY,
Description VARCHAR(200) NOT NULL,
PoC VARCHAR(500),
Tag VARCHAR(30),
Date_pub DATE,
Date_MAJ DATE,
Id_auteur NUMBER(5) REFERENCES Auteur(Id_auteur),
CVE_Id VARCHAR(30) REFERENCES Vulnerabilite(CVE_Id)
);
CREATE TABLE Produit (
Id_produit NUMBER(5) PRIMARY KEY,
Nom VARCHAR(50) NOT NULL,
Description VARCHAR(200),
Date_pub DATE,
Vuln_count NUMBER(5),
Id_fournisseur NUMBER (5) REFERENCES Fournisseur(Id_fournisseur)
);
CREATE TABLE Version_P (
IdVP NUMBER(5) PRIMARY KEY,
Date_pub DATE,
Version VARCHAR(20) NOT NULL,
Id_produit NUMBER(5) REFERENCES Produit(Id_produit) NOT NULL
);
CREATE TABLE Affecte (
CVE_Id VARCHAR(30) REFERENCES Vulnerabilite(CVE_Id),
Id_version NUMBER(5) REFERENCES Version_P(IdVP),
PRIMARY KEY(CVE_Id, Id_version)
);
CREATE TABLE Fonctionne_sur (
IdVP NUMBER(5) REFERENCES Version_P(IdVP),
Id_plateforme NUMBER(5) REFERENCES Plateforme(Id_plateforme),
PRIMARY KEY(IdVP, Id_plateforme)
);
CREATE TABLE Exploit_doc (
Id_exploit NUMBER(5) REFERENCES Exploit(Id_exploit),
IdRef NUMBER(5) REFERENCES Reference(IdRef),
PRIMARY KEY(Id_exploit, IdRef)
);
CREATE TABLE Vuln_doc (
CVE_Id VARCHAR(30) REFERENCES Vulnerabilite(CVE_Id),
IdRef NUMBER(5) REFERENCES Reference(IdRef),
PRIMARY KEY (CVE_Id, IdRef)
);