habu
A lot of fixes!
我正在开发HABU,以教(并学习)一些有关Python和网络黑客入侵的概念。
当前版本中实施的一些技术是:
该软件的开发由Securetia SRL(https://www.securetia.com/)支持
https://fportantier.github.io/hacking-with-habu/详细介绍了各种有用的用法方案
以下YouTube播放列表具有显示安装和用法的视频:
https://www.youtube.com/watch?v=rgp9Sellyqe&list=pl4hznx8vnfxqsvnw7x-bxonbxon0dgxndfnvd
如果您想讨论一些HABU功能,可能的改进等,则可以使用HABU电报组:https://t.me/python_habu
问题和拉的请求必须发送到github repo:https://github.com/fportantier/habu
建议安装方法:
$ python3 -m pip install -upgrade git+https://github.com/fportantier/habu.git
这必须适用于安装Python 3的任何系统。
注意:在某些系统(例如Microsoft Windows)上,您必须调整命令以指向Python可执行文件的正确路径。
现在,我们有一个命令可以直接从git repo升级并清洁任何不再存在或更名的旧命令。
$ habu.upgrade
所有命令都会实现选项“ - 螺旋”,该选项显示了帮助,参数,选项和默认值。
几乎所有命令都使用“ -v”选项实现详细模式。这可以为您提供有关HABU在做什么的额外信息。
用法:habu.arp.ping [选项] IP 发送ARP数据包以检查主机是否在本地网络中还活着。 例子: #Habu.arp.ping 192.168.0.1 Ether / ARP在A4:08:F5:19:17:A4说192.168.0.1 / padding 选项: - 我要使用的文本接口 -v详细输出 - 主持人显示此消息和退出。
用法:habu.arp.poison [选项]受害者1受害者2 将ARP“ IS-AT”数据包发送给每个受害者,使他们的ARP表中毒 将流量发送到您的系统。 注意:如果您想在中间攻击中一个完整的工作人员,则需要 使您的操作系统上的数据包转发为 路由器。您可以使用: #回声1>/proc/sys/net/ipv4/ip_forward 例子: #HABU.ARPOISON 192.168.0.1 192.168.0.77 Ether / ARP在F4:96:34:E5:AE:AE:1B说192.168.0.77 Ether / ARP在F4:96:34:E5:AE:AE:1B说192.168.0.70 Ether / ARP在F4:96:34:E5:AE:AE:1B说192.168.0.77 ... 选项: - 我要使用的文本接口 -v冗长 - 主持人显示此消息和退出。
用法:habu.arp.sniff [选项] 聆听ARP数据包并显示每个设备的信息。 列:上数据包的几秒钟| IP | Mac |小贩 例子: 1 192.168.0.1 A4:08:F5:19:17:A4 SAGEMCOM宽带SAS 7 192.168.0.2 64:BC:0C:33:E5:57 LG电子(移动通信) 2 192.168.0.5 00:C2:C6:30:2C:58英特尔公司 6 192.168.0.7 54:F2:01:DB:35:58三星电子公司,有限公司 选项: - 我要使用的文本接口 - 主持人显示此消息和退出。
用法:habu.asydns [选项]
使用公共和私人RSA密钥请求DNS域名
asydns协议https://github.com/portantier/ashasydns
例子:
$ habu.asydns -v
生成RSA密钥...
加载RSA键...
{
“ ip”:“ 181.31.41.231”,
“名称”:“ 07286E90FD6EE7E6BE61D6A7919967CF3BBFB23A36EDBC72B6D7C53.A.ASYDNS.org”
}
$ dig +短07286E90FD6EE7E6BE61D6A7919967CF3BBFB23A36EDBC72B6D7C53.A.ASYDNS.org
181.31.41.231
选项:
-U文本API URL
-g强制新钥匙对的一代
-r撤销公钥
-v详细输出
- 主持人显示此消息和退出。
用法:habu.b64 [options] [f] 就像命令base64一样,在base64中编码或解码数据。 $ ECHO很棒| habu.b64 YXDLC29TZQO = $ echo yxdlc29tzqo = | habu.b64 -d 惊人的 选项: -D解码而不是编码 - 主持人显示此消息和退出。
用法:habu.cert.clone [options]主机名端口keyfile certfile 连接到SSL/TLS服务器,获取证书并生成一个 具有相同选项和现场值的证书。 注意:生成的证书无效,但可用于社交 工程攻击 例子: $ habu.certclone www.google.com 443 /tmp/key.pem /tmp/cert.pem 选项: - 复制 - 延迟复制证书扩展名(默认:false) - 阶段生成过期证书(默认:false) -v冗长 - 主持人显示此消息和退出。
用法:habu.cert.crtsh [选项]域 下载域的证书透明度日志,并与 DNS查询是否存在。 使用多线程来提高DNS查询的性能。 例子: $ habu.crtsh securetia.com alt.securetia.com other.securetia.com www.securetia.com 选项: -c禁用缓存 -n禁用DNS子域验证 -v详细输出 - JSON以JSON格式打印输出 - 主持人显示此消息和退出。
用法:habu.cert.names [options] [网络] 连接到每个主机/端口,并显示证书名称的摘要。 要连接的主机是从两个可能的选项中获取的: 1。-I选项(默认值:stdin)。每个行是主机或网络的文件 2。可以是主机或网络的参数 如果使用这两种方法,则将主机和网络合并为一个列表。 例子: $ habu.cert.names 2.18.60.240/29 2.18.60.241 443 is-microsoft.com microsoft.com privacy.microsoft.com 2.18.60.242 443 aod-ssl.itunes.apple.com aod.itunes.apple.com aodp-ssl.itunes.apple.com 2.18.60.243 443 *.mlb.com mlb.com 2.18.60.244 443 [ssl:tlsv1_alert_internal_error] TLSV1警报内部错误(_SSSL.C:1056) 2.18.60.245 443 cert2-cn-public-ubiservices.ubi.com cert2-cn-public-ws-ubiservices.ubi.com 2.18.60.246 443 *.blog.sina.com.cn *.dmp.sina.cn aod.itunes.apple.com aodp-ssl.itunes.apple.com aod-ssl.itunes.apple.com *.blog.sina.com.cn cert2-cn-public-ubiservices.ubi.com cert2-cn-public-ws-ubiservices.ubi.com *.dmp.sina.cn is-microsoft.com microsoft.com *.mlb.com mlb.com privacy.microsoft.com 选项: -p文本端口要连接到(逗号分隔列表) -i文件名输入文件(默认:stdin) -t浮动时间等待每个连接 -v详细输出 - JSON以JSON格式打印输出 - 主持人显示此消息和退出。
用法:habu.config.del [options]键 从配置中删除键。 注意:默认情况下,键将转换为大写。 例子: $ habu.config.del dns_server 选项: - 主持人显示此消息和退出。
用法:habu.config.set [选项]键值 将值设置为配置密钥。 注意:默认情况下,键将转换为大写。 例子: $ habu.config.set dns_server 8.8.8.8 选项: - 主持人显示此消息和退出。
用法:habu.config.show [选项]
显示当前的配置。
注意:默认情况下,以其名称中带有“键”的选项会被遮蔽。
例子:
$ habu.config.show
{
“ dns_server”:“ 8.8.8”,
“ fernet_key”:“ *************”
}
选项:
-k, - 表keys也显示了关键值
- 选择文本...写入config(键值)
- 主持人显示此消息和退出。
用法:habu.crack.luhn [选项]编号 具有卢恩经过验证的数字的已知值,获取可能 未知数。 使用Luhn算法进行验证的数字是信用卡,IMEI, 美国国家提供商标识符,加拿大社会 保险号码,以色列ID号和希腊社会保险号 (αμκα)。 “ - ”字符被忽略。 用“ x”字符定义丢失的数字。 参考:https://en.wikipedia.org/wiki/luhn_algorithm 例子: $ habu.crack.luhn 4509-XX08-3160-6445 4509000831606445 4509180831606445 4509260831606445 4509340831606445 4509420831606445 4509590831606445 4509670831606445 4509750831606445 4509830831606445 4509910831606445 选项: - 主持人显示此消息和退出。
用法:habu.crack.snmp [选项] IP 针对IP启动snmp-get查询,并告诉您何时找到有效 社区字符串(是一个简单的SNMP饼干)。 使用的字典是使用OnesixtyOne工具分布式的 https://github.com/trailofbits/onesixtyone 例子: #habu.Crack.SNMP 179.125.234.210 社区发现:私人 社区发现:公共 注意:您还可以接收诸如 <univers > <class之类的消息 'scapy.asn1.asn1.asn1 _ class _metaclass'>,我不知道如何替补 他们现在。 选项: -P整数端口要使用 -c文本社区(默认:最常用的列表) - 第一场比赛后停止 -v冗长 - 主持人显示此消息和退出。
用法:habu.crypto.fernet [选项] 费尔内特密码。 与HMAC一起使用AES-128-CBC 注意:您必须使用钥匙与费尔内特(Fernet)密封。 使用-K牧板器或设置Fernet_key配置值。 可以使用命令habu.crypto.fernet.genkey生成键 参考:https://github.com/fernet/spec/blob/master/spec.md 例子: $“我想保护这个字符串” | habu.crypto.fernet gaaaaaaabbxncgoculluvnrelytbecwnek9iq5jbkq9jan3jan3wiibuzpqpugv5owvnc6xfia ... $ echo gaaaaaaabbxncgoculluvnrelytbecwnek9iq5jbkq9jan3wiibuzpqpugv5owvnc6xfia ... | habu.crypto.fernet -d 我想保护这个字符串 选项: -k文本键 -D解密而不是加密 -TTL整数用于时间戳验证的时间 -i文件名输入文件(默认:stdin) -O文件名输出文件(默认:stdout) - 主持人显示此消息和退出。
用法:habu.crypto.fernet.genkey [选项] 生成一个新的Fernet键,可选地将其写入〜/.habu.json 例子: $ habu.crypto.fernet.genkey XGVWCIVJWE9UQ7NBVWO796II4DSGD623QOT9GWQNUHG = 选项: -w将此键写给〜/.habu.json - 主持人显示此消息和退出。
用法:habu.crypto.gppref [选项]密码 通过Windows 2008组策略解密本地用户的密码 偏好。 此值是嵌入在groups.xml文件中的'cpassword'属性, 存储在域控制器的Sysvol共享中。 例子: #habu.crypto.gppref azvjmxh/j9kru5n0czx1ubplsujzfe8j7doltpd8tlk TestPassword 选项: - 主持人显示此消息和退出。
用法:habu.crypto.hasher [options] [f]
计算输入数据的各种哈希,这可以是文件或流。
例子:
$ habu.crypto.hasher readme.rst
MD5 992A833CD162047DAAA6A236B8AC15AE README.RST
RIPEMD160 0566F9141E65E57CAE93E0E3B70D1D8C2CCB0623 README.RST
SHA1 D7DBFD2C5E2828EB22F776550C826E4166526253 README.RST
SHA256 6BB22D927E1B6307CED616821A1877B6CC35E ... README.RST
SHA512 8743F3EB12A11CF3EDCC16E400FB14D599B4A ... readme.rst
惠而浦96BCC083242E796992C0F3462F330811F9E8C ... readme.rst
您还可以指定要使用哪种算法。在这种情况下,输出为
仅计算出的哈希值:
$ habu.hasher -a md5 readme.rst
992A833CD162047DAAA6A236B8AC15AE readme.rst
选项:
-a [MD5 | SHA1 | SHA256 | SHA512 | RIPEMD160 |惠而浦]
仅此算法(默认:全部)
- 主持人显示此消息和退出。
用法:habu.crypto.xor [选项] XOR密码。 注意:XOR不是“安全密码”。如果您需要强大的加密货币,则必须使用 算法像AES。您可以使用habu.fernet。 例子: $ habu.xor -k mysecretkey -i /bin /ls> x $ habu.xor -k mysecretkey -i xored> uxored $ sha1sum /bin /ls uxed $ 6FCF930FCEE1395A1C95F87DD38413E02DEFF4BB /BIN /LS $ 6FCF930FCEE1395A1C95F87DD38413E02DDEFF4BB UXERED 选项: -K文本加密密钥 -i文件名输入文件(默认:stdin) -O文件名输出文件(默认:stdout) - 主持人显示此消息和退出。
用法:habu.data.enrich [选项]
丰富数据添加了有趣的信息。
例子:
$ cat/var/log/auth.log | habu.data.extract.ipv4 | habu.data.enrich
[
{
“资产”:“ 8.8.8.8”,
“家庭”:“ ipaddress”,
“ asn”:“ 15169”,
“ net”:“ 8.8.8.0/24”,
“ CC”:“我们”,
“ rir”:“ arin”,
“ Asname”:“ Google -Google LLC,美国”
},,
{
“资产”:“ 8.8.4.4”,
“家庭”:“ ipaddress”,
“ asn”:“ 15169”,
“ net”:“ 8.8.4.0/24”,
“ CC”:“我们”,
“ rir”:“ arin”,
“ Asname”:“ Google -Google LLC,美国”
}
这是给出的
选项:
-i文件名输入文件(默认:stdin)
-v详细输出
- 主持人显示此消息和退出。
用法:habu.data.extract.domain [options] [infile] 从文件或stdin中提取有效域。 选择,检查每个域中是否存在NS寄存器。 例子: $ cat/var/log/some.log | habu.data.extract.domain -c Google.com ibm.com redhat.com 选项: -c检查域是否已定义NS服务器 -v详细输出 -J JSON输出 - 主持人显示此消息和退出。
用法:habu.data.extract.email [options] [infile] 从文件或stdin中提取电子邮件地址。 例子: $ cat/var/log/auth.log | habu.data.extract.email [email protected] [email protected] [email protected] 选项: -v详细输出 -J JSON输出 - 主持人显示此消息和退出。
用法:habu.data.extract.fqdn [options] [infile] 从文件或stdin中提取FQDN(完全合格的域名)。 例子: $ cat/var/log/some.log | habu.data.extract.fqdn www.google.com ibm.com fileserver.redhat.com 选项: -c检查主机名是否解决 -v详细输出 -J JSON输出 - 主持人显示此消息和退出。
用法:habu.data.extract.ipv4 [options] [infile] 从文件或stdin提取IPv4地址。 例子: $ cat/var/log/auth.log | habu.data.extract.ipv4 172.217.162.4 23.52.213.96 190.210.43.70 选项: -j, - json json输出 -U, - 唯一删除重复项 -v详细输出 - 主持人显示此消息和退出。
用法:habu.data.filter [options] field [gt | lt | eq | eq | ne | ge | le | in | in | contains | cont | dent
ed |未定义| true | false] [value]
根据操作员过滤数据。
操作员参考:
GT:大于
LT:比
等式:等于
NE:不等于
GE:Greather或等于
LE:较小或等于
在:内部值列表(或网络内部)
包含:包含值(或网络地址)
定义:定义值
未定义:该值未定义
正确:价值是正确的
false:值是错误的
例子:
$ cat/var/log/auth.log | habu.data.extract.ipv4 | habu.data.enrich | habu.data.filter cc eq我们
[
{
“项目”:“ 8.8.8.8”,
“家庭”:“ ipv4_address”,
“ asn”:“ 15169”,
“ net”:“ 8.8.8.0/24”,
“ CC”:“我们”,
“ rir”:“ arin”,
“ Asname”:“ Google -Google LLC,美国”
}
这是给出的
文档:https://fportantier.github.io/hacking-with-habu/user/data-manipulation.html#data-enrichment
选项:
-i文件名输入文件(默认:stdin)
-v详细输出
- 不否定比较
- 主持人显示此消息和退出。
用法:habu.data.Select [options]字段 从JSON输入中选择一个字段。 例子: $ cat/var/log/auth.log | habu.data.extract.ipv4 | habu.data.enrich | habu.data.filter cc eq us | habu.data.Select资产 8.8.8.7 8.8.8.8 8.8.8.9 选项: -i文件名输入文件(默认:stdin) -v详细输出 - JSON JSON输出 - 主持人显示此消息和退出。
用法:habu.dhcp.discover [选项] 发送DHCP请求并显示已回复的设备。 注意:使用“ -v”,您可以看到所有选项(例如DNS服务器) 关于响应。 #habu.dhcp_discover Ether / ip / udp 192.168.0.1:Bootps> 192.168.0.5:Bootpc / bootp / dhcp 选项: - 我要使用的文本接口 -t整数时间(秒)等待响应 -v详细输出 - 主持人显示此消息和退出。
用法:habu.dhcp.strvation [options] 从伪造的MAC地址发送多个DHCP请求以填写DHCP 服务器租赁。 分配了所有可用网络地址时,DHCP服务器 不要发送答复。 因此,可以进行一些攻击,例如DHCP欺骗。 #habu.dhcp_starvation Ether / IP / UDP 192.168.0.1:Bootps> 192.168.0.6:Bootpc / bootp / dhcp Ether / IP / UDP 192.168.0.1:Bootps> 192.168.0.7:Bootpc / bootp / dhcp Ether / ip / udp 192.168.0.1:Bootps> 192.168.0.8:Bootpc / bootp / dhcp 选项: - 我要使用的文本接口 -t整数时间(秒)等待响应 - 整数时间(秒) -v详细输出 - 主持人显示此消息和退出。
用法:habu.dns.lookup.forward [options]主机名
执行给定主机名的前向查找。
例子:
$ habu.dns.lookup.forward Google.com
{
“ ipv4”:“ 172.217.168.46”,
“ IPv6”:“ 2A00:1450:400A:802 :: 200E”
}
选项:
-v详细输出
- 主持人显示此消息和退出。
用法:habu.dns.lookup.redverse [options] ip_address
对给定的IP地址进行反向查找。
例子:
$ $ habu.dns.lookup.redverse 8.8.8.8
{
“主机名”:“ Google-public-dns-a.google.com”
}
选项:
-v详细输出
- 主持人显示此消息和退出。
用法:habu.eicar [选项] 打印可用于测试反疑虑引擎的EICAR测试字符串。 更多信息:http://www.eicar.org/86-0--Rested-use.html 例子: $ habu.eicar x5o!p%@ap [4 xzp54(p^)7cc)7} $ eicar-standard-antivirus-test-file!$ h+h+h* 选项: - 主持人显示此消息和退出。
用法:habu.forkbomb [options] [bash | batch | c | haskell | perl | php | python | ruby]
快捷方式记住如何使用不同语言的叉炸弹。
目前支持:Bash,Batch,C,Haskell,Perl,PHP,Python,Ruby。
例子:
$ habu.forkbomb c
#include <unistd.h>
int main()
{
而(1)
{
叉();
}
返回0;
}
选项:
- 主持人显示此消息和退出。
用法:habu.fqdn.finder [options] [域] ...
使用各种技术为指定域获得有效的FQDN。
1。尝试使用DNS区域转移的所有FQDN
2。检查证书透明度日志
3.连接到指定的端口,获取SSL证书并从中获取FQDN
4。连接到网站并根据网站链接获取FQDNS
5。DNS蛮力的通用名称
清洁结果以删除DNS无法解决的FQDN
例子:
$ habu.fqdn.finder Educacionit.com
barometrometralarial.educacionit.com
blog.educacionit.com
ci.educacionit.com
Educacionit.com
intranet.educacionit.com
lecdev.educacionit.com
lecweb.educacionit.com
mail.educacionit.com
Plantillas.educacionit.com
www.educacionit.com
选项:
-t浮动时间等待每个连接
-v详细输出
- 调试输出
- 连接 / - no-connect从已知的FQDN开放端口SSL证书
- 蛮力 / - 裸露的跑步DNS蛮力针对域
-links / - -NO-Links从网站链接中提取FQDNS
-xfr / -no-XFR尝试对域进行DNS区域传输
- ctlog / -no-ctlog尝试从证书透明度获取FQDN
日志
- JSON以JSON格式打印输出
- 主持人显示此消息和退出。
用法:habu.gateway.find [选项]网络 尝试使用任何主机都有一个路由器来达到外部IP。 对于您的网络中找到路由器很有用。 首先,使用Arping来检测Alive Hosts并获得MAC地址。 稍后,创建一个网络数据包,并将每个MAC地址作为目标。 最后,打印正确转发数据包的设备。 例子: #habu.find.gateway 192.168.0.0/24 192.168.0.1 A4:08:F5:19:17:A4 Sagemcom 192.168.0.7 B0:98:2b:5d:22:70 Sagemcom 192.168.0.8 b0:98:2b:5d:1f:e8 sagemcom 选项: - 我要使用的文本接口 - 主机文本主机要达到(默认:8.8.8.8) -TCP使用TCP代替ICMP - DOPT INTEGER范围目标端口(默认:80) - 以秒为单位(默认值:5)的时间内整数超时 -v详细输出 - 主持人显示此消息和退出。
用法:habu.host [选项]
收集有关HABU在哪里运行的主机的信息。
例子:
$ habu.host
{
“内核”:[[
“ Linux”,
“ demo123”,
“ 5.0.6-200.fc29.x86_64”,
“#1 SMP星期三4月3日15:09:51 UTC 2019”,
“ x86_64”,
“ x86_64”
],,
“分配”: [
“ fedora”,
“ 29”,
“二十九”
],,
“ libc”:[
“ glibc”,
“ 2.2.5”
],,
“ Arch”:“ X86_64”,
“ python_version”:“ 3.7.3”,
“ os_name”:“ linux”,
“ cpu”:“ x86_64”,
“ static_hostname”:“ demo123”,
“ fqdn”:“ demo123.lab.sierra”
}
选项:
-v详细输出。
- 主持人显示此消息和退出。
用法:habu.http.headers [options]服务器
检索Web服务器的HTTP标头。
例子:
$ habu.http.headers http://duckduckgo.com
{
“服务器”:“ nginx”,
“日期”:“ 2019年4月14日,格林尼治标准时间00:00:55”,
“ content-type”:“ text/html”,
“内容长度”:“ 178”,
“连接”:“饲养”,
“位置”:“ https://duckduckgo.com/”,
“ X-Frame-Options”:“ Sameorigin”,
“ content-security-policy”:“默认 - src https:blob:data:'不安全inline''''''''''''''''''''''''''''''''''''''''''''''''''''
“ X-XSS保护”:“ 1; mode = block”,
“ x-content-type-options”:“ nosniff”,
“推荐人 - 政策”:“原始”,
“ Expect-ct”:“ max-age = 0”,
“到期”:“ 2020年4月13日星期一00:00:55 GMT”,
“ cache-control”:“ max-age = 31536000”
}
选项:
-v详细输出
- 主持人显示此消息和退出。
用法:habu.http.options [选项]服务器
检索Web服务器的可用HTTP方法。
例子:
$ habu.http.options -v http://google.com
{
“允许”:“去,头”
}
选项:
-v详细输出
- 主持人显示此消息和退出。
用法:habu.http.Tech [选项] URL 使用Wappalyzer Apps.json数据库来识别网络上使用的技术 应用。 参考:https://github.com/aliasio/wappalyzer 注意:此工具仅发送一个请求。所以,它是隐身而不是 可疑的。 $ habu.web.tech https://woocomerce.com Google标签管理器未知 mysql未知 nginx未知 PHP未知 原型未知 requirejs未知 WooCommerce 3.8.0 WordPress 5.2.4 Yoast SEO 10.0.1 选项: - 调查 / -NO-CACHE -Format [TXT | CSV | JSON]输出格式 -v详细输出 - 主持人显示此消息和退出。
用法:habu.icmp.ping [选项] IP 发送ICMP回声请求的经典ping工具。 #habu.icmp.ping 8.8.8.8 IP / ICMP 8.8.8.8> 192.168.0.5 Echo-Reply 0 /填充 IP / ICMP 8.8.8.8> 192.168.0.5 Echo-Reply 0 /填充 IP / ICMP 8.8.8.8> 192.168.0.5 Echo-Reply 0 /填充 IP / ICMP 8.8.8.8> 192.168.0.5 Echo-Reply 0 /填充 选项: - 我要使用的文本接口(默认:auto) -c整数发送多少数据包(默认:Infinit) -t Integer超时以秒为单位(默认:2) -W整数之间的数据包之间有几秒钟(默认:1) -v冗长 - 主持人显示此消息和退出。
用法:habu.ip.asn [选项] IP
使用团队Cymru IP2ASN服务获取有关公共IPv4/ipv6的信息。
参考:https://www.team-cymru.com/ip-asn-mapping.html
$ habu.ip.asn 8.8.8.8
{
“ asn”:“ 15169”,
“ net”:“ 8.8.8.0/24”,
“ CC”:“我们”,
“ rir”:“ arin”,
“ Asname”:“ Google -Google LLC,美国”,
“国家”:“美国”
}
选项:
- 主持人显示此消息和退出。
用法:habu.ip.geolocation [选项] ip_address
从https://ipapi.co/获取IP adddress的地理位置。
例子:
$ habu.ip.geolocation 8.8.8.8
{
“ IP”:“ 8.8.8.8”,
“城市”:“山景”,
...
“ ASN”:“ AS15169”,
“ org”:“ Google LLC”
}
选项:
-v详细输出。
- 主持人显示此消息和退出。
用法:habu.ip.internal [选项]
获取本地接口的本地IP地址。
例子:
$ habu.ip.internal
{
“ LO”:{
“ ipv4”:[
{
“ addr”:“ 127.0.0.1”,
“ NetMask”:“ 255.0.0.0”,
“ peer”:“ 127.0.0.1”
}
],,
“ link_layer”:[
{
“ addr”:“ 00:00:00:00:00:00:00”,
“ peer”:“ 00:00:00:00:00:00:00”
}
],,
“ ipv6”:[
{
“ addr”:“ :: 1”,
“ NetMask”:“ FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF/128”
}
这是给出的
},,
...
选项:
-v详细输出。
- 主持人显示此消息和退出。
用法:habu.ip.public [选项] 从https://api.ipify.org获取连接的公共IP地址。 例子: $ habu.ip.public 80.219.53.185 选项: -4,-IPV4打印您的公共IPv4地址(默认) -6,-IPV6打印您的公共IPv6地址 -j, - json以JSON格式打印输出 - 主持人显示此消息和退出。
用法:habu.karma [选项]主机
使用业力服务https://karma.securetia.com检查IP
各种威胁情报 /声誉列表。
$ habu.karma www.google.com
www.google.com-> 64.233.190.99
[
“ hphosts_fsa”,
“ hphosts_psh”,
“ hphosts_emd”
这是给出的
注意:您可以使用主机名或主机的IP进行查询。
选项:
- 主持人显示此消息和退出。
用法:habu.karma.bulk [options] [infile] 显示哪些IP地址使用Karma Online内部黑名单 服务。 例子: $ cat/var/log/auth.log | habu.extract.ipv4 | habu.karma.bulk 172.217.162.4 spamhaus_drop,alienvault_spamming 23.52.213.96清洁 190.210.43.70 alienvault_malicious 选项: - JSON JSON输出 - 巴德仅显示黑名单中的条目 -v详细输出 - 主持人显示此消息和退出。
用法:habu.land [选项] IP 此命令实现了土地攻击,该命令发送伪造的数据包 源IP地址与目标IP相同。也使用 相同的来源和目标端口。 攻击很旧,可用于拒绝旧服务 系统,例如Windows NT 4.0。这里更多信息: https://en.wikipedia.org/wiki/land #sudo habu.land 172.16.0.10 .............. 注意:每个点(。)是一个已发送的数据包。您可以指定发送多少数据包 使用“ -c”选项。默认值永远不会停止。另外,您可以指定 目标端口,带有“ -p”选项。 选项: -c整数发送多少数据包(默认:Infinit) -p要使用的整数端口(默认:135) - 我要使用的文本接口 -v冗长 - 主持人显示此消息和退出。
用法:habu.nc [选项]主机端口 某种NetCat/NCAT替代品。 执行模仿了这种流行工具的感觉。 例子: $ habu.nc -crlf www.portantier.com 80 连接到45.77.113.133 80 头 / HTTP / 1.0 HTTP/1.0 301永久移动 日期:THU,2018年7月26日21:10:51 GMT 服务器:OpenBSD HTTPD 连接:关闭 内容类型:文本/html 内容长度:443 位置:https://www.portantier.com/ 选项: - 家庭[4 | 6 | 46] IP地址家族 -SSL启用SSL -crlf使用CRLF进行EOL序列 - 协议[TCP | UDP]第4层协议要使用 -source -IP文本源IP用于使用 - 用于使用的源端口整数范围源端口 - 主持人显示此消息和退出。
用法:habu.net.contest [选项] 尝试连接到各种服务,并检查是否可以使用您的 互联网连接。 例子: $ habu.net.contest DNS:是的 FTP:是的 SSH:是的 http:是的 https:是的 选项: - 主持人显示此消息和退出。
用法:habu.net.interfaces [选项] 显示系统上可用的网络接口。 例子: #habu.interfaces #名称Mac inet inet6 0 ETH0 80:FA:5B:4B:F9:18无 1 lo 00:00:00:00:00:00 127.0.0.1 :: 1 2 WLAN0 F4:96:34:E5:AE:1B 192.168.0.6无 3 VboxNet0 0a:00:27:00:00:00 192.168.56.1 FE80 :: 800:27FF:27FF:FE00:0 选项: -J输出以JSON格式 - 主持人显示此消息和退出。
用法:habu.nmap.Excluded [选项] 打印一个随机端口,该端口不存在于NMAP-Services文件上,因此不是 由NMAP自动扫描。 对于不断扫描的SSH或RDP等服务有用 他们的默认端口。 例子: #habu.nmap.Excluded 58567 选项: -L整数范围最低端口要考虑 -h整数范围最高端口要考虑 - 主持人显示此消息和退出。
用法:habu.nmap.open [选项] scanfile 阅读NMAP报告并打印开放端口。 打印导致的端口打开读取生成的nmap 输出。 您可以使用它来快速重新将端口列表重新列出其他 工具。 支持和检测3种输出格式(NMAP,GNMAP和XML) 例子: #HABU.NMAP.OPEN PORTANTIER.NMAP 22,80,443 选项: -p [TCP | UDP | SCTP]协议(默认= TCP) - 主持人显示此消息和退出。
用法:habu.nmap.ports [选项] scanfile 阅读NMAP报告并打印经过测试的端口。 打印已测试的端口,读取生成的NMAP输出。 您可以使用它来快速重新将端口列表重新列出其他 工具。 支持和检测3种输出格式(NMAP,GNMAP和XML) 例子: #HABU.NMAP.PORTS PORTANTIER.NMAP 21,22,23,80,443 选项: -p [TCP | UDP | SCTP]协议(默认= TCP) - 主持人显示此消息和退出。
用法:habu.protoscan [选项] IP 发送具有不同协议字段内容的IP数据包以猜测哪个层 有4个协议可用。 输出显示哪些协议不会生成“协议无人可乐” ICMP响应。 例子: $ sudo python cmd_ipscan.py 45.77.113.133 1个ICMP 2 IGMP 4 IPENCAP 6 TCP 17 UDP 41 IPv6 47 GRE 50 ESP 51啊 58 ipv6_icmp 97 Etherip 112 VRRP 115 L2TP 132 SCTP 137 mpls_in_ip 选项: - 我要使用的文本接口 -t每个探针的整数超时(默认:2秒) - 所有探测所有协议(默认值:在 /etc /stoloptions中定义) -v详细输出 - 主持人显示此消息和退出。
用法:habu.server.ftp [选项] 基本的伪造FTP服务器,是窃取用户凭据的唯一目的。 支持SSL/TLS。 例子: #sudo habu.server.ftp -ssl -ssl-cert /tmp/cert.pem -ssl-key /tmp/key.pem 在港口21聆听 从('192.168.0.27',56832)接受的连接 从192.168.0.27收集的证书! Fabian 123456 选项: - 绑定的文本地址(默认:全部) -p整数要使用的端口(默认:21) -SSL启用SSL/TLS(默认:false) -ssl-cert文本SSL/TLS CERT文件 -ssl-key文本SSL/TLS密钥文件 -v冗长 - 主持人显示此消息和退出。
用法:habu.shodan [选项] IP 简单的Shodan API客户端。 打印shodan查询的JSON结果。 例子: $ habu.shodan 216.58.222.36 ASN AS15169 ISP Google 主机名EZE04S06-IN-F4.1E100.NET,GRU09S17-IN-F36.1E100.NET country_code我们 region_code ca 城市山景 org google Open_Ports TCP/443,TCP/80 选项: - 调查 / -NO-CACHE -v详细输出 -Format [TXT | CSV | JSON | NMAP]输出格式 - 主持人显示此消息和退出。
用法:habu.shodan.query [选项]查询
简单的Shodan API客户端。
打印shodan查询的JSON结果。
例子:
$ habu.shodan 8.8.8.8
{
“主机名”:[
“ Google-public-dns-a.google.com”
],,
“ country_code”:“我们”,
“ org”:“ Google”,
“数据”: [
{
“ ISP”:“ Google”,
“运输”:“ UDP”,
“数据”:“递归:启用”,
“ ASN”:“ AS15169”,
“港口”:53,
“主机名”:[
“ Google-public-dns-a.google.com”
这是给出的
}
],,
“端口”:[
53
这是给出的
}
选项:
-c禁用缓存
-v详细输出
-O文件名输出文件(默认:stdout)
- 主持人显示此消息和退出。
用法:habu.tcp.flags [选项] IP 发送带有不同标志的TCP数据包,并确定收到什么响应。 它可用于分析不同的TCP/IP堆栈实现方式 和配置以各种标志组合响应数据包。 例子: #habu.tcp_flags www.portantier.com S-> SA FS-> SA fa-> r sa-> r 默认情况下,命令发送所有可能的标志组合。你可以 指定必须存在哪些标志(减少数量 可能的组合),带有选项'-f'。 另外,您可以指定要在响应上存在的标志 可以显示的数据包,并带有选项'-r'。 使用下一个命令,您会看到所有可能的组合 FIN(f)标志集并生成一个包含rst(r)标志的响应。 例子: #habu.tcp_flags -f f -r r r www.portantier.com FPA-> r FSPA-> r fau-> r 选项: -p要使用的整数端口(默认:80) -f必须发送的文本标志(默认:带有所有标志的fuzz) -r响应标志的文本过滤器(默认:显示所有响应) -v冗长 - 首先停止与匹配的第一响应 - 主持人显示此消息和退出。
用法:habu.tcp.isn [选项] IP 创建TCP连接并打印每个TCP初始序列编号 一。 $ sudo habu.tcp.isn -c 5 www.portantier.com 1962287220 1800895007 589617930 3393793979 469428558 注意:您可以获得图形表示(需要matplotlib 软件包)使用“ -g”选项更好地了解随机性。 选项: -p要使用的整数端口(默认:80) -c整数发送/接收多少数据包(默认:5) - 我要使用的文本接口 -g图(需要matplotlib) -v详细输出 - 主持人显示此消息和退出。
用法:habu.tcp.scan [选项] IP TCP端口扫描仪。 打印使用SYN标志生成响应的端口或(如果显示 使用-a)所有生成响应的端口。 与NMAP相比,这确实是基本的,但是谁在比较? 例子: #HABU.TCP.SCAN -P 22,23,80,443 -S 1 45.77.113.133 22 S-> SA 80 S-> SA 443 S-> SA 选项: -p文本端口要使用(默认值:80)示例:20-23,80,135 - 我要使用的文本接口 -f要使用的文本标志(默认:S) - 探针之间的文本时间(默认:一起发送) -t INTEGER Timeout for each probe (default: 2 seconds) -a Show all responses (default: Only containing SYN flag) -v Verbose output --help Show this message and exit.
Usage: habu.tcp.synflood [OPTIONS] IP Launch a lot of TCP connections and keeps them opened. Some very old systems can suffer a Denial of Service with this. Reference: https://en.wikipedia.org/wiki/SYN_flood 例子: # sudo habu.tcp.synflood 172.16.0.10 ................. Each dot is a packet sent. You can use the options '-2' and '-3' to forge the layer 2/3 addresses. If you use them, each connection will be sent from a random layer2 (MAC) and/or layer3 (IP) address. You can choose the number of connections to create with the option '-c'. The default is never stop creating connections. Note: If you send the packets from your real IP address and you want to keep the connections half-open, you need to setup for firewall to don't send the RST packets. 选项: -i TEXT Wich interface to use (default: auto) -c INTEGER How many packets send (default: infinit) -p INTEGER Port to use (default: 135) -2 Forge layer2/MAC address (default: No) -3 Forge layer3/IP address (default: No) -v Verbose --help Show this message and exit.
Usage: habu.traceroute [OPTIONS] IP TCP traceroute. Identify the path to a destination getting the ttl-zero-during-transit 消息。 Note: On the internet, you can have various valid paths to a device. 例子: # habu.traceroute 45.77.113.133 IP / ICMP 192.168.0.1 > 192.168.0.5 time-exceeded ttl-zero-during-transit / IPerror / TCPerror IP / ICMP 10.242.4.197 > 192.168.0.5 time-exceeded ttl-zero-during-transit / IPerror / TCPerror / Padding IP / ICMP 200.32.127.98 > 192.168.0.5 time-exceeded ttl-zero-during-transit / IPerror / TCPerror / Padding 。 IP / ICMP 4.16.180.190 > 192.168.0.5 time-exceeded ttl-zero-during-transit / IPerror / TCPerror 。 IP / TCP 45.77.113.133:http > 192.168.0.5:ftp_data SA / Padding Note: It's better if you use a port that is open on the remote system. 选项: -p INTEGER Port to use (default: 80) -i TEXT Interface to use --help Show this message and exit.
Usage: habu.upgrade [OPTIONS] Upgrade habu (from https://github.com/fportantier/habu) 选项: --help Show this message and exit.
Usage: habu.usercheck [OPTIONS] USERNAME
Check if the given username exists on various social networks and other
popular sites.
$ habu.usercheck portantier
{
"aboutme": "https://about.me/portantier",
"disqus": "https://disqus.com/by/portantier/",
"github": "https://github.com/portantier/",
"ifttt": "https://ifttt.com/p/portantier",
"lastfm": "https://www.last.fm/user/portantier",
"medium": "https://medium.com/@portantier",
"pastebin": "https://pastebin.com/u/portantier",
"pinterest": "https://in.pinterest.com/portantier/",
"twitter": "https://twitter.com/portantier",
"vimeo": "https://vimeo.com/portantier"
}
选项:
-c Disable cache
-v Verbose output
-w Open each valid url in a webbrowser
--help Show this message and exit.
Usage: habu.version [OPTIONS] 选项: --help Show this message and exit.
Usage: habu.vhosts [OPTIONS] HOST
Use Bing to query the websites hosted on the same IP address.
$ habu.vhosts www.telefonica.com
www.telefonica.com -> 212.170.36.79
[
'www.telefonica.es',
'universitas.telefonica.com',
'www.telefonica.com',
这是给出的
选项:
-c Disable cache
-p INTEGER Pages count (Default: 10)
-f INTEGER First result to get (Default: 1)
--help Show this message and exit.
Usage: habu.virustotal [OPTIONS] INPUT
Send a file to VirusTotal https://www.virustotal.com/ and print the report
in JSON format.
Note: Before send a file, will check if the file has been analyzed before
(sending the sha256 of the file), if a report exists, no submission will
be made, and you will see the last report.
$ habu.virustotal meterpreter.exe
Verifying if hash already submitted: f4826b219aed3ffdaa23db26cfae611979bf215984fc71a1c12f6397900cb70d
Sending file for analysis
Waiting/retrieving the report...
{
"md5": "0ddb015b5328eb4d0cc2b87c39c49686",
"permalink": "https://www.virustotal.com/file/c9a2252b491641e15753a4d0c4bb30b1f9bd26ecff2c74f20a3c7890f3a1ea23/analysis/1526850717/",
"positives": 49,
"resource": "c9a2252b491641e15753a4d0c4bb30b1f9bd26ecff2c74f20a3c7890f3a1ea23",
"response_code": 1,
"scan_date": "2018-05-20 21:11:57",
"scan_id": "c9a2252b491641e15753a4d0c4bb30b1f9bd26ecff2c74f20a3c7890f3a1ea23-1526850717",
"scans": {
"ALYac": {
"detected": true,
"result": "Trojan.CryptZ.Gen",
"update": "20180520",
"version": "1.1.1.5"
},,
... The other scanners ...
},,
"sha1": "5fa33cab1729480dd023b08f7b91a945c16d0a9e",
"sha256": "c9a2252b491641e15753a4d0c4bb30b1f9bd26ecff2c74f20a3c7890f3a1ea23",
"total": 67,
"verbose_msg": "Scan finished, information embedded"
}
选项:
-v Verbose output
--help Show this message and exit.
Usage: habu.web.report [OPTIONS] [INPUT_FILE] Makes a report that includes HTTP headers of websites. Optionally, uses Firefox or Chromium to take a screenshot of the websites. The expected format is one url per line. Creates a directory called 'report' with the content inside. $ echo https://www.portantier.com | habu.web.report 选项: -v Verbose output -s Take a screenshot for each website -b [firefox|chromium-browser] Browser to use for screenshot. --help Show this message and exit.
Usage: habu.web.screenshot [OPTIONS] URL Uses Firefox or Chromium to take a screenshot of the website. $ habu.web.screenshot https://www.portantier.com 选项: -b [firefox|chromium-browser] Browser to use for screenshot. -o TEXT Output file. (default: screenshot.png) --help Show this message and exit.
Usage: habu.whois.domain [OPTIONS] DOMAIN Simple whois client to check domain names. 例子: $ habu.whois.domain google.com registrar MarkMonitor, Inc. whois_server whois.markmonitor.com creation_date 1997-09-15 04:00:00 expiration_date 2028-09-14 04:00:00 name_servers ns1.google.com, ns2.google.com, ns3.google.com, ns4.google.com emails [email protected], [email protected] dnssec unsigned org Google LLC country US state CA 选项: --json Print the output in JSON format --csv Print the output in CSV format --help Show this message and exit.
Usage: habu.whois.ip [OPTIONS] IP Simple whois client to check IP addresses (IPv4 and IPv6). 例子: $ habu.whois.ip 8.8.4.4 asn 15169 asn_registry arin asn_cidr 8.8.4.0/24 asn_country_code US asn_description GOOGLE - Google LLC, US asn_date 1992-12-01 选项: --json Print the output in JSON format --csv Print the output in CSV format --help Show this message and exit.