目录
连接目标
1.1 设置认证信息
1.2 配置代理
1.3 Tor匿名网络
1.4 检测WAF/IPS
1.5 调整连接选项
1.6 处理连接错误
连接目标
场景1:通过代理网络上网,需要进行相应配置才可以成功访问目标主机
场景2:目标网站需要进行身份认证后才可以正常连接
1.1 设置认证信息
选项--auth-type用来设置HTTP认证类型。其中,支持的认证类型有Basic、Digest、NTLM和PKI。
Basic(基础)认证:
客户端通过明文(Base64编码格式)的形式将用户名和密码传输到服务端进行认证
Digest(摘要)认证:
它在传输密码前会对密码进行MD5加密处理,同时会配以密码随机数。密码随机数是由系统算法产生的一个随机数或伪随机数,用于对消息进行签名,每个随机数只能使用一次。由于每个随机数只使用一次,然后就会被标记为过期,因此可以防止重放攻击。
NTLM认证
NTLM是微软推出的安全协议,提供了认证、完整性与加密服务
PKI认证
PKI是(Public Key Infrastructure,公钥基础架构)的缩写,其主要功能是绑定证书持有者的身份和相关的密钥对,为用户提供方便的证书申请、证书作废、证书获取及证书状态查询的途径,并利用数字证书及相关的各种服务对通信中的各个参与者进行身份认证,并实现数据的完整性、抗抵赖性和保密性。
指定认证凭证:
-auth-cred用来指定认证凭证。其中,Basic和Digest的认证凭证格式为name:password,name表示用户名,password表示密码;NTLM的认证凭证格式为DOMAIN\username:password,DOMAIN表示目标的主机名;PKI认证,则认证信息将保存在私钥文件中。对该目标进行SQL注入测试时,必须指定其私钥文件,选项--auth-file用来指定PEM格式的证书文件或私钥文件
1.2 配置代理
选项--proxy用来指定代理服务器地址,格式为http://url:port或https://url:port。其中,url是代理服务器的主机名或者IP地址,port为代理服务监听的端口。
指定代理凭证:
选项--proxy-cred用来指定代理凭证,格式为name:password。其中,name表示用户名,password表示密码。
指定代理列表:
将所有代理IP地址放在一个文件中。当用户实施渗透测试时,如果第一个代理地址被拒绝的话,将自动跳转到下一个代理地址,然后再进行尝试。sqlmap提供了选项--proxy-file用来指定代理服务器列表。(proxy.txt为自己创建代理服务器列表记录)
1.3 Tor匿名网络
Tor(The Onion Router,洋葱路由)是一种在计算机网络上进行匿名沟通的技术。通过一系列的加密包装,每一个网络节点(包含目的地)都只知道上一个节点的位置,但无法知道整个发送路径及原发送者的地址,所以Tor匿名网络更隐蔽。
1、kali搭建tor环境,安装
2、启动tor服务
3、查看tor服务是否启动成功
4、使用Tor匿名网络
--tor用来指定使用Tor匿名网络
5、检查Tor匿名网络、设置代理端口、代理类型(HTTP、SOCKS4和SOCKS5(默认为SOCKS5))
-check-tor选项进行检测 --tor-port设置代理端口 --tor-type设置代理类型
1.4 检测WAF/IPS
sqlmap默认会检测目标是否有WAF/IPS设备。为了尽可能连接上目标,用户可以设置跳过WAF/IPS检测。sqlmap提供了选项--skip-waf可以设置跳过WAF/IPS检测。(注意:只是跳过检查,不是绕过)
1.5 调整连接选项
对一些不稳定的连接目标进行测试时,使用默认选项可能达不到预期的效果。sqlmap提供了选项--unstable可以自动为不稳定的连接调整选项。(unstable的中文意思就是不稳定)
1.6 处理连接错误
忽略HTTP错误状态码:-ignore-code=404
忽略重定向:--ignore-redirects
忽略连接超时:-ignore-timeouts