• XSS.stack #1 – первый литературный журнал от юзеров форума

Скрипт censys_search.py

jonni78

HDD-drive
Пользователь
Регистрация
02.04.2019
Сообщения
23
Реакции
3
Не получается запустить скрипт censys_search.py


import sys, json, requests, logging, os
import censys.certificates

API_URL = "https://censys.io/api/v1"

logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)


def close_to_domain(candidate, target_domain, domain_array):
if any(x in candidate for x in domain_array):
return True
return False


def show_censys_data(domain, uid, secret):
logger.info("Looking up {} on censys".format(domain))
domains = set()
domain_array = domain.split(".")
domain_array.pop()

certificates = censys.certificates.CensysCertificates(uid, secret)
fields = ["parsed.names"]

for c in certificates.search("parsed.names: %s" % domain, fields=fields):
for d in c["parsed.names"]:
if close_to_domain(d, domain, domain_array):
domains.add(d)

logger.info("Found {} unique domains".format(len(domains)))
for d in domains:
print(d)


def check_api_keys():
if os.environ.get("CENSYS_ID") is None or os.environ.get("CENSYS_SECRET") is None:
logger.warning("Missing CENSYS_ID or CENSYS_SECRET env var")
sys.exit(-1)


if __name__ == "__main__":
if len(sys.argv) < 2:
print("usage {} <domain>".format(sys.argv[0]))
sys.exit(-1)
check_api_keys()
uid = os.environ.get("CENSYS_ID")
secret = os.environ.get("CENSYS_SECRET")

show_censys_data(sys.argv[1], uid, secret)

Меняю CENSYS_ID и CENSYS_SECRET во всех в коде случаях на свои значения из censys.io
 
Python:
 if os.environ.get("CENSYS_ID") is None or os.environ.get("CENSYS_SECRET") is None:
Скрипт намекает, что это можно было сделать проще через environment variables.
 
Переменные окружения не определены.

Если вместо строк
Python:
    uid = os.environ.get("CENSYS_ID")
    secret = os.environ.get("CENSYS_SECRET")
подставлены правильные ключи, то предупреждение по идее можно игнорировать.
 
Не получается запустить скрипт censys_search.py


import sys, json, requests, logging, os
import censys.certificates

API_URL = "https://censys.io/api/v1"

logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)


def close_to_domain(candidate, target_domain, domain_array):
if any(x in candidate for x in domain_array):
return True
return False


def show_censys_data(domain, uid, secret):
logger.info("Looking up {} on censys".format(domain))
domains = set()
domain_array = domain.split(".")
domain_array.pop()

certificates = censys.certificates.CensysCertificates(uid, secret)
fields = ["parsed.names"]

for c in certificates.search("parsed.names: %s" % domain, fields=fields):
for d in c["parsed.names"]:
if close_to_domain(d, domain, domain_array):
domains.add(d)

logger.info("Found {} unique domains".format(len(domains)))
for d in domains:
print(d)


def check_api_keys():
if os.environ.get("CENSYS_ID") is None or os.environ.get("CENSYS_SECRET") is None:
logger.warning("Missing CENSYS_ID or CENSYS_SECRET env var")
sys.exit(-1)


if __name__ == "__main__":
if len(sys.argv) < 2:
print("usage {} <domain>".format(sys.argv[0]))
sys.exit(-1)
check_api_keys()
uid = os.environ.get("CENSYS_ID")
secret = os.environ.get("CENSYS_SECRET")

show_censys_data(sys.argv[1], uid, secret)

Меняю CENSYS_ID и CENSYS_SECRET во всех в коде случаях на свои значения из censys.io
Тебе нужно установить переменные окружения.
Перед запуском скрипта в терминале вводи:

если запускаешь под *nix:
export CENSYS_ID="твоё_значение"
export CENSYS_SECRET="твое_значение"

ecли win:
SET CENSYS_ID="твоё_значение"
SET CENSYS_SECRET="твое_значение"
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх