We can easily make a script that obtains the results of a server that can be vulnerable to heartbleed due to a vulnerable OpenSSL version.
You can find the following code in the ShodanSearchOpenSSL.py file in the heartbleed_shodan folder:
import shodanimport socketSHODAN_API_KEY = "v4YpsPUJ3wjDxEqywwu6aF5OZKWj8kik"api = shodan.Shodan(SHODAN_API_KEY)# Wrap the request in a try/ except block to catch errorstry: # Search Shodan OpenSSL/1.0.1 results = api.search('OpenSSL/1.0.1') # Show the results print('Total Vulnerable servers: %s' % results['total']) for result in results['matches']: print('IP: %s' % result['ip_str']) print('Hostname: %s' % socket.getfqdn(result['ip_str'])) print(result['data'])except ...