mirror of https://github.com/CIRCL/lookyloo
fix: Avoid exceptions when the submission is a file
parent
b020184b1f
commit
eab4b17070
|
@ -60,6 +60,8 @@ class FOX():
|
||||||
'''
|
'''
|
||||||
if not self.available:
|
if not self.available:
|
||||||
raise ConfigError('FOX not available, probably no API key')
|
raise ConfigError('FOX not available, probably no API key')
|
||||||
|
if url.startswith('file'):
|
||||||
|
return {'error': 'FOX does not support files.'}
|
||||||
|
|
||||||
if self.autosubmit:
|
if self.autosubmit:
|
||||||
# submit is allowed and we either force it, or it's just allowed
|
# submit is allowed and we either force it, or it's just allowed
|
||||||
|
|
|
@ -166,15 +166,19 @@ class MISP():
|
||||||
directly to a MISP instance and it will create an event.'''
|
directly to a MISP instance and it will create an event.'''
|
||||||
public_domain = get_config('generic', 'public_domain')
|
public_domain = get_config('generic', 'public_domain')
|
||||||
event = MISPEvent()
|
event = MISPEvent()
|
||||||
event.info = f'Lookyloo Capture ({cache.url})'
|
if cache.url.startswith('file'):
|
||||||
|
filename = cache.url.rsplit('/', 1)[-1]
|
||||||
|
event.info = f'Lookyloo Capture ({filename})'
|
||||||
|
else:
|
||||||
|
event.info = f'Lookyloo Capture ({cache.url})'
|
||||||
|
initial_url = URLObject(cache.url)
|
||||||
|
initial_url.comment = 'Submitted URL'
|
||||||
|
self.__misp_add_ips_to_URLObject(initial_url, cache.tree.root_hartree.hostname_tree)
|
||||||
|
|
||||||
lookyloo_link: MISPAttribute = event.add_attribute('link', f'https://{public_domain}/tree/{cache.uuid}') # type: ignore
|
lookyloo_link: MISPAttribute = event.add_attribute('link', f'https://{public_domain}/tree/{cache.uuid}') # type: ignore
|
||||||
if not is_public_instance:
|
if not is_public_instance:
|
||||||
lookyloo_link.distribution = 0
|
lookyloo_link.distribution = 0
|
||||||
|
|
||||||
initial_url = URLObject(cache.url)
|
|
||||||
initial_url.comment = 'Submitted URL'
|
|
||||||
self.__misp_add_ips_to_URLObject(initial_url, cache.tree.root_hartree.hostname_tree)
|
|
||||||
|
|
||||||
redirects: List[URLObject] = []
|
redirects: List[URLObject] = []
|
||||||
for nb, url in enumerate(cache.redirects):
|
for nb, url in enumerate(cache.redirects):
|
||||||
if url == cache.url:
|
if url == cache.url:
|
||||||
|
@ -183,6 +187,7 @@ class MISP():
|
||||||
obj.comment = f'Redirect {nb}'
|
obj.comment = f'Redirect {nb}'
|
||||||
self.__misp_add_ips_to_URLObject(obj, cache.tree.root_hartree.hostname_tree)
|
self.__misp_add_ips_to_URLObject(obj, cache.tree.root_hartree.hostname_tree)
|
||||||
redirects.append(obj)
|
redirects.append(obj)
|
||||||
|
|
||||||
if redirects:
|
if redirects:
|
||||||
redirects[-1].comment = f'Last redirect ({nb})'
|
redirects[-1].comment = f'Last redirect ({nb})'
|
||||||
|
|
||||||
|
|
|
@ -83,6 +83,8 @@ class RiskIQ():
|
||||||
return {'error': 'Module not available'}
|
return {'error': 'Module not available'}
|
||||||
if auto_trigger and not self.allow_auto_trigger:
|
if auto_trigger and not self.allow_auto_trigger:
|
||||||
return {'error': 'Auto trigger not allowed on module'}
|
return {'error': 'Auto trigger not allowed on module'}
|
||||||
|
if cache.url.startswith('file'):
|
||||||
|
return {'error': 'RiskIQ does not support files.'}
|
||||||
|
|
||||||
if cache.redirects:
|
if cache.redirects:
|
||||||
hostname = urlparse(cache.redirects[-1]).hostname
|
hostname = urlparse(cache.redirects[-1]).hostname
|
||||||
|
|
|
@ -118,6 +118,9 @@ class UrlScan():
|
||||||
if not self.available:
|
if not self.available:
|
||||||
raise ConfigError('UrlScan not available, probably no API key')
|
raise ConfigError('UrlScan not available, probably no API key')
|
||||||
|
|
||||||
|
if capture_info.url.startswith('file'):
|
||||||
|
return {'error': 'URLScan does not support files.'}
|
||||||
|
|
||||||
url_storage_dir = get_cache_directory(
|
url_storage_dir = get_cache_directory(
|
||||||
self.storage_dir_urlscan,
|
self.storage_dir_urlscan,
|
||||||
f'{capture_info.url}{capture_info.user_agent}{capture_info.referer}',
|
f'{capture_info.url}{capture_info.user_agent}{capture_info.referer}',
|
||||||
|
|
Loading…
Reference in New Issue