blob: 298cd2130f6d99decb8d6c54fa640e0d787da0e8 (
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
|
###############################################################################
# #
# Peekaboo Extended Email Attachment Behavior Observation Owl #
# #
# exceptions.py #
###############################################################################
# #
# Copyright (C) 2016-2019 science + computing ag #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation, either version 3 of the License, or (at #
# your option) any later version. #
# #
# This program is distributed in the hope that it will be useful, but #
# WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU #
# General Public License for more details. #
# #
# You should have received a copy of the GNU General Public License #
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
class PeekabooException(Exception):
""" General exception class for all custom exception classes of Peekaboo. """
pass
class PeekabooConfigException(PeekabooException):
pass
class PeekabooDatabaseError(PeekabooException):
pass
class PeekabooRulesetException(PeekabooException):
pass
class PeekabooRulesetConfigError(PeekabooException):
""" Used to signal that a rule is unhappy with its configuration. """
pass
class PeekabooAnalysisDeferred(PeekabooRulesetException):
""" Analysis has been deferred to a later point in time.
An exception signifying that analysis has been deferred to a later point in
time. Ruleset processing will be aborted (without error). Useful if we're
waiting for someone to finish their analysis and defer our interpretation
of their findings until they become available, most notably the Cuckoo
report.
Not an exception in the traditional sense since it does not indicate an
error but actually influences control flow instead. Somewhat questionable
in that regard.
The raiser becomes owner of the sample and is responsible to appropriately
resubmit it into Peekaboo once it wants processing to continue. That should
take into account that the ruleset will be rerun from the very beginning.
"""
pass
class CuckooSubmitFailedException(PeekabooException):
""" An exception raised if submitting a job to Cuckoo fails. """
pass
|