CISP-PTE学习笔记一

非常基础但很实用的技术,巩固一下。

1、google的搜索语法

intitle:parent directory  
查找开放了目录遍历的网站
 
Site:xxx.net(目标网站)filetype:xls
查找目标网站为图方便链接至网上的图标等敏感文件
 

2、nmap的参数用法

  • nmap可以利用类似window/linux系统下的ping方式进行扫描,一般来说我们会用这个-sP这个参数去扫描内网的一个ip范围,因为它的速度较快。
  • 如果远程主机有防火墙,IDS和IPS系统,你可以使用-PN参数可以绕过PING命令以免影响主机发现。
  • sS(TcpSYNScan)被称为半开放扫描,因为这种技术使得Nmap不需要通过完整的握手,就能获得远程主机的信息。它不会产生任何会话.因此不会在目标主机上产生任何日志记录,因为没有形成会话。
  • sT不同于TcpSYN扫描,Tcpconnect()扫描需要完成三次握手,并且要求调用系统的connect().Tcpconnect()扫描技术只适用于找出TCP和UDP端口。
  • sU这种扫描技术用来寻找目标主机打开的UDP端口。
  • sF扫描发送的包只包含FIN标识。可以利用FIN扫描方式探测防火墙状态。FIN扫描方式用于识别端口是否关闭,收到RST回复说明该端口关闭,否则说明是open或filtered状态。
  • sV用来扫描目标主机和端口上运行的软件的版本,它需要从开放的端口获取信息来判断软件的版本,扫描速度会慢一些。
  • O远程检测操作系统和软件,Nmap有一个名为的nmap-OS-DB数据库,该数据库包含超过2600操作系统的信息。Nmap把TCP和UDP数据包发送到目标机器上,然后检查结果和数据库对照得到操作系统信息。
  • nmap的脚本分类:
  • -auth:负责处理鉴权证书(绕开鉴权)的脚本;
  • -broadcast:在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务-brute:提供暴力破解方式,针对常见的应用如http/snmp等;
  • -default:使用-sC或-A选项扫描时候默认的脚本,提供基本脚本扫描能力;
  • -discovery:对网络进行更多的信息,如SMB枚举、SNMP查询等;
  • -dos:用于进行拒绝服务攻击;
  • -exploit:利用已知的漏洞入侵系统;
  • -external:利用第三方的数据库或资源,例如进行whois解析;
  • -fuzzer:模糊测试的脚本,发送异常的包到目标机,探测出潜在漏洞;
  • -intrusive:入侵性的脚本,此类脚本可能引发对方的IDS/IPS的记录或屏蔽;
  • -malware:探测目标机是否感染了病毒、开启了后门等信息;
  • -safe:此类与intrusive相反,属于安全性脚本;
  • -version:负责增强服务与版本扫描(VersionDetection)功能的脚本;
  • -vuln:负责检查目标机是否有常见的漏洞(Vulnerability),如是否有MS08_067;
  • 使用方法:nmap--script='$类别/$具体的脚本',例:nmap --script dns-brute xxx.xx.xx(目标) ,使用dns-brute脚本通过爆破方式猜测出目标网站等所有子域名

3、sqlmap的用法

get请求:

  • 探测是否存在漏洞:sqlmap.py -u "目标url";
  • 列出所有数据库:sqlmap.py –u "目标url" --dbs;
  • 列出当前使用的数据库:sqlmap.py –u "目标url" --current -db;
  • 列出数据库中的表:sqlmap.py -u "目标url" --tables -D "db_name";
  • 列表字段:sqlmap.py -u"目标url" --columns -D"db_name" -T"table_name";
  • 获取数据:sqlmap.py -u"目标url" --dump -C"columns1,columns2,columns3" -D"db_name" -T"table_name"

post请求:

  • 自动识别并利用表单:--forms;
  • 其余后续动作与get请求相同;
  • 不过我更喜欢通过burp抓包后使用-r参数

4、http请求方式和状态码

http请求方式:

  • get:向特定资源发出请求(请求指定页面信息,并返回实体主体);
  • post:向指定资源提交数据进行处理请求(提交表单、上传文件),又可能导致新的资源的建立或原有资源的修改;
  • head:与服务器索与get请求一致的相应,响应体不会返回,获取包含在小消息头中的原信息(与get请求类似,返回的响应中没有具体内容,用于获取报头);
  • put:向指定资源位置上上传其最新内容(从客户端向服务器传送的数据取代指定文档的内容),与post的区别是put为幂等,post为非幂等;
  • trace:回显服务器收到的请求,用于测试和诊断,trace是http8种请求方式之中最安全的
  • delete:请求服务器删除request-URL所标示的资源*(请求服务器删除页面);
  • option:返回服务器针对特定资源所支持的HTML请求方法   或web服务器发送*测试服务器功能(允许客户端查看服务器性能);
  • Connect : HTTP/1.1协议中能够将连接改为管道方式的代理服务器;

http状态码:

  • -1xx:指示信息—表示请求已接收,继续处理。
  • -2xx:成功—表示请求已经被成功接收、理解、接受。
  • -3xx:重定向—要完成请求必须进行更进一步的操作。
  • -4xx:客户端错误—请求有语法错误或请求无法实现。
  • -5xx:服务器端错误—服务器未能实现合法的请求。
  • 200 OK:客户端请求成功
  • 400 BadRequest:由于客户端请求有语法错误,不能被服务器所理解。
  • 401 Unauthonzed:请求未经授权。这个状态代码必须和WWW-Authenticate报头域一起使用
  • 403 Forbidden:服务器收到请求,但是拒绝提供服务。服务器通常会在响应正文中给出不提供服务的原因
  • 404 NotFound:请求的资源不存在,例如,输入了错误的URL。
  • 500 InternalServerError:服务器发生不可预期的错误,导致无法完成客户端的请求。
  • 503 ServiceUnavailable:服务器当前不能够处理客户端的请求,在一段时间之后,服务器可能会恢复正常。

5、dnsyo的用法

最后补充一下,在渗透情报收集过程中,经常遇到目标网站使用cdn,从而找不到真实IP。

这时候使用dnsyo可列出目标域名的所有dns请求数量,dns请求越多的ip越趋近于真实ip。

猜你喜欢

转载自www.cnblogs.com/casperMY/p/9665431.html