termux基础
termux基础玩法推荐国光写的手册:Termux 高级终端安装使用配置教程 | 国光 (sqlsec.com)
termux安装
个人使用F-Droid安装的termux:Termux | F-Droid - Free and Open Source Android App Repository
基础知识
这些基础知识简单了解一下就可以了,Linux 用的多了就会慢慢熟悉理解了。
快捷键表
Ctrl
键是终端用户常用的按键,但大多数触摸键盘都没有这个按键,因此 Termux 使用音量减小按钮
来模拟Ctrl
键。 例如,在触摸键盘上按音量减小
+ L
就相当于是键盘上按Ctrl + L
的效果一样,达到清屏的效果。
-
Ctrl + A
-> 将光标移动到行首 -
Ctrl + C
-> 中止当前进程 -
Ctrl + D
-> 注销终端会话 -
Ctrl + E
-> 将光标移动到行尾 -
Ctrl + K
-> 从光标删除到行尾 -
Ctrl + U
-> 从光标删除到行首 -
Ctrl + L
-> 清除终端 -
Ctrl + Z
-> 挂起(发送SIGTSTP到)当前进程 -
Ctrl + alt + C
-> 打开新会话(仅适用于 黑客键盘)
音量加键
也可以作为产生特定输入的特殊键
.
-
音量加 + E
-> Esc键 -
音量加 + T
-> Tab键 -
音量加 + 1
-> F1(音量增加 + 2
→ F2…以此类推) -
音量加 + 0
-> F10 -
音量加 + B
-> Alt + B,使用readline时返回一个单词 -
音量加 + F
-> Alt + F,使用readline时转发一个单词 -
音量加 + X
-> Alt+X -
音量加 + W
-> 向上箭头键 -
音量加 + A
-> 向左箭头键 -
音量加 + S
-> 向下箭头键 -
音量加 + D
-> 向右箭头键 -
音量加 + L
-> | (管道字符) -
音量加 + H
-> 〜(波浪号字符) -
音量加 + U
-> _ (下划线字符) -
音量加 + P
-> 上一页 -
音量加 + N
-> 下一页 -
音量加 + .
-> Ctrl + \(SIGQUIT) -
音量加 + V
-> 显示音量控制 -
音量加 + Q
-> 切换显示的功能键视 -
音量加 + K
-> 切换显示的功能键视图
快捷键用的熟悉的话也可以极大提高操作的效率。
基本命令
Termux 除了支持 apt
命令外,还在此基础上封装了pkg
命令,pkg
命令向下兼容 apt
命令。apt
命令大家应该都比较熟悉了,这里直接简单的介绍下pkg
命令:
pkg search <query> # 搜索包
pkg install <package> # 安装包
pkg uninstall <package> # 卸载包
pkg reinstall <package> # 重新安装包
pkg update # 更新源
pkg upgrade # 升级软件包
pkg list-all # 列出可供安装的所有包
pkg list-installed # 列出已经安装的包
pkg show <package> # 显示某个包的详细信息
pkg files <package> # 显示某个包的相关文件夹路径
建议大家使用 pkg 命令,因为 pkg 命令每次安装的时候自动执行 apt update 命令,还是比较方便的。
软件安装
除了通过上述的 pkg
命令安装软件以外,如果我们有 .deb
软件包文件,也可以使用 dpkg
进行安装。
dpkg -i ./package.de # 安装 deb 包
dpkg --remove \[package name\] # 卸载软件包
dpkg -l # 查看已安装的包
man dpkg # 查看详细文档
termux换清华源
图形界面(TUI)替换
在较新版的 Termux 中,官方提供了图形界面(TUI)来半自动替换镜像,推荐使用该种方式以规避其他风险。 在 Termux 中执行如下命令
termux-change-repo
在图形界面引导下,使用自带方向键可上下移动。 第一步使用空格选择需要更换的仓库,之后在第二步选择 TUNA/BFSU 镜像源。确认无误后回车,镜像源会自动完成更换。
安装python、golang编译器
在安装前记得pkg update更新源,默认会安装最新的与是arm64内核的版本
python
pkg install -y python
安装完python后,记得要安装pip;安卓手机是嵌入式的Linux系统,采用Linux
更新pip
python -m pip install --upgrade pip
golang
pkg install -y golang
goproxy问题
设置go的代理,解决go tcp访问不得目标的问题(国内的网,没办法,乖乖设置代理吧)
Go1.11之后设置GOPROXY命令为:
export GOPROXY=https://goproxy.cn
Go1.13之后GOPROXY
默认值为https://proxy.golang.org
,在国内是无法访问的,所以十分建议大家设置GOPROXY,这里我推荐使用goproxy.cn。
go env -w GOPROXY=https://goproxy.cn,direct
安装git、wget
安装git对GitHub、gitee的项目源码进行拉取,wget对项目里的程序压缩包进行拉取
pkg install git wget
子域名资产侦查笔记
个人推荐一些感觉比较好的笔记,对于资产的收集各有各的思路,便不进行撰述了,当然有发现好的记得@我
漏洞赏金备忘单 (m0chan.github.io)
子域枚举备忘单 ·渗透测试土地 (pentester.land)
安装amass、oneforall、sublist3r、字典
amass
OWASP/Amass:深入的攻击面映射和资产发现 (github.com)
安装:
amass安装指南Amass/install.md at master ·OWASP/Amass (github.com)
采用wget拉取程序压缩包方式进行安装:
wget https://github.com/OWASP/Amass/releases/download/v3.17.1/amass_linux_arm64.zip
解压zip包
unzip amass_linux_arm64.zip
命令行用法信息
用户手册:Amass/user_guide.md at master ·OWASP/Amass (github.com)
amass 工具具有下面显示的几个子命令,用于处理您的 Internet 暴露调查。
Subcommand | Description |
---|---|
intel | 收集开源情报以调查目标组织 |
enum | 对向互联网公开的系统执行 DNS 枚举和网络映射 |
viz | 生成枚举的可视化以进行探索性分析 |
track | 将枚举结果与常见目标组织进行比较 |
db | 管理存储枚举结果的图形数据库 |
每个子命令都有自己的参数,如以下各节所示。
intel子命令
子命令可以帮助您发现与您正在调查的组织关联的其他根域名。此子命令使用配置文件的数据源部分来获取被动智能,例如反向 whois 信息。
Flag | Description | Example |
---|---|---|
-active | 启用主动侦察方法 | amass intel -active -addr 192.168.2.1-64 -p 80,443,8080 |
-addr | IP 和范围 (192.168.1.1-254),以逗号分隔 | amass intel -addr 192.168.2.1-64 |
-asn | 以逗号分隔的 ASN(可多次使用) | amass intel -asn 13374,14618 |
-cidr | 用逗号分隔的CIDR(可以多次使用) | amass intel -cidr 104.154.0.0/15 |
-config | INI 配置文件的路径 | amass intel -config config.ini |
-d | 以逗号分隔的域名(可多次使用) | amass intel -whois -d example.com |
-demo | 审查输出以使其适合演示 | amass intel -demo -whois -d example.com |
-df | 提供根域名的文件的路径 | amass intel -whois -df domains.txt |
-dir | 包含图形数据库的目录的路径 | amass intel -dir PATH -cidr 104.154.0.0/15 |
-ef | 提供要排除的数据源的文件的路径 | amass intel -whois -ef exclude.txt -d example.com |
-exclude | 要排除的用逗号分隔的数据源名称 | amass intel -whois -exclude crtsh -d example.com |
-if | 提供要包含的数据源的文件的路径 | amass intel -whois -if include.txt -d example.com |
-include | 要包含的数据源名称,以逗号分隔 | amass intel -whois -include crtsh -d example.com |
-ip | 显示发现的名称的 IP 地址 | amass intel -ip -whois -d example.com |
-ipv4 | 显示发现的名称的 IPv4 地址 | amass intel -ipv4 -whois -d example.com |
-ipv6 | 显示发现的名称的 IPv6 地址 | amass intel -ipv6 -whois -d example.com |
-list | 打印所有可用数据源的名称 | amass intel -list |
-log | 将写入错误的日志文件的路径 | amass intel -log amass.log -whois -d example.com |
-max-dns-queries | 最大并发 DNS 查询数 | amass intel -max-dns-queries 200 -whois -d example.com |
-o | 文本输出文件的路径 | amass intel -o out.txt -whois -d example.com |
-org | 根据 AS 描述信息提供的搜索字符串 | amass intel -org Facebook |
-p | 以逗号分隔的端口(默认值:80、443) | amass intel -cidr 104.154.0.0/15 -p 443,8080 |
-r | 首选 DNS 解析器的 IP 地址(可多次使用) | amass intel -r 8.8.8.8,1.1.1.1 -whois -d example.com |
-rf | 提供首选 DNS 解析程序的文件的路径 | amass intel -rf data/resolvers.txt -whois -d example.com |
-src | 提供首选 DNS 解析程序的文件的路径 | amass intel -src -whois -d example.com |
-timeout | 执行枚举的分钟数 | amass intel -timeout 30 -d example.com |
-whois | 所有发现的域都通过反向 whois 运行 | amass intel -whois -d example.com |
enum子命令
此子命令将在填充所选图形数据库时执行 DNS 枚举和网络映射。配置文件中所有可用的设置都与此子命令相关。以下标志可用于配置:
Flag | Description | Example |
---|---|---|
-active | 启用主动侦察方法 | amass enum -active -d example.com -p 80,443,8080 |
-aw | 用于更改的其他单词列表文件的路径 | amass enum -aw PATH -d example.com |
-bl | 不会被调查的子域名黑名单 | amass enum -bl blah.example.com -d example.com |
-blf | 提供列入黑名单的子域的文件的路径 | amass enum -blf data/blacklist.txt -d example.com |
-brute | 执行暴力破解子域枚举 | amass enum -brute -d example.com |
-config | INI 配置文件的路径 | amass enum -config config.ini |
-d | 以逗号分隔的域名(可多次使用) | amass enum -d example.com |
-demo | 审查输出以使其适合演示 | amass enum -demo -d example.com |
-df | 提供根域名的文件的路径 | amass enum -df domains.txt |
-dir | 包含图形数据库的目录的路径 | amass enum -dir PATH -d example.com |
-ef | 提供要排除的数据源的文件的路径 | amass enum -ef exclude.txt -d example.com |
-exclude | 要排除的用逗号分隔的数据源名称 | amass enum -exclude crtsh -d example.com |
-if | 提供要包含的数据源的文件的路径 | amass enum -if include.txt -d example.com |
-include | 要包含的数据源名称,以逗号分隔 | amass enum -include crtsh -d example.com |
-ip | 显示发现的名称的 IP 地址 | amass enum -ip -d example.com |
-ipv4 | 显示发现的名称的 IPv4 地址 | amass enum -ipv4 -d example.com |
-ipv6 | 显示发现的名称的 IPv6 地址 | amass enum -ipv6 -d example.com |
-json | JSON 输出文件的路径 | amass enum -json out.json -d example.com |
-list | 打印所有可用数据源的名称 | amass enum -list |
-log | 将写入错误的日志文件的路径 | amass enum -log amass.log -d example.com |
-max-dns-queries | 在版本 4.0 中,已弃用的标志将被 dns-qps 替换 | amass enum -max-dns-queries 200 -d example.com |
-dns-qps | 所有解析程序中每秒的最大 DNS 查询数 | amass enum -dns-qps 200 -d example.com |
-rqps | 每个不受信任的解析程序每秒的最大 DNS 查询数 | amass enum -rqps 10 -d example.com |
-trqps | 每个受信任的解析程序每秒的最大 DNS 查询数 | amass enum -trqps 20 -d example.com |
-min-for-recursive | 在递归暴力破解之前看到的子域标签(默认值:1) | amass enum -brute -min-for-recursive 3 -d example.com |
-max-depth | 用于暴力破解的最大子域标签数 | amass enum -brute -max-depth 3 -d example.com |
-nf | 提供已知子域名的文件的路径(来自其他工具/源) | amass enum -nf names.txt -d example.com |
-noalts | 禁用更改名称的生成 | amass enum -noalts -d example.com |
-norecursive | 关闭递归暴力破解 | amass enum -brute -norecursive -d example.com |
-o | 文本输出文件的路径 | amass enum -o out.txt -d example.com |
-oA | 用于命名所有输出文件的路径前缀 | amass enum -oA amass_scan -d example.com |
-passive | 纯粹的被动执行模式 | amass enum --passive -d example.com |
-p | 以逗号分隔的端口(默认值:443) | amass enum -d example.com -p 443,8080 |
-r | 不受信任的 DNS 解析程序的 IP 地址(可多次使用) | amass enum -r 8.8.8.8,1.1.1.1 -d example.com |
-tr | 受信任的 DNS 解析器的 IP 地址(可多次使用) | amass enum -tr 8.8.8.8,1.1.1.1 -d example.com |
-rf | 提供不受信任的 DNS 解析程序的文件的路径 | amass enum -rf data/resolvers.txt -d example.com |
-trf | 提供不受信任的 DNS 解析程序的文件的路径 | amass enum -trf data/trusted.txt -d example.com |
-src | 打印发现名称的数据源 | amass enum -src -d example.com |
-timeout | 执行枚举的分钟数 | amass enum -timeout 30 -d example.com |
-w | 其他单词列表文件的路径 | amass enum -brute -w wordlist.txt -d example.com |
viz子命令
创建启发性的网络图形可视化,为收集的信息添加结构。此子命令仅利用配置文件中的"output_directory"和远程图形数据库设置。
为可视化生成的文件将在当前工作目录中创建,并命名为amass_TYPE
用于将 DNS 和基础结构结果输出为网络图的开关:
Flag | Description | Example |
---|---|---|
-config | INI 配置文件的路径 | amass viz -config config.ini -d3 |
-d | 以逗号分隔的域名(可多次使用) | amass viz -d3 -d example.com |
-d3 | 输出 D3.js v4 力模拟 HTML 文件 | amass viz -d3 -d example.com |
-df | 提供根域名的文件的路径 | amass viz -d3 -df domains.txt |
-dir | 包含图形数据库的目录的路径 | amass viz -d3 -dir PATH -d example.com |
-enum | 通过数据库列表中的索引识别枚举 | amass viz -enum 1 -d3 -d example.com |
-gexf | 输出到图形交换 XML 格式 (GEXF) | amass viz -gephi -d example.com |
-graphistry | Output Graphistry JSON | amass viz -graphistry -d example.com |
-i | 累积数据操作 JSON 输入文件的路径 | amass viz -d3 -d example.com |
-maltego | 输出 Maltego 图形表 CSV 文件 | amass viz -maltego -d example.com |
track子命令
显示包含用于监视目标的攻击面的相同目标的枚举之间的差异。此子命令仅利用配置文件中的"output_directory"和远程图形数据库设置。用于跨图形数据库中的枚举执行 Internet 暴露监视的标志:
Flag | Description | Example |
---|---|---|
-config | INI 配置文件的路径 | amass track -config config.ini |
-d | 以逗号分隔的域名(可多次使用) | amass track -d example.com |
-df | 提供根域名的文件的路径 | amass track -df domains.txt |
-dir | 包含图形数据库的目录的路径 | amass track -dir PATH |
-history | 显示所有枚举对之间的差异 | amass track -history |
-last | 要包含在跟踪中的最近枚举数 | amass track -last NUM |
-since | 排除指定日期之前的所有枚举(格式:01/02 15:04:05 2006 MST) | amass track -since DATE |
db子命令
执行图形数据库的查看和操作。此子命令仅利用配置文件中的"output_directory"和远程图形数据库设置。用于与图形数据库中的枚举结果进行交互的标志包括:
Flag | Description | Example |
---|---|---|
-config | INI 配置文件的路径 | amass db -config config.ini |
-d | 以逗号分隔的域名(可多次使用) | amass db -d example.com |
-demo | 审查输出以使其适合演示 | amass db -demo -d example.com |
-df | 提供根域名的文件的路径 | amass db -df domains.txt |
-dir | 包含图形数据库的目录的路径 | amass db -dir PATH |
-enum | 通过列表中的索引识别枚举 | amass db -enum 1 -show |
-import | 将累积数据操作 JSON 文件导入图形数据库 | amass db -import PATH |
-ip | 显示发现的名称的 IP 地址 | amass db -show -ip -d example.com |
-ipv4 | 显示发现的名称的 IPv4 地址 | amass db -show -ipv4 -d example.com |
-ipv6 | 显示发现的名称的 IPv6 地址 | amass db -show -ipv6 -d example.com |
-json | JSON 输出文件或"-"的路径 | amass db -names -silent -json out.json -d example.com |
-list | 在数据库中打印枚举并筛选指定的域 | amass db -list |
-names | 打印刚刚发现的名称 | amass db -names -d example.com |
-nocolor | 禁用彩色输出 | amass db -names -nocolor -d example.com |
-o | 文本输出文件的路径 | amass db -names -o out.txt -d example.com |
-show | 打印枚举索引 + 提供的域的结果 | amass db -show |
-silent | 在执行期间禁用所有输出 | amass db -names -silent -json out.json -d example.com |
-src | 打印发现名称的数据源 | amass db -show -src -d example.com |
-summary | 仅打印 ASN 表摘要 | amass db -summary -d example.com |
oneforall
安装oneforall
拉取gitee的在国内比较快
git clone https://gitee.com/shmilylty/OneForAll.git
安装oneforall的依赖
cd OneForAll/
python3 -m pip install -U pip setuptools wheel -i https://mirrors.aliyun.com/pypi/simple/
pip3 install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
#pip -r 是指定pip安装指定的txt文件编辑好的配置依赖库
用法
NAMEoneforall.py - OneForAll帮助信息
SYNOPSISoneforall.py COMMAND | --target=TARGET <flags>
DESCRIPTIONOneForAll是一款功能强大的子域收集工具
Example:python3 oneforall.py versionpython3 oneforall.py --target example.com runpython3 oneforall.py --targets ./domains.txt runpython3 oneforall.py --target example.com --valid None runpython3 oneforall.py --target example.com --brute True runpython3 oneforall.py --target example.com --port small runpython3 oneforall.py --target example.com --fmt csv runpython3 oneforall.py --target example.com --dns False runpython3 oneforall.py --target example.com --req False runpython3 oneforall.py --target example.com --takeover False runpython3 oneforall.py --target example.com --show True run
Note:参数alive可选值True,False分别表示导出存活,全部子域结果参数port可选值有'default', 'small', 'large', 详见config.py配置参数fmt可选格式有 'csv','json'参数path默认None使用OneForAll结果目录生成路径
ARGUMENTSTARGET单个域名(二选一必需参数)TARGETS每行一个域名的文件路径(二选一必需参数)
FLAGS--brute=BRUTEs--dns=DNSDNS解析子域(默认True)--req=REQHTTP请求子域(默认True)--port=PORT请求验证子域的端口范围(默认只探测80端口)--valid=VALID只导出存活的子域结果(默认False)--fmt=FMT结果保存格式(默认csv)--path=PATH结果保存路径(默认None)--takeover=TAKEOVER检查子域接管(默认False)
sublist3r
安装
git clone https://github.com/aboul3la/Sublist3r.git
安装依赖
cd /Sublist3r
pip install -r requirements.txt
用法
简写 | 长篇 | 描述 |
---|---|---|
-d | –域 | 用于枚举的子域的域名 |
-乙 | –蛮力 | 启用子布鲁特暴力破解模块 |
-p | –端口 | 针对特定 tcp 端口扫描找到的子域 |
-v | –详细 | 启用详细模式并实时显示结果 |
-t | –线程 | 用于子病毒暴力破解的线程数 |
-e | –发动机 | 指定以逗号分隔的搜索引擎列表 |
-o | –输出 | 将结果保存到文本文件 |
-h | –帮助 | 显示帮助消息并退出 |
字典
web-fuzzing-box
git clone https://github.com/gh0stkey/Web-Fuzzing-Box.git
要准备考试了,不然会写个脚本工具,来调用,进行资产收集和txt文本去重,加强子域名收集,毕竟api类的再好,也是有限制的,还是得靠自己呢。
今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。
网络安全学习资源分享:
最后给大家分享我自己学习的一份全套的网络安全学习资料,希望对想学习 网络安全的小伙伴们有帮助!
零基础入门
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
【点击免费领取】CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》
1.学习路线图
攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去接私活完全没有问题。
2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。【点击领取视频教程】
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本【点击领取技术文档】
(都打包成一块的了,不能一一展开,总共300多集)
3.技术文档和电子书
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本【点击领取书籍】
4.工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。
最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。
这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。
参考解析:深信服官网、奇安信官网、Freebuf、csdn等
内容特点:条理清晰,含图像化表示更加易懂。
内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…
朋友们如果有需要全套《黑客&网络安全入门&进阶学习资源包》,点击下方链接即可前往免费获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》
这份完整版的学习资料已经上传CSDN,也可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】