censys 数据库地理信息自定义接口(python版)

公司内部的ip信息库覆盖面不是很够
导致日志处理的时候ip经常差不到
有人推荐,censys比较权威,
但是没有文档,而且接口不太好用,所以自己写了一个查ip的接口
首先
到官网逛了逛,censys特殊之处在于注册了才能用api
注册以后有Secret,API_ID,在查询时需要用到
百度了一下发现也没什么有用的教程,又看了看官方的介绍以及源码
得到了最初的版本

import censys
from censys import *
Secret=“”
API_ID=“”
self.api = censys.ipv4.CensysIPv4(api_id=self.API_ID, api_secret=self.Secret)
res = self.api.view(ip)
geo = res['location']

后来发现,这个库不是专业的地理信息库,这样查询很多ip的地址view不到。。
但是在网页上面却是可以显示地理信息的,想了想,准备直接用url发请求

import requests
url="https://www.censys.io/ipv4/%s"%ip
res = requests.get(url, auth=(API_ID, Secret))
s=res.content

也可以用urllib2

import urllib2
values ={
  "user":API_ID,"passwd":Secret}
jdata = json.dumps(values)
req = urllib2.Request(url, jdata)
response = urllib2.urlopen(req)
s=response.read()

两者差不太多吧,我用的是第一种
之后就是解析html了
上网找了找,发现神器bs4
搞了搞发现好方便,直接贴代码

from bs4 import BeautifulSoup
soup = BeautifulSoup(s, "html5lib")

这样html就被解析出来了,结合censys返回的html,可以解析出地理信息

b=soup.find_all("dl","dl-horizontal dl-hostbox")
if len(b) == 0:
    print "not found"
geo=b[0].find_all('dd')

接下来继续解析出所需各项

lat_long=geo[3].string.split(',')
country=geo[2].string.split(' ')

json_data = {
    "ip"    :           ip,
     "latitude":        float(lat_long[0]),
     "country":         str(country[0]),
     "country_code":    str(country[1][1:-1]),
     "longitude":       f
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
对于信息收集的过程,以下是一般的步骤,以便收集目标企业的域名、子域名、C段、IP端口服务、信息泄露、业务、网站法人和备案号等信息: 1. 收集目标企业的域名:通过公开的数据源、搜索引擎、WHOIS查询等方式,获取目标企业的主域名。例如,目标企业的网站可能是www.example.com。 2. 收集目标企业的子域名:使用子域名枚举工具(例如,Sublist3r、Amass、Knockpy等)或在线子域名查找服务(例如,DNSDumpster、Censys等),对目标企业的主域名进行子域名枚举,以获取与该企业相关的子域名。例如,可以发现subdomain.example.com。 3. 收集目标企业的C段:使用工具(例如,Nmap、Shodan等)对目标企业的主域名进行IP地址探测,并获取与目标企业相关的C段IP地址段。例如,可能发现目标企业使用的IP地址段为192.168.0.0/24。 4. 收集目标企业的IP端口服务:使用端口扫描工具(例如,Nmap、Masscan等)对目标企业的IP地址进行端口扫描,以获取目标主机上开放的端口和相关的服务。例如,可以发现目标主机的80端口开放,表示可能有一个Web服务器。 5. 收集目标企业的信息泄露:通过搜索引擎、漏洞报告、黑客论坛等渠道搜索与目标企业相关的信息泄露事件,以获取可能存在的敏感信息泄露。 6. 收集目标企业的业务:通过目标企业的官方网站、社交媒体、新闻报道等渠道,了解目标企业的业务范围、产品或服务。 7. 收集目标企业的网站法人和备案号:使用工具(例如,ICP备案查询工具)或通过相关网站(例如,中国互联网信息中心)查询目标企业的网站法人和备案号等信息。 请注意,进行信息收集时需要遵守法律和道德准则,并且在未经授权的情况下进行此类活动可能是违法的。确保您已经获得了适当的授权,并遵循相关的法律和规定。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值