aboutsummaryrefslogtreecommitdiffstats
path: root/lib/orm/migrations/0001_initial.py
blob: 69ff00a3fcd0cf8fc96eae08d663a24922cef97e (plain)
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.db import migrations, models

from orm.models import CpeFilter

class Migration(migrations.Migration):

    dependencies = [
        ('users', '0001_initial'),
    ]

    operations = [
        migrations.CreateModel(
            name='SrtSetting',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('name', models.CharField(max_length=63)),
                ('helptext', models.TextField(blank=True)),
                ('value', models.CharField(max_length=255)),
            ],
        ),

        migrations.CreateModel(
            name='HelpText',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('area', models.IntegerField(choices=[(0, b'variable')])),
                ('key', models.CharField(max_length=100)),
                ('text', models.TextField(blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='DataSource',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('key', models.CharField(max_length=20)),
                ('data', models.CharField(max_length=20)),
                ('source', models.CharField(max_length=20)),
                ('name', models.CharField(max_length=20)),
                ('description', models.TextField(blank=True)),
                ('attributes', models.TextField(blank=True)),
                ('cve_filter', models.CharField(max_length=20)),
                ('init', models.TextField(blank=True)),
                ('update', models.TextField(blank=True)),
                ('lookup', models.TextField(blank=True)),
                ('update_frequency', models.IntegerField(default=2)),
                ('loaded', models.BooleanField(default=False)),
                ('lastModifiedDate', models.CharField(max_length=50, blank=True)),
                ('update_time', models.CharField(max_length=50, blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='CweTable',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('name', models.CharField(max_length=40)),
                ('href', models.TextField(blank=True)),
                ('summary', models.TextField(blank=True)),
                ('description', models.TextField(blank=True)),
                ('vulnerable_count', models.IntegerField(default=0)),
                ('found', models.BooleanField(default=False)),
            ],
        ),

        migrations.CreateModel(
            name='Cve',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('name', models.CharField(max_length=50)),
                ('name_sort', models.CharField(max_length=50)),

                ('priority', models.IntegerField(default=0)),
                ('status', models.IntegerField(default=0)),
                ('comments', models.TextField(blank=True)),
                ('comments_private', models.TextField(blank=True)),

                ('cve_data_type', models.CharField(max_length=100, blank=True)),
                ('cve_data_format', models.CharField(max_length=50, blank=True)),
                ('cve_data_version', models.CharField(max_length=50, blank=True)),

                ('public', models.BooleanField(default=True)),
                ('publish_state', models.IntegerField(default=0)),
                ('publish_date', models.CharField(max_length=50, blank=True)),

                ('description', models.TextField(blank=True)),
                ('publishedDate', models.CharField(max_length=50, blank=True)),
                ('lastModifiedDate', models.CharField(max_length=50, blank=True)),

                ('recommend', models.IntegerField(default=0)),
                ('recommend_list', models.TextField(blank=True)),

                ('cvssV3_baseScore', models.CharField(max_length=50, blank=True)),
                ('cvssV3_baseSeverity', models.CharField(max_length=50, blank=True)),

                ('cvssV2_baseScore',models.CharField(max_length=50, blank=True)),
                ('cvssV2_severity', models.CharField(max_length=50, blank=True)),

                ('packages', models.TextField(blank=True)),

                ('score_date', models.DateTimeField(null=True, blank=True)),
                ('srt_updated', models.DateTimeField(auto_now=True)),
##                ('srt_created', models.DateTimeField(auto_now_add=True)),
            ],
        ),

        migrations.CreateModel(
            name='CveLocal',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('name', models.CharField(max_length=50)),

                ('cve_data_type', models.CharField(max_length=100, blank=True)),
                ('cve_data_format', models.CharField(max_length=50, blank=True)),
                ('cve_data_version', models.CharField(max_length=50, blank=True)),

                ('description', models.TextField(blank=True)),
                ('publishedDate', models.CharField(max_length=50, blank=True)),
                ('lastModifiedDate', models.CharField(max_length=50, blank=True)),
                ('url', models.TextField(blank=True)),
                ('url_title', models.TextField(default='Link')),

                ('recommend', models.IntegerField(default=0)),
                ('recommend_list', models.TextField(blank=True)),

                ('cpe_list', models.TextField(blank=True)),

                ('cvssV3_baseScore', models.CharField(max_length=50, blank=True)),
                ('cvssV3_baseSeverity', models.CharField(max_length=50, blank=True)),
                ('cvssV3_vectorString', models.TextField(blank=True)),
                ('cvssV3_exploitabilityScore', models.CharField(max_length=50, blank=True)),
                ('cvssV3_impactScore', models.CharField(max_length=50, blank=True)),
                ('cvssV3_attackVector', models.CharField(max_length=5, blank=True)),
                ('cvssV3_attackComplexity', models.CharField(max_length=50, blank=True)),
                ('cvssV3_privilegesRequired', models.CharField(max_length=50, blank=True)),
                ('cvssV3_userInteraction', models.CharField(max_length=50, blank=True)),
                ('cvssV3_scope', models.CharField(max_length=50, blank=True)),
                ('cvssV3_confidentialityImpact', models.CharField(max_length=50, blank=True)),
                ('cvssV3_integrityImpact', models.CharField(max_length=50, blank=True)),
                ('cvssV3_availabilityImpact', models.CharField(max_length=50, blank=True)),

                ('cvssV2_baseScore',models.CharField(max_length=50, blank=True)),
                ('cvssV2_severity', models.CharField(max_length=50, blank=True)),
                ('cvssV2_vectorString', models.TextField(blank=True)),
                ('cvssV2_exploitabilityScore', models.CharField(max_length=50, blank=True)),
                ('cvssV2_impactScore', models.CharField(max_length=50, blank=True)),
                ('cvssV2_accessVector', models.CharField(max_length=50, blank=True)),
                ('cvssV2_accessComplexity', models.CharField(max_length=50, blank=True)),
                ('cvssV2_authentication', models.CharField(max_length=50, blank=True)),
                ('cvssV2_confidentialityImpact', models.CharField(max_length=50, blank=True)),
                ('cvssV2_integrityImpact', models.CharField(max_length=50, blank=True)),
            ],
        ),


        migrations.CreateModel(
            name='CveSource',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('cve', models.ForeignKey(default=None, related_name='source2cve', to='orm.cve', null=True,on_delete=models.CASCADE,)),
                ('datasource', models.ForeignKey(default=None, to='orm.datasource',null=True,on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='CveToCwe',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('cve', models.ForeignKey(related_name='cve2cwe', to='orm.cve', on_delete=models.CASCADE,)),
                ('cwe', models.ForeignKey(to='orm.cwetable', on_delete=models.CASCADE,)),
            ],
        ),


        migrations.CreateModel(
            name='Package',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('mode', models.IntegerField(default=0)),
                ('name', models.CharField(max_length=50, blank=True)),
                ('realname', models.CharField(max_length=50, blank=True)),
                ('invalidname', models.TextField(blank=True)),
                ('weight', models.IntegerField(default=0)),
                ('cve_count', models.IntegerField(default=0)),
                ('vulnerability_count', models.IntegerField(default=0)),
                ('investigation_count', models.IntegerField(default=0)),
                ('defect_count', models.IntegerField(default=0)),
            ],
        ),

        migrations.CreateModel(
            name='PackageToCve',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('package', models.ForeignKey(related_name='package2cve', to='orm.package', on_delete=models.CASCADE,)),
                ('cve', models.ForeignKey(related_name='cve2package', to='orm.cve', on_delete=models.CASCADE,)),
                ('applicable', models.NullBooleanField(default=True, null=True)),
            ],
        ),

        migrations.CreateModel(
            name='CveReference',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('cve', models.ForeignKey(related_name='references', to='orm.cve', on_delete=models.CASCADE,)),
                ('hyperlink', models.CharField(max_length=100, null=True)),
                ('resource', models.CharField(max_length=100, null=True)),
                ('type', models.CharField(max_length=100, null=True)),
                ('source', models.CharField(max_length=100, null=True)),
                ('name', models.CharField(max_length=100, null=True)),
                ('datasource', models.ForeignKey(related_name='source_references', to='orm.datasource', default=None, null=True,on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='CveHistory',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('cve', models.ForeignKey(default=None, null=True, to='orm.cve', on_delete=models.CASCADE,)),
                ('comment', models.TextField(blank=True)),
                ('date', models.DateField(null=True, blank=True)),
                ('author', models.TextField(blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='Product',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('order', models.IntegerField(default=0)),
                ('key', models.CharField(max_length=40)),
                ('name', models.CharField(max_length=40)),
                ('version', models.CharField(max_length=40)),
                ('profile', models.CharField(max_length=40)),
                ('cpe', models.CharField(max_length=40)),
                ('defect_tags', models.TextField(blank=True, default='')),
                ('product_tags', models.TextField(blank=True, default='')),
            ],
        ),

        migrations.CreateModel(
            name='Vulnerability',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('name', models.CharField(max_length=50)),
                ('description', models.TextField(blank=True, default='')),
                ('cve_primary_name', models.CharField(max_length=50, default='')),
                ('public', models.BooleanField(default=False)),
                ('comments', models.TextField(blank=True, default='')),
                ('comments_private', models.TextField(blank=True, default='')),
                ('status', models.IntegerField(default=0)),
                ('outcome', models.IntegerField(default=0)),
                ('priority', models.IntegerField(default=0)),
            ],
        ),

        migrations.CreateModel(
            name='CveToVulnerablility',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('vulnerability', models.ForeignKey(to='orm.vulnerability', on_delete=models.CASCADE,)),
                ('cve', models.ForeignKey(to='orm.cve', on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='VulnerabilityComments',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('vulnerability', models.ForeignKey(to='orm.vulnerability', on_delete=models.CASCADE,)),
                ('comment', models.TextField(blank=True)),
                ('date', models.DateField(null=True, blank=True)),
                ('author', models.TextField(blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='VulnerabilityHistory',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('vulnerability', models.ForeignKey(to='orm.vulnerability', on_delete=models.CASCADE,)),
                ('comment', models.TextField(blank=True)),
                ('date', models.DateField(null=True, blank=True)),
                ('author', models.TextField(blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='VulnerabilityUploads',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('vulnerability', models.ForeignKey(to='orm.vulnerability',on_delete=models.CASCADE,)),
                ('description', models.TextField(blank=True)),
                ('path', models.TextField(blank=True)),
                ('size', models.IntegerField(default=0)),
                ('date', models.DateField(null=True, blank=True)),
                ('author', models.TextField(blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='Defect',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('name', models.CharField(max_length=50)),
                ('summary', models.TextField(blank=True)),
                ('url', models.TextField(blank=True)),
                ('priority', models.IntegerField(default=0)),
                ('status', models.IntegerField(default=0)),
                ('resolution', models.IntegerField(default=0)),
                ('publish', models.TextField(blank=True)),
                ('release_version', models.CharField(max_length=50)),
                ('product', models.ForeignKey(to='orm.product', on_delete=models.CASCADE,)),
                ('date_created', models.CharField(max_length=50)),
                ('date_updated', models.CharField(max_length=50)),
                ('srt_updated', models.DateTimeField(auto_now=True)),
            ],
        ),


        migrations.CreateModel(
            name='Investigation',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('name', models.CharField(max_length=50)),
                ('vulnerability', models.ForeignKey(related_name='vulnerability_investigation',to='orm.vulnerability', on_delete=models.CASCADE,)),
                ('product', models.ForeignKey(related_name='references', to='orm.product',on_delete=models.CASCADE,)),

                ('public', models.BooleanField(default=True)),
                ('comments', models.TextField(blank=True)),
                ('comments_private', models.TextField(blank=True)),

                ('status', models.IntegerField(default=0)),
                ('outcome', models.IntegerField(default=0)),
                ('priority', models.IntegerField(default=0)),
            ],
        ),

        migrations.CreateModel(
            name='InvestigationToDefect',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('investigation', models.ForeignKey(to='orm.investigation', on_delete=models.CASCADE,)),
                ('defect', models.ForeignKey(to='orm.defect', on_delete=models.CASCADE,)),
                ('product', models.ForeignKey(to='orm.product', on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='InvestigationComments',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('investigation', models.ForeignKey(to='orm.investigation', on_delete=models.CASCADE,)),
                ('comment', models.TextField(blank=True)),
                ('date', models.DateField(null=True, blank=True)),
                ('author', models.TextField(blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='InvestigationHistory',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('investigation', models.ForeignKey(to='orm.investigation', on_delete=models.CASCADE,)),
                ('comment', models.TextField(blank=True)),
                ('date', models.DateField(null=True, blank=True)),
                ('author', models.TextField(blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='InvestigationUploads',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('investigation', models.ForeignKey(to='orm.investigation', on_delete=models.CASCADE,)),
                ('description', models.TextField(blank=True)),
                ('path', models.TextField(blank=True)),
                ('size', models.IntegerField(default=0)),
                ('date', models.DateField(null=True, blank=True)),
                ('author', models.TextField(blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='VulnerabilityToInvestigation',
            fields=[
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
                ('vulnerability', models.ForeignKey(related_name='vulnerability_investigation', to='orm.vulnerability',on_delete=models.CASCADE,)),
                ('investigation', models.ForeignKey(related_name='investigation_vulnerability', to='orm.investigation',on_delete=models.CASCADE,)),
            ],
        ),


        migrations.CreateModel(
            name='VulnerabilityAccess',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('vulnerability', models.ForeignKey(to='orm.vulnerability', on_delete=models.CASCADE,)),
                ('user', models.ForeignKey(to='users.srtuser', on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='InvestigationAccess',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('investigation', models.ForeignKey(to='orm.investigation', on_delete=models.CASCADE,)),
                ('user', models.ForeignKey(to='users.srtuser', on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='VulnerabilityNotification',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('vulnerability', models.ForeignKey(to='orm.vulnerability', on_delete=models.CASCADE,)),
                ('user', models.ForeignKey(to='users.srtuser', on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='InvestigationNotification',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('investigation', models.ForeignKey(to='orm.investigation', on_delete=models.CASCADE,)),
                ('user', models.ForeignKey(to='users.srtuser', on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='CpeTable',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('vulnerable', models.BooleanField(default='False')),
                ('cpeMatchString', models.TextField(blank=True)),
                ('cpe23Uri', models.TextField(blank=True)),
                ('versionEndIncluding', models.TextField(blank=True)),
            ],
        ),

        migrations.CreateModel(
            name='CpeToCve',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('cpe', models.ForeignKey(to='orm.cpetable',on_delete=models.CASCADE,)),
                ('cve', models.ForeignKey(to='orm.cve',on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='CpeFilter',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('key_prime', models.CharField(max_length=50)),
                ('key_sub', models.CharField(max_length=50)),
                ('status', models.IntegerField(default=CpeFilter.UNDECIDED)),
                ('automatic', models.BooleanField(default=False)),
            ],
#            unique_together=set([('key_prime', 'key_sub')]),
        ),


        migrations.CreateModel(
            name='PublishPending',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('cve', models.ForeignKey(default=None, to='orm.cve',blank=True,null=True,on_delete=models.CASCADE,)),
                ('vulnerability', models.ForeignKey(default=None, to='orm.vulnerability',blank=True,null=True,on_delete=models.CASCADE,)),
                ('investigation', models.ForeignKey(default=None, to='orm.investigation',blank=True,null=True,on_delete=models.CASCADE,)),
                ('date', models.DateField(null=True, blank=True)),
                ('note', models.TextField()),
            ],
        ),


        migrations.CreateModel(
            name='Notify',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('category', models.CharField(max_length=50)),
                ('description', models.TextField()),
                ('url', models.TextField()),
                ('priority', models.IntegerField(default=0)),
                ('author', models.TextField()),
##                ('srt_updated', models.DateTimeField(auto_now=True)),
##                ('srt_created', models.DateTimeField(auto_now_add=True)),
            ],
        ),

        migrations.CreateModel(
            name='NotifyAccess',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('notify', models.ForeignKey(default=None, to='orm.notify',blank=True,null=True,on_delete=models.CASCADE,)),
                ('user', models.ForeignKey(default=None, to='users.srtuser',blank=True,null=True,on_delete=models.CASCADE,)),
            ],
        ),

        migrations.CreateModel(
            name='NotifyCategories',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('category', models.CharField(max_length=50)),
            ],
        ),

    ]