def get_hostnames(self): try: ips = self.get_ipaddresses() headers = { 'user-agent': Core.get_user_agent(), 'Accept': '*/*', 'Referer': self.urlcert } response = requests.post('https://censys.io/ipv4/getdns', json={'ips': ips}, headers=headers) responsejson = response.json() domainsfromcensys = [] for key, jdata in responsejson.items(): if jdata is not None: domainsfromcensys.append(jdata) else: pass matchingdomains = [ s for s in domainsfromcensys if str(self.word) in s ] self.hostnamesall.extend(matchingdomains) hostnamesfromcerts = censysparser.Parser(self) self.hostnamesall.extend( hostnamesfromcerts.search_hostnamesfromcerts()) return self.hostnamesall except Exception as e: print( f'Error occurred in the Censys module - hostname search: {e}')
def get_ipaddresses(self): try: ips = censysparser.Parser(self) self.ips = ips.search_ipaddresses() return self.ips except Exception as e: print(f'Error occurred in the main Censys module - IP address search: {e}')
def process(self): try: self.urlhost = "https://" + self.server + "/ipv4/_search?q=" + str(self.word) + "&page=1" self.urlcert = "https://" + self.server + "/certificates/_search?q=" + str(self.word) + "&page=1" self.do_searchhosturl() self.do_searchcertificateurl() counter = 2 pages = censysparser.Parser(self) totalpages = pages.search_totalpageshosts() pagestosearch = int(self.limit / 25) # 25 results/page if totalpages <= pagestosearch: while counter <= totalpages: try: self.page = str(counter) self.urlhost = "https://" + self.server + "/ipv4/_search?q=" + str(self.word) + "&page=" + str( self.page) print("\tSearching Censys IP results page " + self.page + ".") self.do_searchhosturl() counter += 1 except Exception as e: print(f'Error occurred in the Censys module requesting the pages: {e}') else: while counter <= pagestosearch: try: self.page = str(counter) self.urlhost = "https://" + self.server + "/ipv4/_search?q=" + str(self.word) + "&page=" + str( self.page) print(f'\tSearching Censys IP results page {self.page} ...') self.do_searchhosturl() counter += 1 except Exception as e: print(f'Error occurred in the Censys module requesting the pages: {e}') counter = 2 totalpages = pages.search_totalpagescerts() if totalpages <= pagestosearch: while counter <= totalpages: try: self.page = str(counter) self.urlhost = "https://" + self.server + "/certificates/_search?q=" + str( self.word) + "&page=" + str(self.page) print(f'\tSearching Censys certificates results page {self.page} ...') self.do_searchcertificateurl() counter += 1 except Exception as e: print(f'Error occurred in the Censys module requesting the pages: {e}') else: while counter <= pagestosearch: try: self.page = str(counter) self.urlhost = "https://" + self.server + "/ipv4/_search?q=" + str(self.word) + "&page=" + str( self.page) print("\tSearching Censys IP results page " + self.page + ".") self.do_searchhosturl() counter += 1 except Exception as e: print(f'Error occurred in the Censys module requesting the pages: {e}') except Exception as e: print(f'Error occurred in the main Censys module: {e}')