diff --git a/web/api/views.py b/web/api/views.py index 35e6e063..1a01f24a 100644 --- a/web/api/views.py +++ b/web/api/views.py @@ -1524,6 +1524,8 @@ class SubdomainDatatableViewSet(viewsets.ModelViewSet): ip_address = req.query_params.get('ip_address') + name = req.query_params.get('name') + if target_id: self.queryset = Subdomain.objects.filter( target_domain__id=target_id).distinct() @@ -1542,6 +1544,9 @@ class SubdomainDatatableViewSet(viewsets.ModelViewSet): if ip_address: self.queryset = self.queryset.filter(ip_addresses__address__icontains=ip_address) + if name: + self.queryset = self.queryset.filter(name=name) + return self.queryset def filter_queryset(self, qs): diff --git a/web/dashboard/templates/dashboard/search.html b/web/dashboard/templates/dashboard/search.html index e277a32f..24bee8d0 100644 --- a/web/dashboard/templates/dashboard/search.html +++ b/web/dashboard/templates/dashboard/search.html @@ -126,11 +126,11 @@ $(document).ready(function() { for (var subdomain in response.results.subdomains) { var subdomain_obj = response.results.subdomains[subdomain]; - var http_url = subdomain_obj.http_url ? subdomain_obj.http_url : 'https://' + subdomain.name; + var http_url = subdomain_obj.http_url ? subdomain_obj.http_url : 'https://' + subdomain_obj.name; - var append_content = '
'; + var append_content = `
`; - append_content += `

${highlight_search(search_val, subdomain_obj.name)}${get_http_status_badge(subdomain_obj.http_status)}

`; + append_content += `

${highlight_search(search_val, subdomain_obj.name)}${get_http_status_badge(subdomain_obj.http_status)}

`; if (subdomain_obj.page_title) { append_content += `
@@ -149,7 +149,7 @@ $(document).ready(function() { append_content += `CNAME: ${highlight_search(search_val, subdomain_obj.cname)}` } - append_content += '
' + append_content += '
'; $('#subdomains-tab').append(append_content); } diff --git a/web/startScan/templates/startScan/subdomains.html b/web/startScan/templates/startScan/subdomains.html index 7227d37b..2eb7d28b 100644 --- a/web/startScan/templates/startScan/subdomains.html +++ b/web/startScan/templates/startScan/subdomains.html @@ -63,6 +63,8 @@ $(document).ready(function() { 'serverSide': true, {% if request.GET.ip_address %} "ajax": '/api/listDatatableSubdomain/?&format=datatables&ip_address={{request.GET.ip_address}}', + {% elif request.GET.name %} + "ajax": '/api/listDatatableSubdomain/?&format=datatables&name={{request.GET.name}}', {% else %} "ajax": '/api/listDatatableSubdomain/?&format=datatables', {% endif %}