Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Splunk Search service #310

Open
wants to merge 693 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
693 commits
Select commit Hold shift + click to select a range
a6c4548
Initial code for ThreatExchange integration.
mgoffin Feb 24, 2016
b636516
Add basic importing for Threat Descriptors.
mgoffin Feb 24, 2016
f78ad81
Infinite scrolling.
mgoffin Feb 25, 2016
d9111fa
TAXII: Improve parsing of STIX CybOX objects
Feb 25, 2016
147fd6b
TAXII: Improve display of TAXII Agent results
Oct 27, 2015
b20d74d
TAXII: Add support for username & password auth
Feb 2, 2016
f81c818
TAXII: Improved error handling
Feb 5, 2016
d7fd527
STIX CompositeIndicatorExpression support & parser fixes
Feb 12, 2016
6471eea
Bug fixes for description fields and email attachments
Feb 12, 2016
fe7d325
Make CybOX DomainName and URI of type Domain Name equivalent
Feb 12, 2016
f42fc9c
TAXII: Optional package encryption & improved help text
Dec 11, 2015
f421634
TAXII: Improve feed decryption & TAXII version support
Feb 11, 2016
b36d7bc
TAXII: Include Samples with no binary in TAXIISendForm
Jan 22, 2016
82180a1
TAXII: Allow user to specify begin/end timestamps when polling
Feb 11, 2016
5aa7c8e
Add ability to export to ThreatExchange.
mgoffin Feb 25, 2016
7a8a37d
Add querying for and importing Malware samples.
mgoffin Feb 25, 2016
42735ad
Add a little more documentation.
mgoffin Feb 25, 2016
66d67fc
Merge pull request #198 from crits/tx
mgoffin Feb 25, 2016
3f288a8
TAXII: TAXII Poll Import Preview
Feb 26, 2016
eb9e711
TAXII: Handle unique polls with identical TAXII Message IDs
Feb 26, 2016
5daee09
Fix import alert.
mgoffin Feb 26, 2016
314f7f9
Add more options to ThreatExchange service.
mgoffin Feb 29, 2016
243dce3
Fix how query errors show and fix requests options.
mgoffin Feb 29, 2016
44c078d
I was silly. Use the CRITs globally defined proxy.
mgoffin Feb 29, 2016
142348c
Add links to TX developer documentation.
mgoffin Feb 29, 2016
264de9e
Add several little features.
mgoffin Feb 29, 2016
5357e9c
TAXII: Fix CybOX\STIX creation functionality
Mar 1, 2016
3f6482a
Merge branch 'master' of https://github.com/crits/crits_services into…
Mar 1, 2016
b3e067b
Merge pull request #199 from brlogan/taxii_updates
mgoffin Mar 1, 2016
15c3cd6
Update requirements file for taxii service.
mgoffin Mar 1, 2016
f183cbb
Replace deprecated HttpResponse "mimetype" with "content_type"
Mar 1, 2016
b42d9df
Merge pull request #200 from brlogan/taxii_updates
mgoffin Mar 1, 2016
51daf0f
TAXII: Fix case where no poll begin datetime is provided
Mar 2, 2016
222f461
Merge pull request #201 from brlogan/taxii_updates
mgoffin Mar 2, 2016
2416788
TAXII: Allow preview with no recipients selected
Mar 2, 2016
ec5d9ac
TAXII: Provide help message if no servers configured
Mar 2, 2016
3b0d57e
TAXII: Add support for HTTP connections through a proxy
Mar 3, 2016
9243b5a
Merge pull request #204 from brlogan/taxii_updates
mgoffin Mar 3, 2016
0417317
Remove a duplicated line
apolkosnik-old Mar 4, 2016
06fbe52
Merge pull request #205 from frbapolkosnik/patch-21
mgoffin Mar 4, 2016
e0b0c8c
Add Related searches to ThreatExchange.
mgoffin Mar 11, 2016
2ab1168
Merge branch 'master' of github.com:/crits/crits_services
mgoffin Mar 11, 2016
5d87fc4
Properly show when no results are found.
mgoffin Mar 14, 2016
5cd32b8
Set default values for exporting to TX and add note.
mgoffin Mar 17, 2016
1529596
Adding basic http_proxy settings for passivetotal
thelok Mar 21, 2016
98bf793
Merge pull request #206 from thelok/passivetotal_proxy
mgoffin Mar 21, 2016
8e043cf
Supposed to be http_proxy instead of http_context
thelok Mar 21, 2016
865adcd
Merge pull request #207 from thelok/passivetotal_fix_http_context
mgoffin Mar 21, 2016
203f786
Added headers to the calls from CRITs
9b Mar 21, 2016
47bf684
Merge pull request #208 from passivetotal/master
mgoffin Mar 22, 2016
8aed07e
Fix Descriptor/MalwareAnalyses imports and Status query field.
mgoffin Mar 22, 2016
4506ab4
Merge branch 'master' of github.com:/crits/crits_services
mgoffin Mar 22, 2016
46daebd
Make the bootstrap more proxy friendly
apolkosnik-old Mar 22, 2016
78b487d
Merge pull request #210 from frbapolkosnik/patch-22
mgoffin Mar 22, 2016
02e7c91
Remove submitter count as it was removed from TX.
mgoffin Mar 22, 2016
de3e270
Merge branch 'master' of github.com:/crits/crits_services
mgoffin Mar 22, 2016
bc9808b
User friendly-er interface for doing queries. Made some of the forms …
thelok Mar 22, 2016
d1cbb4a
Naming.
thelok Mar 22, 2016
86c18a3
Merge pull request #211 from thelok/threatexchange_user_friendlier
mgoffin Mar 23, 2016
f07585d
Add ability to manage privacy groups for ThreatExchange.
mgoffin Mar 29, 2016
9e4bd96
TAXII: When migrating only delete fields that exist
Apr 3, 2016
94d73bc
Merge pull request #214 from brlogan/patch-1
mgoffin Apr 3, 2016
4d614fd
Use vocabulary for Object types. The old object types were still ther…
robertsjw Apr 4, 2016
6226235
Fix inconsistent use of tabs and spaces in indentation
apolkosnik-old Apr 4, 2016
1be9323
Merge pull request #215 from robertsjw/fix_anb_service
mgoffin Apr 4, 2016
5a18b44
Fix inconsistent use of tabs and spaces in indentation
apolkosnik-old Apr 4, 2016
8b5677e
Merge pull request #216 from frbapolkosnik/tab_fixes
mgoffin Apr 4, 2016
c028316
Fix the IPTypes
apolkosnik-old Apr 11, 2016
5e816eb
Merge pull request #217 from frbapolkosnik/patch-23
mgoffin Apr 11, 2016
6cb3881
Fix RHEL/Centos version parsing
apolkosnik-old Apr 12, 2016
605df71
Fix RHEL/Centos version parsing
apolkosnik-old Apr 12, 2016
3af1d22
Merge pull request #218 from frbapolkosnik/patch-24
mgoffin Apr 12, 2016
6022ba7
Merge pull request #219 from frbapolkosnik/patch-25
mgoffin Apr 12, 2016
51ea8fd
FireEye service to submit samples from CRITs to FireEye MAS appliance…
Apr 27, 2016
dfa9d61
Merge pull request #221 from echin20/master
mgoffin Apr 27, 2016
16fa8ee
Fixes for relationship types for services
robertsjw May 6, 2016
663c3db
Fix SEPLQ
robertsjw May 6, 2016
14a4b70
Fix UPX Service
robertsjw May 6, 2016
3ed3355
Merge pull request #222 from robertsjw/master
mgoffin May 6, 2016
e773fca
add related_type in handle_file()
apolkosnik-old May 6, 2016
ecabe1e
add related_type in handle_file()
apolkosnik-old May 6, 2016
ed0286f
obj instead of self.obj was referenced.
apolkosnik-old May 6, 2016
7daae9d
Merge pull request #223 from frbapolkosnik/patch-26
mgoffin May 6, 2016
6829ccd
Add task submission options
Jun 1, 2016
eb4c3e5
Use correct type
Jun 1, 2016
1aa1e43
Debugging
Jun 3, 2016
29882ee
Fix runtime options binding
Jun 3, 2016
849b787
added kevthehermit ratdecoder as crtis service
Jun 3, 2016
377c6e8
Use a valid raw data type in pdf2txt service
Jun 3, 2016
c61e3f8
Merge pull request #230 from seanthegeek/patch-1
mgoffin Jun 3, 2016
2ec9293
VirusTotal Download Service - Initial
Jun 4, 2016
d70dbba
Merge pull request #227 from brlogan/VT_Download
mgoffin Jun 4, 2016
395d5f6
Fix custom options
Jun 5, 2016
b49735a
Fix machine selection
Jun 5, 2016
91bb48f
Merge pull request #226 from seanthegeek/master
mgoffin Jun 5, 2016
f1b45e6
FE MAS Service Update :
Jun 6, 2016
360f958
TAXII: Initialize config key taxii_servers as dict
Jun 11, 2016
a92c40f
Merge pull request #232 from brlogan/taxii_initialize_fix
mgoffin Jun 11, 2016
8deeed4
Add bucket_list tagging
apolkosnik-old Jun 17, 2016
b968a40
Merge pull request #233 from frbapolkosnik/patch-28
mgoffin Jun 17, 2016
2d3e3dd
changed to MIT license
Jun 20, 2016
e04a805
Merge pull request #229 from nosferatu87/master
mgoffin Jun 20, 2016
c5aaa2a
Set the hardcoded paths
apolkosnik-old Jun 20, 2016
8f2cf88
Remove the runtime form binding and add the the config
apolkosnik-old Jun 20, 2016
5a031cd
Merge pull request #235 from frbapolkosnik/patch-29
mgoffin Jun 20, 2016
4b57004
Merge pull request #231 from cvdsouza/fireeye_service_update
mgoffin Jun 24, 2016
9e89caa
Password should not be seen
apolkosnik-old Jun 24, 2016
68129ed
Merge pull request #238 from frbapolkosnik/patch-29
mgoffin Jun 24, 2016
10664e5
Few little fixes
apolkosnik-old Jun 24, 2016
6d3f0eb
D'oh!
apolkosnik-old Jun 24, 2016
27962d8
Merge pull request #239 from frbapolkosnik/patch-30
mgoffin Jun 24, 2016
602c089
Backwards compatibility
apolkosnik-old Jun 24, 2016
243d2c9
Merge pull request #240 from frbapolkosnik/patch-31
mgoffin Jun 24, 2016
c5629d2
Put the version number of pefile in debug output.
apolkosnik-old Jun 27, 2016
d8ca339
Merge pull request #241 from frbapolkosnik/patch-32
mgoffin Jun 27, 2016
f825d4a
impfuzzy_service
apolkosnik-old Jul 1, 2016
665d43c
forms.py
apolkosnik-old Jul 1, 2016
2b5028d
DEPS
apolkosnik-old Jul 1, 2016
099d3de
README
apolkosnik-old Jul 1, 2016
badd564
requirements
apolkosnik-old Jul 1, 2016
5d0bb6e
bootstrap
apolkosnik-old Jul 1, 2016
0d8f1be
LICENSE
apolkosnik-old Jul 1, 2016
68e04e1
Check for filedata
apolkosnik-old Jul 6, 2016
3228052
Fix an omission in ratdecoder service
apolkosnik-old Jul 6, 2016
9b65d1a
Merge pull request #243 from frbapolkosnik/patch-34
mgoffin Jul 6, 2016
fff77b5
Adjust handle_eml arguments to match core code updates
Jul 12, 2016
9de6ea9
Merge pull request #244 from brlogan/email_eml_change
mgoffin Jul 13, 2016
5f02d87
Handle when pyimpfuzzy throws an exception...
apolkosnik-old Jul 13, 2016
dd476c4
Adding tags for uploading to ThreatExchange.
mgoffin Jul 15, 2016
40fd8c0
TAXII: Update STIX Import to utilize STIX preview
Jul 19, 2016
5a880e4
TAXII: Enable download of saved STIX data
Jul 19, 2016
83e3a8b
TAXII: Update for compatability with libtaxii 1.1.109
Jul 19, 2016
e979935
TAXII: Improve error handling for wrong TAXII version
Jul 19, 2016
66805e9
TAXII: Extensive improvements to STIX parser
Jul 19, 2016
338130f
TAXII: Clarify configuration options with example
Jul 19, 2016
300b1d2
TAXII: Improve CRITs-to-CRITs sharing
Jul 19, 2016
cdcce28
Merge pull request #246 from brlogan/taxii_updates
mgoffin Jul 19, 2016
87b1036
Split the 'sender', 'reply_to', 'from_address' fields into the more s…
thelok Jul 20, 2016
a621f42
Reverse LHS and RHS to be consistent
thelok Jul 20, 2016
d0219da
Merge pull request #247 from thelok/taxii_service_split_address_email…
mgoffin Jul 20, 2016
f3f9fdf
Attempt best effort hash usage. Sometimes the hashes aren't correct a…
thelok Jul 20, 2016
4218d29
Merge pull request #248 from thelok/taxii_service_sample_names_and_ha…
mgoffin Jul 20, 2016
c5869c0
TAXII: Fix "proxy" local variable reference error
Jul 27, 2016
70fd85f
Merge pull request #250 from brlogan/proxy_set_bug
mgoffin Jul 27, 2016
cebd23d
TAXII: Update to STIX 1.2.0.0 & CybOX 2.1.0.12
Jul 28, 2016
2257ea9
TAXII: Allow unauthenticated communication
Jul 28, 2016
437885f
TAXII: Clarify some field names
Jul 28, 2016
563976a
TAXII: Improve display of polling error messages
Jul 28, 2016
d5dda36
Merge pull request #251 from brlogan/taxii_improvements
mgoffin Jul 28, 2016
e767b22
Merge branch 'master' of github.com:/crits/crits_services
mgoffin Jul 28, 2016
6e6024f
Align Threat Type with the new value in the database.
mgoffin Jul 28, 2016
2dc03a9
Merge pull request #252 from crits/fix_ta_types
mgoffin Jul 30, 2016
ef64e88
Added features for Domain, IPs, and Indicators
kuminin Aug 2, 2016
f401d57
Update description for __init__.py
kuminin Aug 2, 2016
bc7fdb4
Forgot to import ServiceConfigError
apolkosnik-old Aug 3, 2016
45abf74
Fixed a typo
apolkosnik-old Aug 3, 2016
cb15fdd
Remove test for impfuzzy attribute
apolkosnik-old Aug 3, 2016
7158610
TAXII: Include UTC Timestamp in STIX Preview filename
Aug 4, 2016
7b0a698
TAXII: Provide dropdown of Sources in Feed config
Aug 4, 2016
424e21b
TAXII: Include Indicator confidence/impact in STIX output
Aug 4, 2016
dbb24a9
TAXII: Configure Default Indicator Confidence/Impact by Feed
Aug 4, 2016
8de8d4b
Update parameter name in standards_import script
Aug 4, 2016
640ab80
Updated run() for impfuzzy service
apolkosnik-old Aug 4, 2016
6f2302a
Merge pull request #242 from frbapolkosnik/patch-33
mgoffin Aug 4, 2016
748af22
Merge pull request #253 from kuminin/master
mgoffin Aug 4, 2016
23c3662
Remove dead defs
apolkosnik-old Aug 4, 2016
a307d04
Merge pull request #259 from frbapolkosnik/master
mgoffin Aug 4, 2016
2b3a979
Added valid_for static function to raise error if an Indicator is not…
kuminin Aug 4, 2016
f5955d5
Fixed related_type for processing pcap
kuminin Aug 4, 2016
f4f03b4
Removed Service Config Error in run function
kuminin Aug 4, 2016
6310c34
Merge pull request #260 from kuminin/master
mgoffin Aug 4, 2016
00e469c
Merge pull request #256 from brlogan/taxii_filename_ciconfig
mgoffin Aug 5, 2016
bf04944
remove unnecessary logging
apolkosnik-old Aug 5, 2016
9ef2377
Merge pull request #265 from frbapolkosnik/patch-35
mgoffin Aug 5, 2016
0047a05
Fix pehash for 64bit binaries.
wxsBSD Aug 20, 2016
600dd57
Merge pull request #269 from crits/fix_peinfo_64bit
mgoffin Aug 20, 2016
e4646b6
Results fixup
apolkosnik-old Aug 25, 2016
1f91b24
analysis results update
apolkosnik-old Aug 25, 2016
b4a1d63
bump up the version
apolkosnik-old Aug 25, 2016
39d3f15
bump up the version
apolkosnik-old Aug 25, 2016
c4a6852
Merge pull request #270 from frbapolkosnik/patch-36
mgoffin Aug 25, 2016
1d09d35
cosmetic fixes
apolkosnik-old Aug 26, 2016
a6cebf7
Merge pull request #271 from frbapolkosnik/patch-37
mgoffin Aug 26, 2016
80177ca
TAXII: Fix logger handler errors
Aug 27, 2016
028ddbc
TAXII: Fix population of Feeds form fields
Aug 27, 2016
b1e0be4
Merge pull request #272 from brlogan/feeds_form_fix
mgoffin Aug 27, 2016
ff77d31
TAXII: Allow some older STIX Content Binding IDs
Aug 30, 2016
9c8bad7
TAXII: Use default confidence/impact for any new CRITs Indicator
Aug 30, 2016
e6251df
Merge pull request #273 from brlogan/default_ci
mgoffin Aug 30, 2016
deb84c0
Fix dataminer not linking to Samples.
mgoffin Aug 31, 2016
9e4ffa0
Office_Meta: Encode property values with UTF-8
Sep 22, 2016
802afcd
Update bootstrap
mgoffin Sep 26, 2016
0a8f683
Merge pull request #276 from brlogan/patch-1
mgoffin Sep 26, 2016
10cc3db
fix for issue #130 - added a try/except block
Sep 27, 2016
28fecd5
Update to 2016.
mgoffin Sep 29, 2016
ad640f5
Merge pull request #279 from crits/go_2016
mgoffin Sep 29, 2016
2fd54d0
VT: Differentiate between error and no match found
Oct 1, 2016
22edd0d
Merge pull request #280 from brlogan/patch-1
mgoffin Oct 1, 2016
004a3eb
Merge pull request #281 from lqaz/master
mgoffin Oct 1, 2016
46e9063
Adding the ability to force a submission to the MAS.
Oct 4, 2016
343eed1
Merge pull request #282 from echin20/master
mgoffin Oct 4, 2016
3e851ac
turn username kwarg into arg, seems to be required now
Oct 5, 2016
d5765fd
Merge pull request #283 from lqaz/master
mgoffin Oct 5, 2016
7b6bd54
update requirements for pyimpfuzzy
apolkosnik Dec 6, 2016
9261289
VT Download: Update README with Private API option
Jan 7, 2017
ab0f797
Merge pull request #291 from brlogan/patch-2
mgoffin Jan 7, 2017
6c0a067
inital commit of bit9 service
Jan 14, 2017
980897a
Edits
Jan 15, 2017
9c383f6
Initial commit of BIT9 service
Jan 15, 2017
33f2ca8
Initial commit of BIT9 service
Jan 15, 2017
51aeb04
Initial commit of BIT9 service
Jan 15, 2017
3713df9
Merge pull request #292 from lancemueller/master
mgoffin Jan 15, 2017
ec9774e
Initial commit of XForce Exchange Service
Jan 15, 2017
1216cf1
Adding Pretty Things service.
mgoffin Jan 19, 2017
f9b5308
Adding initial graph to main Pretty Things page as a link.
mgoffin Jan 19, 2017
572a0f8
Add some comments and make heatmap look better.
mgoffin Jan 23, 2017
0ae0bf8
Fix box coloring order.
mgoffin Jan 23, 2017
1400af9
chmod impfuzzy_service/bootstrap +x
moshekaplan Jan 30, 2017
1901f8c
Merge pull request #294 from moshekaplan/master
mgoffin Jan 30, 2017
c1ac4d8
Merge pull request #293 from lancemueller/master
mgoffin Feb 7, 2017
04b25a8
Include Campaigns in heatmap which don't have a location.
mgoffin Feb 8, 2017
c41c65f
Create CONTRIBUTING.md
moshekaplan Feb 9, 2017
b504051
Merge pull request #299 from moshekaplan/patch-1
mgoffin Feb 9, 2017
e0fd8e7
Simplified lsb_release logic
Feb 18, 2017
4ffd354
Merge pull request #300 from zdiff/master
mgoffin Mar 2, 2017
59b910e
Merge pull request #290 from apolkosnik/patch-4
mgoffin Mar 2, 2017
f9e5b03
Remove ThreatType from export.
mgoffin Mar 15, 2017
97812c0
Update relationships_service_all_tab.html
TheDr1ver Mar 30, 2017
20211e1
Update handlers.py
TheDr1ver Mar 30, 2017
e0d7516
Merge pull request #1 from crits/master
TheDr1ver Mar 30, 2017
9c24137
Initial commit
TheDr1ver Apr 7, 2017
215a185
Removing API References
TheDr1ver Apr 10, 2017
c027ec5
Removing API References
TheDr1ver Apr 10, 2017
c731656
Update TLO types
TheDr1ver Apr 10, 2017
359b993
Fix adding indicators from Campaigns
TheDr1ver Apr 11, 2017
4422387
Process emails and grab URIs
TheDr1ver Apr 14, 2017
0d3eb52
Add URL extraction option
TheDr1ver Apr 17, 2017
f613846
initial commit for crits-master
TheDr1ver Apr 21, 2017
c7f0fc2
Merge branch 'crits-master'
TheDr1ver Apr 21, 2017
2ee9cee
Add Splunk Search Service
TheDr1ver Apr 21, 2017
044d48b
Update __init__.py
TheDr1ver Apr 21, 2017
c86f803
remove misp_service
TheDr1ver Apr 21, 2017
a1f7510
Remove YarGen service
TheDr1ver Apr 21, 2017
c9fa5a8
Easier config
TheDr1ver Apr 24, 2017
f651c79
README
TheDr1ver Apr 24, 2017
003d416
fix JSON in README
TheDr1ver Apr 24, 2017
78a9bd3
fix searches.json
TheDr1ver Apr 24, 2017
ea351b7
updates
TheDr1ver Apr 24, 2017
cc30788
Update __init__.py
TheDr1ver Apr 27, 2017
d5cd3bd
Typo
TheDr1ver Apr 27, 2017
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
5 changes: 5 additions & 0 deletions splunk_search_service/DEPENDENCIES
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
The Splunk Search service requires the requests library [1] in order to function.

[1] http://docs.python-requests.org/

sudo pip install requests
23 changes: 23 additions & 0 deletions splunk_search_service/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
The MIT License (MIT)

Copyright (c) 2016, The MITRE Corporation. All rights reserved.

Approved for Public Release; Distribution Unlimited 14-1511

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
61 changes: 61 additions & 0 deletions splunk_search_service/README
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
The Splunk Search service works against Samples, Emails, Indicators, and Raw Data.
It will grab all metadata of the top-level object (TLO) and use that data to run
predetermined Splunk searches found in searches.json.

Additionally, it has the option to parse out the contents of the TLO, and use
any domains, IPs, email addresses, hashes, or URLs it may find in additional
Splunk searches.

There is also an option to exclude certain filetypes matching a given regex
if the service is launched based on a triage, rather than being run manually.

For example, if an email is uploaded that contains multiple JPEG attachments
(for which a Splunk search of their hash may not be necessary in most cases),
when the JPEGs are added to CRITs as Sample TLOs, and Splunk is set to run on
triage, the default regex will tell the service not to execute those Splunk
searches. However, if it is determined later that running those searches for a
particular JPEG may be of some use, manually launching the service will run
the searches.

### Configuring ###

To configure your custom Splunk searches, modify searches.json with valid JSON,
maintaining the predetermined structure. TLOs (including emails, samples, and
indicators) should be referenced with their TLO object attributes. Lists of
potential indicators (domains, IPs, urls, email address, and hashes) should be
passed with a set of brackets.

Additionally, each search name should have a unique value, otherwise it may not
display properly.

Lastly, ensure any double-quotes are escaped with a backslash.

For example, if you wished to run a search for a sample's MD5 when the service
is run, you could make the list of 'samples' searches look like this
(substituting your own indicies and field names), where {md5} will be replaced
with the TLO's md5 attribute:

"samples": [
{"name":"MD5 Search for {md5}",
"search":"index=files md5=\"{md5}\" | stats values(dest_ip) AS dest_ip values(uid) As uid values(fuid) AS fuid count by src_ip"
}
],

Likewise, for a search that would run against every domain in a list of domains
extracted from the TLO's data, you could make the list of 'domains' searches
look like this, where {} will be replaced with the domain:

"domains": [
{"name":"HTTP search for {}",
"search":"index=http domain=\"{}\" | stats values(src_ip) AS src_ip values(url) AS url count by index"
},
{"name":"SMTP search for {}",
"search":"index=smtp sender_domain=\"*{}\" | stats values(src_ip) AS src_ip values(src_user) AS src_user count by subject"
}
],

Please see searches_example.json for additional examples.

You may use test_searches.py with your configurations manually inputted to test
your Splunk searches and their results before committing them to your CRITs
production instance.
Loading