diff --git a/security/q-feeds-connector/pkg-descr b/security/q-feeds-connector/pkg-descr index ca7e38c89..02f302bdf 100644 --- a/security/q-feeds-connector/pkg-descr +++ b/security/q-feeds-connector/pkg-descr @@ -2,9 +2,10 @@ Connector for Q-Feeds threat intel Plugin Changelog ================ -1.3 +1.3 * Events: added source and destination port +* Events: added quick Threat Lookup button to dest-ip and source-ip fields * Widget: Added license info 1.2 diff --git a/security/q-feeds-connector/src/opnsense/mvc/app/views/OPNsense/QFeeds/index.volt b/security/q-feeds-connector/src/opnsense/mvc/app/views/OPNsense/QFeeds/index.volt index 0d350f8cd..c719d9cb4 100644 --- a/security/q-feeds-connector/src/opnsense/mvc/app/views/OPNsense/QFeeds/index.volt +++ b/security/q-feeds-connector/src/opnsense/mvc/app/views/OPNsense/QFeeds/index.volt @@ -56,7 +56,42 @@ POSSIBILITY OF SUCH DAMAGE. } else if (e.target.id === 'events_tab') { if (!$("#grid-events").hasClass('tabulator')) { $("#grid-events").UIBootgrid({ - 'search': '/api/q_feeds/settings/search_events/' + 'search': '/api/q_feeds/settings/search_events/', + 'options': { + formatters: { + 'source': function(column, row) { + if (!row.source) return ''; + return `
+ ${row.source} + +
`; + }, + 'destination': function(column, row) { + if (!row.destination) return ''; + return `
+ ${row.destination} + +
`; + } + } + } + }); + + // Add click handler for threat lookup button + $(document).on('click', '.threat-lookup-btn', function() { + const ip = $(this).data('ip'); + if (ip) { + const tipUrl = 'https://tip.qfeeds.com/views/threat-lookup/index.php?q=' + encodeURIComponent(ip); + window.open(tipUrl, '_blank'); + } }); } else { $("#grid-events").bootgrid("reload"); @@ -109,9 +144,9 @@ POSSIBILITY OF SUCH DAMAGE. {{ lang._('Timestamp') }} {{ lang._('Interface') }} {{ lang._('Direction') }} - {{ lang._('Source') }} + {{ lang._('Source') }} {{ lang._('Source Port') }} - {{ lang._('Destination') }} + {{ lang._('Destination') }} {{ lang._('Destination Port') }}