自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 09-python开发xss扫描器

2、准备一份字典文件、尽可能包含更多的payload,并给每一个payload进行分类(不同的类型匹配的要求不同)1、整体上的思路是发送一个带有Payload参数值的请求,从响应当中判断是否存在Payload(反射性XSS)

2024-05-06 18:01:26 540 1

原创 06-xss攻防于绕过

xss的攻击于防御。

2024-05-06 15:00:00 1760

原创 04-xss获取cookie实验

攻击者服务器:192.168.74.134,将获取到cookie数据保存到该服务器的数据库中,运行PHP代码暴露一个接收Cookie的URL地址。正常Web服务器:192.168.74.133,用于正常的用户访问的目标站点,用户可以在上面阅读或者发表文章。但是只有几分钟的时间进行操作,期间可以查看数据库,建立用户,用户向管理员举报有问题的页面,管理员前去访问,攻击者则直接获取到了管理员的cookie。攻击者在回帖中输入文章内容,并加入JavaScript开始进行xss攻击,3、获取管理员 Cookie。

2024-05-06 10:39:23 357 1

原创 03-构建xss漏洞环境

【代码】03-构建xss漏洞环境。

2024-05-06 10:08:06 291

原创 02-XSS渗透测试步骤

存储型又叫永久性xss,常见于留言板,因为存储型xss的页面会将用户输入的内容存入到数据库内,反射型xss是一次性的,而且比较容易被发现,通常恶意链接会被修改成短链接,或钓鱼图片的形式。输入后和原有的前端代码产生混淆,形成新的页面语句,并且新的页面语句能够被浏览器解析并输出。所以其他人每访问一次的时候,服务器都会从数据库将攻击者输入的内容调取到前端浏览器解析,xss原理就是开发者没有对输入内容进行过滤,导致通过攻击者进行构造的前端代码,3)查看输出位置的内容与输入内容之间的关系,构建闭合和拼接脚本。

2024-05-06 09:49:33 464

原创 01-xss基本原理

/ 将数据保存起来,文件或数据库 // 让他直接跳转到真实的网站 echo "<script>location.href='https://www.taobao.com';xss全程为:Cross site scripting,指跨站攻击脚本,XSS漏洞发生在前端,攻击的是浏览器的解析引擎,xss也算是注入类的漏洞,JavaScript的代码注入,所以xss漏洞更主要是去攻击系统用户,而不是系统本身。XSS是以Web站点用户为攻击目标,而不是服务器,所以是一种钓鱼攻击,攻击目标是不确定的。

2024-05-06 09:18:43 635

原创 12-python编写暴力破解poc

字典碰撞,给定一个字典文件,读取里面的密码明文,再对其进行MD5,爆破不受次数的限制,可以一直尝试,所以爆破的防护方案:次数限制,使用burp抓包,查看登录的数据怎么构造,以及响应的url地址。算法碰撞,一串128位的MD5(32位16进制)其组合数量。一个进程,的线程有限,如何能够提升并发能力呢?场景:已知MD5加密字符串,如何得知明文?再和目标字符串对比,如果相同,则明文找到。只要有密码的地方,均可以尝试使用爆破方案。首先监控到登录的请求 ,查看通行的过程。2、已知用户名,爆破密码。

2024-04-29 03:00:00 292

原创 11--sql注入-报错注入

通常的报错函数有updateXML(),extractvalue(),floor()等等。当union select 出现不使用的情形下,我们通常使用报错来进行注入。报错注入的原理就是通过构造特殊的报错语句,使用MySQL数据库报错,使我们查看内容显示在报错信息中,同时把报错信息显示在页面上。exp() 求e的n次方,exp(~(select 1))3、web页面中有两个SQL查询语句,查询语句的列数不同。1、注入语句无法截断,且不清楚完整的SQL查询语句;updatexml(文件名,文件路径,更新内容)

2024-04-16 10:45:06 270 1

原创 10-菜刀连接木马

可以获取你想要的配置信息,也可以用system函数来输入命令。是属于辅助工具,并且菜刀的传输过程是明文传输的,目前已经被WAF进行防护了。接下来就可以连接菜刀,使用菜刀来连接木马然后就可以查看到服务器里面的东西了。先看是否存在注入点,有下图所示则表示存在注入点==》可以进行接下来的操作。2、木马必须是POST请求,参数自定义,在菜刀里给出正确的参数名。写入一句话的木马进行探测,如果嗅探成功后在进行大马的上传。找到了漏洞后,并且上传了木马之后才能使用的两款工具。有文件,则说明可以读任意路径的文件。

2024-04-16 10:38:37 509 3

原创 12--交换机基础

例如,在网络拥塞或数据包损坏的情况下,网络设备可能会选择丢弃部分数据包,以减轻网络负载或确保数据传输的可靠性。当一个pc的数据通过交换机的接口,看他的的目的mac,并且记录到mac地址表中(刚开始的mac地址表中只有刚开始记录上的记录)接受数据,接收到原始帧就打上对应的PVID,接受收到带tag帧,一样就接收,不一样丢弃。==》进行判断,如果不是,则将泛洪的数据包丢弃,如果是,则回一个arp单播。发送数据,和自己的pvid一样,剥离tag发送,和自己pvid不一样,丢弃。

2024-03-27 10:16:51 763

原创 09-SQL注入--木马植入

_POST['123123']表示从页面中获得123123这个参数值,即该木马密码为123123。利用SQL语句读取系统文件,先读写常规文件(明确文件路径),如果能成功读取,则继续读取其他文件。如果明确知道路径,则直接尝试爆破路径小的文件,如果连路径都不知道,则爆破路径。去找一个真实的网站存在SQL的漏洞==》怎么去找?只允许探测,不允许利用。本篇文章只是作为学习使用,为学习笔记,@表示后面即使执行错误,也不报错。eval()函数表示括号内的语句。四、中国菜刀和冰蝎的使用。sql注入进一步操作。

2024-03-20 09:25:10 293

原创 08-SQL注入--查询漏洞一

查看是否有注入点(并且判断注入点的类型)==》判断条数==》显示数字位置==》查询数据库==》查询表==》查询列名==》具体的数据。所以在注入中用order by并不是为了排序,而是为了确定主查询的条数,确保union select 的查询数与主查询一致。1、通过and =1,and 1=2的输入,来判断是否存在注入点,如果结果不一致,说明我们输入的语句被数据库执行了。5、在显示的数字位置上 ,替换对应的查询语句,database(),version(),user()

2024-03-20 08:48:53 1343

原创 07-SQL-登录次数限制--爆破防护

一路修改代码对漏洞进行防护,一路又使用新的手段进行破解,最终只剩下爆破这一个漏洞了,3)每一次登录时,只要用户名是存在的,都需要从数据库里面取得这两个值,从而进行判断。1)需要在数据库中记录某个用户的登录失败的次数,每登录失败一次,则+1。在前述攻防的过程中,我们从最开始写一个简单的登录页面和后台功能开始,2)需要在数据库中记录某个用户最后一次登录时间,用于判断是否接触限制。记录用户常用IP地址区域,如果在不常用区域登录,预警。到发现SQL注入漏洞,万能验证码,爆破等漏洞开始,登录次数的限制,并记录IP。

2024-03-18 10:42:01 480

原创 06-SQL-基于百度的验证码识别

通过机器学习,不停的获取验证码,然后再对正确答案进行标注,让机器学习本张图片的正确答案和对应文字的样式,只要学习的数量足够多,则识别率会很高。利用OCR实现python进行爆破。在文字识别中创建一个文字识别应用。在百度智能云平台注册,实名认证。一、使用机器学习识别验证码。二、使用百度API识别码。

2024-03-18 10:37:03 202

原创 05-SQL注入-验证码防护

这行代码使用准备好的语句对象 $stmt 的 bind_param() 方法,将变量 $username 绑定到查询语句中的参数占位符。接下来,后续的每一个请求,将会在请求头的cookie字段中添加session ID,目的是主动告诉服务器,我是谁。总之,这段代码的目的是准备并执行一个数据库查询语句,并将查询结果的行数存储在客户端的内存中,以便后续使用。这段代码是一个PHP代码片段,用于执行数据库查询并获取结果集的行数。:这行代码将查询结果存储在客户端的内存中,以便后续可以获取结果集的行数。

2024-03-17 16:55:50 377 1

原创 04-SQL注入-验证码处理

比如短信验证码,通常会有一个时间限制(5分钟内有效),最好的解决方案就是使用redis缓存,并设置key的过期时间。验证码一旦生成后,不一定必须保存在session中,任何可以存储数据的方式均可以,比如数据库,文件,内存,或者保存在Redis。添加码源:vcode.php,基于PHP绘制基础图片,生成验证码,然后将验证码保存到session变量中。图片验证码、拖动验证码、拼图验证码、问答验证码。2.使用图片来进行展示,而非其他手段。1.随机生成的字符,确保无规律可言。3.尽量让文字变形并形成扰乱图像。

2024-03-17 16:52:51 181 1

原创 03-SQL注入-登录漏洞

addslashes函数可以将字符串中的单引号,双引号,反斜杠,NULL值自动添加转义符,从而防止SQL注入中对单引号和双引号的预防。预处理的过程,就是先交给MySQL数据库进行SQL语句的准备,准备好后再将SQL语句中的参数进行值的替换,MySQL的预处理即支持面向过程,也支持面向对象的方式,但是我们后续直接使用面向对象的方式。引号会进行转义处理,将所有的参数变成普通字符串,再进行第二次正式的SQL语句执行。在SQL注入后打乱了SQL的语句拼接,重新闭合成了一个新的SQL语句。

2024-03-17 12:02:24 641 1

原创 02-SQL的基本修复

3)在login.php中,登录成功后添加以下代码,$_SESSION用来获取session值从而进行判断。2)在登录页面输入‘作为用户名,报错信息存在login.php的绝对路径,暴露了系统后台的敏感信息(低)SQL语句无法有效有效闭合,发生错误,同时,还将源代码的绝对路径暴露出来,只是敏感信息,当在用户名输入单引号时,会引起后台报错,一方面说明后台没有对单引号进行转义处理,1)wecome.php页面谁都可以访问,没有进行登录判断(中)3)保存用户信息的数据表中,密码字段是明文保存不够安全(中)

2024-03-15 10:14:10 237 1

原创 01-SQL注入漏洞

通常并非一下就可以完成拼接和闭合,需要不停的尝试,直到出现不一样的结果,那么,建议这个尝试过程,与python+字典进行。2)在登录页面输入‘作为用户名,报错信息存在login.php的绝对路径,暴露了系统后台的敏感信息。3.在lampp的htdocs目录下创建security目录,用于编写服务器PHP代码。我们要给他写一下不太常规的内容,打破拼接,之后还可以重新闭合。1)wecome.php页面谁都可以访问,没有进行登录判断。五、进行登录的渗透测试,使用抓包软甲进行抓包,三、编写login.php。

2024-03-15 08:38:55 187 1

原创 html5思维导图

2024-03-14 09:52:03 269 1

原创 day09-PHP面向对象

面向对象(OO object)概念在现实世界里我们所面对的事情都是对象,如苹果 猫 电视机等。而在面向对象的程序设计(OOP)中,对象是一个由信息及对信息进行处理的描述所组成的描述所组成的整体,是对现实世界的抽象。

2024-03-14 09:20:31 843 1

原创 01-渗透测试的步骤和思路

(1)反弹命令不存在:命令有很多,常用的命令有nc/nc.openbsd/nc.traditional、bash/sh/dash、python/perl/php/rudy、exec,大致逻辑是,在攻击者自己的vps上监测某种协议的网络请求,在目标上用这种协议访问vps,若在vps上看到该协议的请求日志,在逻辑漏洞的找寻中,重点观察跟你用户名有关的请求,尝试在各种请求中将你的用户名或身份认证替换成他人的。(1)确认具体的操作系统版本和已经安装的服务,可以运行的脚本环境,可以通过的端口等(具体更据权限而定)

2024-03-03 09:23:29 474

原创 02-加密解密实战

可逆加密(已知密文,可以解开明文):对称加密(密钥是同一个),非对称加密(核心是:公钥加密,私钥解密,https)(二进制和十六进制,在计算机内部是完全等价的,每4个二进制位,对应一个十六进制位,0000->0,1111->F)不可逆加密(根据密文无法解密):哈希算法,散列算法,摘要算法,通常用于数字指纹,MD5,SHA。SHA也是摘要算法,与MD5的用法完全一致,差别在于SHA可以有不同的位数设定,强度可以更高。张三的加密算法是:大写字母+2,小写减2,数字不变,如果不够整除(整除6)那就补零。

2024-03-01 01:55:16 241

原创 HCIA-08-设备的基础命令

user-interface vty 0 4 [vty虚拟终端链路 0 4 默认配置代表同一时间可以有5个人来进行配置]ip address x.x.x.x x.x.x.x 配置IP地址(华为的设备的子网掩码可以用阿拉伯数字)undo info-center enable 关闭日志(正常情况下不要关闭日志)display this 查看当前视图下的配置。system-view---->进入系统视图。[huawei-ospf-1] 协议视图。华为--VRP系统基于Linux系统。

2024-02-10 20:14:49 339 1

原创 HCIA-01-网络基础

1、电路交换:通信前维护一条逻辑意义上的链路该链路仅仅可以两者的数据无法传递他人,如果说此时链路空闲,导致传递降低。TCP 可以纠错(如果出错,要进行重新传输) 通过代号--->端口号(一共是65535个端口,1969年:ARPA构建“巨型网络”阿帕网---4高校数据同步 基于卫星 想实现万物互联。1946年:全世界第一台计算机出现----加速了军事和科研 完成运算功能 是一个单机。1-1023不可以使用,1024-65535可以使用)传输介质:实现设备的连接,实现整体数据的传输。

2024-02-01 17:08:32 308 1

原创 day08 时间、日期相关知识

mktime($hour,$minute,$second,$month,$day,$year)生成时间戳(时分秒,月日年)gmdate($format,$timestamp) : 根据指定的格式,将GMT时间戳格式化为可读的日期和时间字符串。如果你希望被包含的文件是必需的且缺少文件会导致脚本无法正常运行,应使用require(推荐)。如果你希望被包含的文件是可选的,或者即使缺少文件也希望继续执行,也可以使用include。会忽略服务器的时区设置,始终返回格林位置标准时间(GMT)的日期和时间。

2024-01-25 21:39:25 300

原创 day07数组相关函数

array_unshift($array,$newElement) 将一个或多个元素添加到数组的开头。array_push($array,$newElement) 将一个或多个元素添加到数组的末尾。array_slice() 从数组中提取一部分元素,组成新的数组。array_values() 返回数组中的所有值,组成新数组。array_keys() 返回数组中的所有键,组成新的数组。array_pop() 删除并返回数组中的最后一个元素。array_reverse() 反转数组中的元素的顺序。

2024-01-25 21:27:08 153

原创 day06 PHP字符串数据类型

str_replace($search,$replace,$string) 将字符串中的某个子字符串替换为另一个字符串。strpos() 在字符串内查找 一个字符或一段指定的文本,返回第一次出现的位置或false。strrpos() 同上上,返回最后一次出现的位置或false,但是不区分大小写。mb_substr() 截取字符串的一部分 (中文)需要安装扩展mbstring。分析isset() is_null() empty()的区别。

2024-01-24 08:04:42 344 1

原创 路由器工作原理

3)封装帧,首先将出接口的mac地址作为源mac封装好,然后检查ARP缓存表,检查是否有下一跳的mac地址。如果有,将提取并作为目标mac地址封装到帧中,如果没有,则发送ARP广播请求下一跳的mac,并获取到对方的mac地址,在记录缓存,并封装帧,最后将帧发送出去。2)路由器检查IP包头中的目标IP,并匹配路由表,如果匹配失败,则丢弃,并向源ip回馈错误信息。1)一个帧到达路由,路由器首先检查目标mac地址是否是自己,如果不是则丢弃,如果是则解封装,并将IP包送到路由器内部。7.路由器的工作原理。

2023-09-27 11:33:34 37 1

原创 如何在VScode中搭建php开发环境

② (没有 php.ini 文件)这里我们可以在 php 根目录下找到 php.ini-development (开发环境用)与 php.ini-production(生产环境用)两个文件。​下载的 php_xdebug-3.2.0RC1-8.1-vs16-x86_64.dll 文件,复制到 php 根目录下的 ext 目录中,然后在 php 根目录下找到 php.ini 文件,有如下两种情况。(下载的版本是与PHP版本相同)【安装下载时,版本为PHP8.2】【如果不知道PHP版本,文末告诉你如何查看】

2023-09-02 10:03:45 2158

原创 MySQL安装与配置以及安装时遇到的问题

6.使用管理员身份打开cmd,并切换到D:\Server\Mysql\mysql-5.7.19-winx64\bin目录下,然后再执行mysql -install。5.在D:\Server\Mysql\mysql-5.7.19-winx64目录下自己创建一个my.ini文件(在MySQL5.7版本后是要自己建立的)9、进入mysql管理终端 mysql -u root -p 【此时的root密码为空,在password时直接回车即可】安装(在安装时有可能出现问题,我会在文末添加安装的错误的解决方法)

2023-09-01 11:08:30 44 1

原创 Linux静态分配IP地址

1.用xshell远程连接Linux系统,时常会出现断连,IP地址会被DHCP自动分配,从而导致无法连接成功,为了避免这种情况发生。添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)在shell中修改文件。5.重启centos7。

2023-06-18 09:46:07 80 1

原创 Linux的用户,组管理

本实验通过对Linux中系统的账号添加,分组,添加权限,可以充分了解Linux系统的系统管理员如何去分配,管理账号的权限。在使用用户账号时,管理员对相应的账户给予相对的权限,可以根据每一个账号使用的情况给予对应的权限,让工作效率更为高效。1.账号密码2.密码3.最近修改的日期4.密码不可被修改的天数5.密码需要重新修改的天数6.密码需要修改期限的警告天数7.密码过期后的账号宽限时间8.账号失效日期9.保留。2.了解文件/etc/passwd,/etc/group,/etc/shadow。

2023-06-16 17:07:38 186 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除