前言

https://github.com/ismailtasdelen/hackertarget

代码

主要通过这家公司提供的API查询相关数据实现的功能,API看起来可以用很久。

#!/usr/bin/env python
# -*- coding: utf-8 -*- import requests hackertarget_logo = """
_ _ _ _
| |_ __ _ __ | |__ ___ _ _ | |_ __ _ _ _ __ _ ___ | |_
| ' \ / _` |/ _|| / // -_)| '_|| _|/ _` || '_|/ _` |/ -_)| _|
|_||_|\__,_|\__||_\_\\___||_| \__|\__,_||_| \__, |\___| \__|
|___/
Ismail Tasdelen
| github.com/ismailtasdelen | linkedin.com/in/ismailtasdelen |
""" menu = """
[1] Traceroute
[2] Ping Test
[3] DNS Lookup
[4] Reverse DNS
[5] Find DNS Host
[6] Find Shared DNS
[7] Zone Transfer
[8] Whois Lookup
[9] IP Location Lookup
[10] Reverse IP Lookup
[11] TCP Port Scan
[12] Subnet Lookup
[13] HTTP Header Check
[14] Extract Page Links
[15] Exit
""" print hackertarget_logo
print menu def run(): try:
choice = input("Which option number : ") if choice == 1:
print("\n")
print("[+] Traceroute script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/mtr/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 2:
print("\n")
print("[+] Ping Test script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/nping/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 3:
print("\n")
print("[+] DNS Lookup script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/dnslookup/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 4:
print("\n")
print("[+] Reverse DNS script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/reversedns/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 5:
print("\n")
print("[+] Find DNS Host script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/hostsearch/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 6:
print("\n")
print("[+] Find Shared DNS script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/findshareddns/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 7:
print("\n")
print("[+] Zone Transfer script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/zonetransfer/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 8:
print("\n")
print("[+] Whois Lookup script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/whois/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 9:
print("\n")
print("[+] IP Location Lookup script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/geoip/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 10:
print("\n")
print("[+] Reverse IP Lookup script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/reverseiplookup/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 11:
print("\n")
print("[+] TCP Port Scan script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/nmap/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 12:
print("\n")
print("[+] Subnet Lookup script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/subnetcalc/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 13:
print("\n")
print("[+] HTTP Header Check script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/httpheaders/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 14:
print("\n")
print("[+] Extract Page Links script running..")
target = raw_input("[+] Target : ")
print("\n")
url = "https://api.hackertarget.com/pagelinks/?q=" + target
request = requests.get(url)
txt = request.text
print(txt) elif choice == 15:
exit() except KeyboardInterrupt:
print("\nAborted!")
quit()
except:
print("Invalid Optioin !\n")
return run()
run()

Hackertarget:一款发现攻击面的工具的更多相关文章

  1. GitHub 上的十一款热门开源安全工具

    作为开源开发领域的基石,“所有漏洞皆属浅表”已经成为一条著名的原则甚至是信条.作为广为人知的Linus定律,当讨论开源模式在安全方面的优势时,开放代码能够提高项目漏洞检测效率的理论也被IT专业人士们所 ...

  2. 五款app原型设计工具对比

    五款app原型设计工具对比 Proto.io, Pixate, Origami, Framer & Form 本文由Panblack 翻译,原文作者 Tes Mat 我用五款“高保真”原型设计 ...

  3. 十九款web漏洞扫描工具

    1. Arachni Arachni是一款基于Ruby框架搭建的高性能安全扫描程序,适用于现代Web应用程序.可用于Mac.Windows及Linux系统的可移植二进制文件. Arachni不仅能对基 ...

  4. Web 项目可能会用到的20款优秀的开源工具

    开源的应用程序和它们的源代码可以免费获得,因为版权是属于任何进行过修改或者提交代码的人.大多数提供开源软件的公司都可以建立行业标准,因此可以获得有利的竞争优势. 很多的开源应用程序和工具都有很强的替代 ...

  5. [转]10款 Web 开发常备工具

    文章地址:https://my.oschina.net/u/2903254/blog/798135 工欲善其事,必先利其器.如今 Web 开发标准越来越高,Web 开发者也在不断寻找途径提升自己的技能 ...

  6. 赞!这款国产的SSH工具,好用到爆!

    之前分享 MobaXterm 时 有小伙伴留言说到了 FinalShell 我本来是一脸蒙蔽的 网上搜了一下 它们家的官网 打开官网 我一度怀疑自己进错了网站 简单(jianlou)的排版 像极了上个 ...

  7. GitHub 上 10 款免费开源 Windows 工具

    GitHub 上 10 款免费开源 Windows 工具 GitHub 是如今所有开源事物的中央仓库, 这个网站最近发布了一个叫做<2016 Octoverse  状态报告>,详细列出了从 ...

  8. 100行Python代码实现一款高精度免费OCR工具

    近期Github开源了一款基于Python开发.名为 Textshot 的截图工具,刚开源不到半个月已经500+Star. 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语 ...

  9. Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说。。。

    Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说... root@xi4ojin:~# cd ...

随机推荐

  1. GAN学习指南:从原理入门到制作生成Demo,总共分几步?

    来源:https://www.leiphone.com/news/201701/yZvIqK8VbxoYejLl.html?viewType=weixin 导语:本文介绍下GAN和DCGAN的原理,以 ...

  2. Selenium(十)测试用例错误处理、日志接口、多用户测试

    1.一般的错误类型 2.查看错误提示,是一个div,以id为例找到该元素 3.修改测试用例 def checkResult(driver,err_id): try: err = driver.find ...

  3. vue3.0脚手架 创建项目

    1.下载node最新稳定版本,并且安装 2.安装好之后,在cmd或者terminal下, 使用npm -v 查看当前npm版本,验证是否安装成功 3.安装成功后,运行 npm i -g @vue/cl ...

  4. tycho 打包编译报错 Access restriction: The type XYZ is not API

    解决办法: 在pom.xml中加入以下配置 <plugin> <groupId>org.eclipse.tycho</groupId> <artifactId ...

  5. shiro框架的UsernamePasswordToken与对应Realm中的AuthenticationToken的一点比较(转)

    这里以简单的登陆为例子 控制器对应的登陆方法: @RequestMapping(value = "/login", method = RequestMethod.GET) publ ...

  6. 文件和I/O

    一.读写文本数据 (1)使用open()函数配合rt模式读取文本文件的内容:( t 为默认的文本模式) (2)执行写入操作,使用wt模式,如果待操作文件已存在,会清除并覆盖其原先的内容: (3)对已存 ...

  7. jquery的tap会执行2次的替换办法

    用touchend替换 $(".videoCall").on("touchend",function(){ })$(".videoCall" ...

  8. chrome扩展开发实战入门之一-hellocrx

    后记:在写这篇文章时,我还没搞懂chrome扩展的基本原理.后来才明白,最简单(且实用)的扩展只需要manifest.json和content_scripts.js两个文件,无需background. ...

  9. java.sql.SQLException: 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK

    在pom.xml文件中添加如下依赖: <!-- https://mvnrepository.com/artifact/cn.easyproject/orai18n --> <depe ...

  10. @Component,@Service,@Controller,@Repository

    1.@controller 控制器(注入服务) 2.@service 服务(注入dao) 3.@repository dao(实现dao访问) 4.@component (把普通pojo实例化到spr ...