From 71ccb7b5b062d8667ecb7dd280d0e898fc1ccfb3 Mon Sep 17 00:00:00 2001 From: Yogesh Ojha Date: Sat, 13 Mar 2021 19:28:42 +0530 Subject: [PATCH] Lookup title added --- reNgine/common_func.py | 34 ++++++++++++++------- scanEngine/forms.py | 16 ++++++++++ scanEngine/models.py | 2 ++ scanEngine/templates/scanEngine/lookup.html | 14 ++++++++- 4 files changed, 54 insertions(+), 12 deletions(-) diff --git a/reNgine/common_func.py b/reNgine/common_func.py index 7e8a4c78..a402e951 100644 --- a/reNgine/common_func.py +++ b/reNgine/common_func.py @@ -28,20 +28,32 @@ def get_interesting_subdomains(scan_history=None, target=None): page_title_lookup_query = Q() for key in lookup_keywords: - subdomain_lookup_query |= Q(subdomain__icontains=key) - page_title_lookup_query |= Q(page_title__iregex="\\y{}\\y".format(key)) + if InterestingLookupModel.objects.filter(custom_type=True): + if InterestingLookupModel.objects.filter(custom_type=True).order_by('-id')[0].url_lookup: + subdomain_lookup_query |= Q(subdomain__icontains=key) + if InterestingLookupModel.objects.filter(custom_type=True).order_by('-id')[0].title_lookup: + page_title_lookup_query |= Q(page_title__iregex="\\y{}\\y".format(key)) + else: + subdomain_lookup_query |= Q(subdomain__icontains=key) + page_title_lookup_query |= Q(page_title__iregex="\\y{}\\y".format(key)) + + subdomain_lookup = ScannedHost.objects.none() + title_lookup = ScannedHost.objects.none() if target: - subdomain_lookup = ScannedHost.objects.filter( - target_domain__id=target).filter(subdomain_lookup_query).distinct('subdomain') - title_lookup = ScannedHost.objects.filter(page_title_lookup_query).filter( - target_domain__id=target).distinct('subdomain') + if subdomain_lookup_query: + subdomain_lookup = ScannedHost.objects.filter( + target_domain__id=target).filter(subdomain_lookup_query).distinct('subdomain') + if page_title_lookup_query: + title_lookup = ScannedHost.objects.filter(page_title_lookup_query).filter( + target_domain__id=target).distinct('subdomain') elif scan_history: - subdomain_lookup = ScannedHost.objects.filter( - scan_history__id=scan_history).filter(subdomain_lookup_query) - title_lookup = ScannedHost.objects.filter( - scan_history__id=scan_history).filter(page_title_lookup_query) - + if subdomain_lookup_query: + subdomain_lookup = ScannedHost.objects.filter( + scan_history__id=scan_history).filter(subdomain_lookup_query) + if page_title_lookup_query: + title_lookup = ScannedHost.objects.filter( + scan_history__id=scan_history).filter(page_title_lookup_query) return subdomain_lookup | title_lookup diff --git a/scanEngine/forms.py b/scanEngine/forms.py index 318fc213..61953afd 100644 --- a/scanEngine/forms.py +++ b/scanEngine/forms.py @@ -178,5 +178,21 @@ class InterestingLookupForm(forms.ModelForm): "value": 'true' })) + title_lookup = forms.BooleanField( + required=False, + widget=forms.CheckboxInput( + attrs={ + "class": "new-control-input", + })) + + url_lookup = forms.BooleanField( + required=False, + widget=forms.CheckboxInput( + attrs={ + "class": "new-control-input", + })) + def set_value(self, key): self.initial['keywords'] = key.keywords + self.initial['title_lookup'] = key.title_lookup + self.initial['url_lookup'] = key.url_lookup diff --git a/scanEngine/models.py b/scanEngine/models.py index d559e48a..40fbbd22 100644 --- a/scanEngine/models.py +++ b/scanEngine/models.py @@ -45,3 +45,5 @@ class Configuration(models.Model): class InterestingLookupModel(models.Model): keywords = models.TextField(null=True, blank=True) custom_type = models.BooleanField(default=False) + title_lookup = models.BooleanField(default=True) + url_lookup = models.BooleanField(default=True) diff --git a/scanEngine/templates/scanEngine/lookup.html b/scanEngine/templates/scanEngine/lookup.html index 81b8eebc..0d416fbf 100644 --- a/scanEngine/templates/scanEngine/lookup.html +++ b/scanEngine/templates/scanEngine/lookup.html @@ -7,6 +7,7 @@ Interesting entries Lookup {% block custom_js_css_link %} + {% endblock custom_js_css_link %} {% block breadcrumb_title %} @@ -48,7 +49,18 @@ Interesting entries lookup {{ form.custom_type }} Press comma , to add and separate the keywords
- +
Lookup in
+
+ + +
+