Skip to content
Open
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
12 changes: 6 additions & 6 deletions public/pages/Correlations/containers/CorrelationsTableView.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -164,22 +164,22 @@ export class CorrelationsTableView extends React.Component<
.map((item) => item.id.toLowerCase());

return tableData.filter((row) => {
const logTypeMatch = row.logTypes.some((logType) => selectedLogTypes.includes(logType));
const logTypeMatch = row.logTypes?.some((logType) => selectedLogTypes.includes(logType));

const severityMatch = row.alertSeverity.some((severity) =>
const severityMatch = row.alertSeverity?.some((severity) =>
selectedSeverities.includes(alertSeverityMap[severity])
);

const searchLower = searchTerm.toLowerCase();
const searchMatch =
searchTerm === '' ||
row.correlationRule?.toLowerCase().includes(searchLower) ||
row.logTypes.some((type) => type.toLowerCase().includes(searchLower)) ||
row.alertSeverity.some((severity) =>
row.logTypes?.some((type) => type.toLowerCase().includes(searchLower)) ||
row.alertSeverity?.some((severity) =>
alertSeverityMap[severity].toLowerCase().includes(searchLower)
) ||
row.findingsSeverity.some((severity) => severity.toLowerCase().includes(searchLower)) ||
row.resources.some((resource) => resource.toLowerCase().includes(searchLower));
row.findingsSeverity?.some((severity) => severity.toLowerCase().includes(searchLower)) ||
row.resources?.some((resource) => resource.toLowerCase().includes(searchLower));
return logTypeMatch && severityMatch && searchMatch;
});
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,17 @@ const columns: EuiBasicTableColumn<ThreatIntelFinding>[] = [
name: 'Threat intel source',
field: 'ioc_feed_ids',
render: (ioc_feed_ids: ThreatIntelFinding['ioc_feed_ids']) => {
return (
<span>{ioc_feed_ids.map((ids) => ids.feed_name).join(', ') || DEFAULT_EMPTY_DATA}</span>
);
// Add defensive checks for undefined/null array and nested properties
if (!ioc_feed_ids || !Array.isArray(ioc_feed_ids) || ioc_feed_ids.length === 0) {
return <span>{DEFAULT_EMPTY_DATA}</span>;
}

const feedNames = ioc_feed_ids
.map((ids) => ids?.feed_name)
.filter((name) => name) // Remove undefined/null values
.join(', ');

return <span>{feedNames || DEFAULT_EMPTY_DATA}</span>;
},
},
];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -262,13 +262,37 @@ exports[`<RuleContentYamlViewer /> spec renders the component 1`] = `
>
-
</span>

https
<span
class="token string"
class="token punctuation"
>
'https://securelist.com/operation-tunnelsnake-and-moriya-rootkit/101831'
:
</span>

//securelist.com/operation
<span
class="token punctuation"
>
-
</span>
tunnelsnake
<span
class="token punctuation"
>
-
</span>
and
<span
class="token punctuation"
>
-
</span>
moriya
<span
class="token punctuation"
>
-
</span>
rootkit/101831

</span>
<span
Expand Down
Loading