Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,4 @@ coverage.xml
/.env

# post run dev
integrations/malware_tools_analyzers/clamav/sigs
integrations/malware_tools_analyzers/clamav/sigsintel_owl/settings/local.py
6 changes: 3 additions & 3 deletions api_app/serializers/elastic.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@


supported_plugin_name_list = [
AnalyzerConfig.plugin_name.lower(),
ConnectorConfig.plugin_name.lower(),
PivotConfig.plugin_name.lower(),
"analyzer",
"connector",
"pivot",
]


Expand Down
1 change: 1 addition & 0 deletions api_app/serializers/job.py
Original file line number Diff line number Diff line change
Expand Up @@ -598,6 +598,7 @@ class Meta:
"received_request_time",
"finished_analysis_time",
"process_time",
"tlp",
"warnings",
"errors",
)
Expand Down
30 changes: 30 additions & 0 deletions docker/infrastructure.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
services:
postgres:
image: postgres:14-alpine
container_name: intelowl_postgres
restart: unless-stopped
env_file:
- env_file_postgres
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U user"]
interval: 5s
timeout: 5s
retries: 5

redis:
image: redis:7-alpine
container_name: intelowl_redis
restart: unless-stopped
volumes:
- redis_data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 5s
timeout: 3s
retries: 5

volumes:
postgres_data:
redis_data:
10 changes: 8 additions & 2 deletions frontend/src/components/common/TLPTag.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,17 @@ import { TlpChoices } from "../../constants/advancedSettingsConst";

export function TLPTag(props) {
const { value, ...rest } = props;

// Handle case where value is undefined/null
if (!value) {
return <Badge color="secondary">No TLP</Badge>;
}

const badgeId = `tlptag-badge__${value}`;
const color = TLPColors?.[value] || "#dfe1e2";
const tooltipText = TLPDescriptions?.[value] || "invalid";

return value ? (
return (
<Badge
id={badgeId}
color={null}
Expand All @@ -27,7 +33,7 @@ export function TLPTag(props) {
{tooltipText}
</UncontrolledTooltip>
</Badge>
) : null;
);
}

TLPTag.propTypes = {
Expand Down
5 changes: 2 additions & 3 deletions frontend/src/components/jobs/result/JobInfoCard.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ export function JobInfoCard({ job, relatedInvestigationNumber }) {
const [isOpenJobInfoCard, setIsOpenJobInfoCard] = React.useState(false);
const [isOpenJobWarnings, setIsOpenJobWarnings] = React.useState(false);
const [isOpenJobErrors, setIsOpenJobErrors] = React.useState(false);


const investigationTimeRange = 30;
const endDateRelatedInvestigation = new Date();
Expand All @@ -43,7 +44,6 @@ export function JobInfoCard({ job, relatedInvestigationNumber }) {
startDateRelatedInvestigation.setDate(
startDateRelatedInvestigation.getDate() - investigationTimeRange,
);

return (
<div id="JobInfoCardSection">
<ContentSection className="mb-0 bg-darker">
Expand Down Expand Up @@ -195,14 +195,13 @@ export function JobInfoCard({ job, relatedInvestigationNumber }) {
<PlaybookTag
key={job.playbook_to_execute}
playbook={job.playbook_to_execute}
className="mr-2"
/>,
],
[
"Tags",
job.tags.length ? (
job.tags.map((tag) => (
<JobTag key={tag.label} tag={tag} className="me-2" />
<JobTag key={tag.label} tag={tag} />
))
) : (
<small className="fst-italic text-gray">None</small>
Expand Down
13 changes: 13 additions & 0 deletions intel_owl/settings/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,16 @@
from .security import * # lgtm [py/polluting-import]
from .storage import * # lgtm [py/polluting-import]
from .websocket import * # lgtm [py/polluting-import]

# Load local development settings if available (overrides above)
try:
from .local import * # lgtm [py/polluting-import]
except ImportError:
pass


# Load local development settings if available (overrides above)
try:
from .local import * # lgtm [py/polluting-import]
except ImportError:
pass
Loading