kali工具的总结

由于篇幅有限,只列举部分,ps:第一次发有什么不对的 还望各位大大指正

nc 瑞士军刀

QQ截图20170128224557.png

[v1.10-41]

使用格式: nc [-参数] 主机名 端口[s] [端口] …

侦听入站: nc -l -p 端口[-参数] [主机名] [端口]

参数选项:

-c shell commands as `-e’; use /bin/sh to exec [dangerous!!]

-e filename program to exec after connect [dangerous!!]

-b    是否允许广播

-g gateway 源路由跳点[s], up to 8

-G num 源路由指针: 4, 8, 12, …

-h    this cruft

-i secs 线路延时间隔, 端口扫描

-k   set keepalive option on socket

-l   监听模式, 入站链接

-n   只使用 IP 地址不通过 DNS解析

-o file 使用十六进制

-p port 本地端口号

-r    跟随本地和端口

-q secs quit after EOF on stdin and delay of secs

-s addr 本地源地址

-T tos set Type Of Service

-t    使用telnet连接

-u    UDP 模式

-v    verbose [use twice to be more verbose]

-w secs 连接目标网络超时时间

-C Send CRLF as line-ending

-z    zero-I/O mode [used for scanning]

端口号可以是一个或者是一段: lo-hi [inclusive];

在端口名称处必须使用反斜杠 (e.g. ‘ftp\-data’).

nmap 扫描工具

图片.png

Nmap 7.30 ( https://nmap.org )

使用方法: nmap [扫描类型(s)] [选项] {目标说明}

目标说明:

通过主机名称, IP 地址, 网段, 等等.

协议: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254

-iL <inputfilename>: 输入 主机或者网段

-iR <主机数>:随机选择目标

–exclude <主机1[,主机2][,主机3],…>: 排除的IP或者网段

–excludefile <exclude_file>: 从文件中排除

主机发现:

-sL: List Scan – 简单的列出目标进行扫描

-sn: Ping Scan – 禁用端口扫描

-Pn: Treat all hosts as online — 不使用主机发现

-PS/PA/PU/PY[portlist]: 通过TCP SYN/ACK, UDP or SCTP 等协议发现指定端口

-PE/PP/PM: 使用ICMP协议响应, 时间戳, 和子网掩码 请求 发现 探测

-PO[protocol list]: 使用ip协议

-n/-R: Never do DNS resolution/Always resolve [默认选项]

–dns-servers <serv1[,serv2],…>: 自动以DNS

–system-dns: 使用系统DNS

–traceroute: 跟踪每个主机的路径

扫描技术:

-sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon 等协议扫描

-sU: UDP 扫描

-sN/sF/sX: 空的TCP, FIN, 和 Xmas 扫描

–scanflags <flags>:自定义tcp扫描

-sI <zombie host[:probeport]>: 空间扫描

-sY/sZ: SCTP初始化 或者 cookie-echo扫描

-sO: IP协议扫描

-b <FTP relay host>: FTP 反弹扫描

规范端口和扫描序列:

-p <port ranges>: 只扫描指定端口

使用规范: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9

–exclude-ports <port ranges>: 排除指定端口扫描

-F: 快速扫描- 扫描常用端口

-r: 连续端口扫描 – 不随机

–top-ports <number>: 扫描 <number> 常见的端口

–port-ratio <ratio>: Scan ports more common than <ratio>

服务和版本检测:

-sV: 探索开放的端口 以确定服务和版本号

–version-intensity <level>:设置从0-9所有的探针

–version-light:最有可能的漏洞探针(intensity 2)

–version-all: 尝试每一个漏洞探针 (intensity 9)

–version-trace: 显示详细的版本扫描活动 (调试)

扫描脚本的使用:

-sC: 默认脚本进行探测

–script=<Lua scripts>: <Lua scripts> 用 逗号分隔的列表, 脚本目录or 脚本类别

–script-args=<n1=v1,[n2=v2,...]>: 为脚本提供参数

–script-args-file=filename:在一个文件中提供NSE脚本(自定义脚本)

–script-trace: 显示所有发送和接收的数据

–script-updatedb: 更新脚本数据库

–script-help=<Lua scripts>: 显示脚本帮助

<Lua scripts> 是一个逗号分隔的脚本文件列表或脚本类.

操作系统识别:

-O: 使用操作系统探测

–osscan-limit: Limit OS detection to promising targets

–osscan-guess: Guess OS more aggressively

定时和性能:

用于定时任务 <时间> 在多少秒, 或者追加’毫秒’ ,

‘秒’ , ‘分钟’ , 或者 ‘小时’去设置 (e.g. 30m).

-T<0-5>: 设置定时模板 (更方便)

–min-hostgroup/max-hostgroup <size>: 并行扫描的最大值和最小值

–min-parallelism/max-parallelism <numprobes>: 并行扫描

–min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <time>: 指定扫描结束时间

–max-retries <tries>: Caps number of port scan probe retransmissions.

–host-timeout <time>: Give up on target after this long

–scan-delay/–max-scan-delay <time>: 调整每次扫描的延迟

–min-rate <number>: 发送的数据包不低于《数值》

–max-rate <number>: 发送的数据包不超过《数值》

防火墙/ IDS逃避和欺骗:

-f; –mtu <val>: 碎片包 (可以选择 w/given MTU)

-D <decoy1,decoy2[,ME],…>: Cloak a scan with decoys

-S <IP_Address>: 源地址欺骗

-e <iface>: 使用指定的接口

-g/–source-port <portnum>:使用给定的端口号

–proxies <url1,[url2],…>: Relay 通过使用 HTTP/SOCKS4 代理

–data <hex string>:附加一个自定义的有效载荷发送数据包

–data-string <string>: 添加一个自定义的ASCII字符串发送的数据包

–data-length <num>: 附加随机数据发送数据包

–ip-options <options>: 用指定的IP选项发送数据包

–ttl <val>: 设置ip到达目标的时间

–spoof-mac <mac address/prefix/vendor name>:欺骗本地MAC地址

–badsum:发送用来效验的伪造数据包 TCP/UDP/SCTP

输出:

-oN/-oX/-oS/-oG <file>:输出正常的扫描, XML格式, s|<rIpt kIddi3,和 Grepable 格式, respectively,或者指定的文件名

-oA <basename>: 一次输出三种主要格式

-v: 增加详细程度 (使用 -vv 显示更详细)

-d: 提高测试的详细程度 (使用 -dd参数更详细)

–reason: 显示端口处于某个特定状态的原因

–open: 只显示开放的端口

–packet-trace: 显示发送和接收的所有数据包

–iflist:打印主机接口和路由

–append-output: 附加到指定的输出文件

–resume <filename>: 回复终止的扫描

–stylesheet <path/URL>: XSL样式表转换XML输出HTML

–webxml: 从Nmap参考样式。或者更便携的XML

–no-stylesheet: Prevent associating of XSL stylesheet w/XML output

杂项:

-6: 启用ipv6扫描

-A: 使操作系统版本检测,检测,脚本扫描和跟踪

–datadir <dirname>: 指定自定义可以使用的数据文件位置

–send-eth/–send-ip:发送使用原始以太网帧或IP数据包

–privileged: 假设用户是最高权限

–unprivileged: 假设用户缺乏原始套接字特权

-V: 打印当前版本

-h: 显示英文帮助文档.

举例:

nmap -v -A scanme.nmap.org

nmap -v -sn 192.168.0.0/16 10.0.0.0/8

nmap -v -iR 10000 -Pn -p 80

查看帮助网页 (https://nmap.org/book/man.html) FOR MORE OPTIONS AND EXAMPLES

sqlmap 

 图片.png

使用格式: sqlmap [参数]

参数:

-h, –help            显示基本的帮助文档

-hh                   显示高级帮助

–version             显示当前版本号

-v VERBOSE            Verbosity level: 0-6 (default 1)

目标:

至少要提供这些参数中的一个来定义

参数:

-d DIRECT           用于连接数据库的连接字符串

-u URL, –url=URL   目标URL (e.g. “http://www.site.com/vuln.php?id=1“)

-l LOGFILE          用Burp 或者 WebScarab解析目标代理文日志

-x SITEMAPURL       远程解析目标网站的路径

-m BULKFILE         扫描文件中的多个目标

-r REQUESTFILE      从文件中加载http地址

-g GOOGLEDORK       用谷歌解析目标

-c CONFIGFILE       从ini的配置文件加载

要求:

这些参数是用来如何连接到目标网站

–method=METHOD     对给定的HTTP方法(例如把武力使用)

–data=DATA         将要发送的数据字符串

–param-del=PARA..  用于分裂参数值的字符

–cookie=COOKIE     HTTP Cookie标头值 cooike注入

–cookie-del=COO..  用于分割饼干值的字符

–load-cookies=L..  含Netscape / wget cookies文件格式

–drop-set-cookie   忽略设置的头部信息

–user-agent=AGENT  HTTP用户代理标头值

–random-agent      使用随机选择HTTP用户代理标头值

–host=HOST         HTTP主机头值

–referer=REFERER   HTTP Referer报头值

-H HEADER, –hea..  额外的头部信息 (e.g. “X-Forwarded-For: 127.0.0.1″)

–headers=HEADERS   额外的标题 (e.g. “Accept-Language: fr\nETag: 123″)

–auth-type=AUTH..  HTTP 的认证类型 (Basic, Digest, NTLM or PKI)

–auth-cred=AUTH..  HTTP认证证书(name:password)

–auth-file=AUTH..  HTTP认证PEM证书/私钥文件

–ignore-401        忽略HTTP 401错误(未授权的)

–proxy=PROXY       使用代理连接到目标网址

–proxy-cred=PRO..  代理身份验证凭据(名称:密码)

–proxy-file=PRO..  从文件中加载代理列表

–ignore-proxy      忽略系统默认代理设置

–tor              使用洋葱路由网络

–tor-port=TORPORT  设置洋葱路由的代理端口

–tor-type=TORTYPE  设置Tor代理类型(HTTP、SOCKS4或SOCKS5(默认))

–check-tor         查看洋葱路由的正确使用

–delay=DELAY       每个HTTP请求之间的想应时间

–timeout=TIMEOUT   等待超时连接(默认30)默认为秒

–retries=RETRIES   重试时,连接超时(默认3)

–randomize=RPARAM 给定参数的随机变化值(s)

–safe-url=SAFEURL  在测试过程中经常访问的网址地址

–safe-post=SAFE..  post数据发送到一个安全的网址

–safe-req=SAFER..  安全HTTP请求从文件加载

–safe-freq=SAFE..  一个给定的安全地址的两次访问之间的测试请求

–skip-urlencode    跳过有效载荷数据的网址编码

–csrf-token=CSR..  参数用来举行反CSRF令牌

–csrf-url=CSRFURL  URL地址访问提取防CSRF令牌

–force-ssl         使用SSL / HTTPS力

–hpp               使用HTTP参数污染的方法

–eval=EVALCODE     Evaluate provided Python code before the request 

(e.g.”import hashlib;id2=hashlib.md5(id).hexdigest()”)

优化参数:

这些选项可用于优化性能sqlmap

-o                  打开所有的优化开关

–predict-output    普通查询输出预测

–keep-alive        使用持久HTTP(S)连接

–null-connection   检索页面长度没有实际的HTTP响应体

–threads=THREADS   最大并发HTTP请求数(S)(默认为1)

注入:

这些选项可以用来指定要测试的参数,提供自定义注入有效载荷和随意篡改剧本

-p TESTPARAMETER    可检验参数(s)

–skip=SKIP         对给定参数的跳过测试(s)

–skip-static       跳过不出现动态的测试参数

–dbms=DBMS         强制后端数据库管理系统到这个值

–dbms-cred=DBMS..  数据库管理系统认证证书(用户:密码)

–os=OS             强制后端的数据库管理系统操作系统到这个值

–invalid-bignum    使用大数字无效值

–invalid-logical   使用逻辑操作的无效值

–invalid-string    使用随机字符串无效值

–no-cast           关闭有效载荷模块

–no-escape         关闭字符串逃逸机制

–prefix=PREFIX     注入有效载荷前缀字符串

–suffix=SUFFIX     注入有效载荷后缀字符串

–tamper=TAMPER     用于篡改注入数据的给定脚本

检测:

这些选项可用于自定义检测阶段

–level=LEVEL       要执行的测试水平(1-5,默认为1)

–risk=RISK         要执行的测试的风险(1-3,默认为1)

–string=STRING     当查询评估为真时的字符串匹配

–not-string=NOT..  当查询评估为假时的字符串匹配

–regexp=REGEXP     正则表达式匹配查询时进行真正的

–code=CODE        HTTP代码时匹配的查询表达式为真

–text-only         仅基于文本内容的页面比较

–titles            仅根据他们的标题进行比较

技术:

这些选项可以用来调整特定SQL注入测试技术

–technique=TECH    SQL注入技术的使用(默认“beustq”)

–time-sec=TIMESEC  延迟数据库管理系统响应的秒数(默认为5)

–union-cols=UCOLS  为联合查询的SQL注入测试列范围

–union-char=UCHAR  字符使用bruteforcing列数

–union-from=UFROM  表使用从联合查询的SQL注入的一部分

–dns-domain=DNS..  使用的域名DNS泄露攻击

–second-order=S..  搜索的第二级响应结果页面的网址

指纹:

-f, –fingerprint  执行广泛的数据库管理系统版本指纹

枚举参数:

这些选项可以用来枚举后端数据库管理系统信息、结构和数据中包含的平台.此外,你可以运行你自己的SQL语句

-a, –all           Retrieve everything

-b, –banner        检索数据库标志

–current-user      检索数据库管理系统当前用户

–current-db        检索数据库

–hostname         检索数据库服务器的主机名

–is-dba            检测当前用户是不是数据库的管理员

–users             枚举数据库用户

–passwords        枚举数据库用户密码的哈希值

–privileges        枚举数据库管理系统用户权限

–roles            枚举数据库管理系统用户角色

–dbs               枚举数据库

–tables            枚举数据库管理系统中的数据库表

–columns           枚举数据库管理中的数据库表列

–schema           枚举数据库架构

–count             搜索表的条目数

–dump              扒裤衩子

–dump-all          扒数据库数毛毛

–search            搜索数据库列和数据库名称

–comments          检测数据库的信息

-D DB               枚举数据库

-T TBL              枚举数据库的表

-C COL              枚举数据库表的列

-X EXCLUDECOL       不枚举的数据库管理系统数据库表

-U USER             数据库用户枚举

    –exclude-sysdbs    Exclude DBMS system databases when enumerating tables

    –pivot-column=P..   主数据库表名称

    –where=DUMPWHERE   Use WHERE condition while table dumping

    –start=LIMITSTART  查询输出第一个输出条目的检索

    –stop=LIMITSTOP    查询最后输出项的检索

    –first=FIRSTCHAR   查询第一个输出字字符检索

    –last=LASTCHAR     查询最后输出字字符检索

    –sql-query=QUERY   要执行的SQL语句

    –sql-shell        提示一个SQL shell

    –sql-file=SQLFILE  从给定的文件执行SQL语句(S)

暴力破解:

这些选项可以用来运行蛮力测试

    –common-tables     检查常见表的存在性

    –common-columns    检查公共列的存在

用户定义函数注入:

这些选项可用于创建自定义的用户定义函数

    –udf-inject        注入用户自定义的函数

    –shared-lib=SHLIB  共享库的本地路径

 文件系统访问:

这些选项可用于访问后台数据库管理系统的底层文件系统

    –file-read=RFILE   从后台的数据库管理系统文件系统中读取一个文件

    –file-write=WFILE  在后台的数据库管理系统文件系统上写一个本地文件

    –file-dest=DFILE   后台数据库的绝对路径写

操作系统访问:

这些选项可用于访问后台数据库管理系统底层操作系统

    –os-cmd=OSCMD      执行操作系统命令

    –os-shell          用于交互式操作系统shell的提示

    –os-pwn            显示OOB shell, Meterpreter or或者VNC

    –os-smbrelay       One click prompt for an OOB shell, Meterpreter or VNC

    –os-bof            存储过程缓冲区溢出开发

    –priv-esc          数据库进程用户权限升级

    –msf-path=MSFPATH  本地路径在metasploit框架安装

    –tmp-path=TMPPATH  临时文件目录的远程绝对路径

Windows注册表访问:

这些选项可用于访问后台数据库管理系统的注册表

    –reg-read          读取一个窗口注册表项

    –reg-add           写一个窗口注册表项的数据

    –reg-del           删除一个注册表项

    –reg-key=REGKEY    Windows注册表

    –reg-value=REGVAL  注册表项的关键值

    –reg-data=REGDATA  注册表键值数据

    –reg-type=REGTYPE  注册表键值类型

常规:

这些选项可以用来设置一些常规的工作参数

    -s SESSIONFILE      从存储加载会话(sqlite)文件

    -t TRAFFICFILE      Log all HTTP traffic into a textual file

    –batch             Never ask for user input, use the default behaviour

    –binary-fields=..  Result fields having binary values (e.g. “digest”)

    –charset=CHARSET   用于数据检索的力字符编码

    –crawl=CRAWLDEPTH  从目标网址开始抓取网站

    –crawl-exclude=..  正则表达式从爬行排除页 (e.g. “logout”)

    –csv-del=CSVDEL    限定使用CSV输出特性 (default “,”)

    –dump-format=DU..  转储数据格式 (CSV (default), HTML or SQLITE)

    –eta               显示为每个输出估计的到达时间

    –flush-session     当前目标的刷新会话文件

    –forms           目标网址的解析和测试形式

    –fresh-queries     忽略存储在会话文件中的查询结果

    –hex              使用数据库管理系统的十六进制函数(S)进行数据检索

    –output-dir=OUT..  自定义输出目录路径

    –parse-errors      解析和显示响应中的数据库管理系统错误消息    

    –save=SAVECONFIG   保存选项来配置INI文件

    –scope=SCOPE       正则表达式过滤提供代理日志目标

    –test-filter=TE..  选择测试的有效载荷和/或头文件(e.g. ROW)

    –test-skip=TEST..  跳过试验载荷和/或标题 (e.g. BENCHMARK)

    –update           更新sqlmap

杂项:

    -z MNEMONICS        短期记忆(e.g. “flu,bat,ban,tec=EU”)

    –alert=ALERT       运行主机操作系统命令(s)时,SQL注入是发现

    –answers=ANSWERS   漏洞答案集(e.g. “quit=N,follow=N”)

    –beep              当有注入点被发现的时候报警

    –cleanup           清理数据库从sqlmap具体UDF和表

    –dependencies      检查没有的(非核心)sqlmap依赖包

    –disable-coloring  禁用控制台输出着色

    –gpage=GOOGLEPAGE 使用谷歌这一结果从指定的页码

    –identify-waf      使一个WAF/IPS / IDS保护全面测试

    –mobile           模仿智能手机通过HTTP用户代理标头

    –offline           在脱机模式下工作(只使用会话数据)

    –page-rank         显示网页排名(PR)为谷歌这一结果

    –purge-output      安全地删除输出目录中的所有内容

    –skip-waf         跳过WAF/IPS / IDS保护启发式检测

    –smart             只有积极的启发式(S)进行彻底的测试

    –sqlmap-shell      提示一个互动的sqlmap shell

    –tmp-dir=TMPDIR    用于存储临时文件的本地目录

    –wizard           为初学者用户提供简单的向导界面

由于篇幅有限,加上本人英语常年不及格,略有错误 望见谅 

文末 附加186个kali linux工具翻译链接 

链接:http://pan.baidu.com/s/1ge8SPPL 密码:n1ed

posted @ 2017-02-12 13:09  HacTF  阅读(4551)  评论(0编辑  收藏  举报