- 博客(73)
- 收藏
- 关注
原创 文件包含漏洞之——防御措施
设置白名单代码在进行文件包含时,如果文件名可以确定,可以设置白名单对传入的参数进行比较。过滤危险字符由于Include/Require可以对PHP Wrapper形式的地址进行包含执行(需要配置php.ini),在Linux环境中可以通过”…/…/”的形式进行目录绕过,所以需要判断文件名称是否为合法的PHP文件。设置文件目录(配置php.ini)PHP配置文件中有open_basedir...
2020-03-04 13:35:32 3713 1
原创 文件上传漏洞之——漏洞进阶(读文件,写文件,包含图片马,包含日志文件,截断包含)
php协议PHP带有很多内置URL风格的封装协议,可用于类似fopen()、copy()、 file_ exists()和filesize()的文件系统函数file:// 访问本地文件系统http:// 访问HTTP(s)网址ftp:// 访问FTP(s)URLSphp:// 访问各个输入/输出流(I/o streams)zlib:// 压缩流data:// 数据(RFC2397)...
2020-03-04 13:32:35 4160 1
原创 文件上传漏洞之——远程文件包含漏洞(RFI)
定义如果php.ini的配置选项allow_url_include为On的话,文件包含函数是可以加载远程文件的,这种漏洞被称为远程文件包含漏洞。利用远程文件包含漏洞,可以直接执行任意命令原理同本地文件包含原理,只是参数可以换成一个远程的url地址,此时包含的文件不能为php文件,可写成txt或者图片马等等文件包含的时候,无视文件格式,只要文件中有php代码,就会被执行复现dvwa lo...
2020-03-04 13:17:39 4402 4
原创 文件包含漏洞之——本地文件包含漏洞 (LFI)
定义能够读取或执行包含本地文件的漏洞,称为本地文件包含漏洞源代码原理为了方便,include等函数里放的不是一个指定文件,而是一个接收文件的变量,从而造成用户可以控制参数file改变这个变量当参数file 的值为一个指定路径的文件时,此时变量就是此路径,include函数就会执行此文件,当文件不是可执行的php文件时,就会将文件内容读取出货来,这样用户就可通过更改url里的参数进行读取...
2020-03-04 13:13:18 2467 1
原创 文件上传漏洞之——漏洞防御
1.将文件上传目录的所有用户执行权限全部取消只要web容器无法解析该目录下面的文件,即使攻击者上传了脚本文件,服务器本身也不会受到影响例:apache我们可以利用.htaccess(该文件一定要禁止.上传,否则被重写了解析规则,那么这种防御方式就不存在了)文件机制来对web server行为进行限制,有以下几种形式1.指定特定扩展名的文件的处理方式AddType text/plain ....
2020-03-04 13:08:57 1237 1
原创 文件上传漏洞之——二次渲染逻辑性漏洞绕过
漏洞形成二次渲染的缘分逻辑存在漏洞,先将文件上传,之后再判断,符合就保存,不符合删除,可利用条件竞争来进行爆破上传复现1.上传一个图片马,抓包,访问图片马,抓包,发送到inturde添加?a=1爆破点2.运行一万次,可看到有部分访问成功...
2020-03-04 13:03:12 2923 5
原创 文件上传漏洞之——利用条件竞争绕过
条件竞争漏洞.介绍条件竞争漏洞是一种服务器端的漏洞,由于服务器端在处理不同的请求时是并发进行的,因此如果并发处理不当或相关操作顺序设计的不合理时,将会导致此类问题的发生原理上传文件源代码里没有校验上传的文件,文件直接上传,上传成功后才进行判断:如果文件格式符合要求,则重命名,如果文件格式不符合要求,将文件删除由于服务器并发处理(同时)多个请求,假如a用户上传了木马文件,由于代码执行需要...
2020-03-04 12:56:50 4553 2
原创 文件上传漏洞之——upload-labs-master闯关游戏1-11关
1.将php文件后缀名改为jpg,之后bp抓包修改后缀名为php访问:3.上传一个phtml文件访问:5.修改文件后缀名为PHP访问:6.源代码有删除空格函数,bp抓包在文件名后加空格后点forward访问:7.在后缀名后加上:aaa访问:8.在后缀名后加上:aaa访问9.在后缀名后加上:aaa访问:10.双写php为pphphp访问:...
2020-03-04 12:44:17 1427 1
原创 文件上传漏洞之——利用js对php文件上传进行限制,并绕过
html代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><form action="zy1.php" onsubmit="re...
2020-03-04 12:38:13 1146 2
原创 php之——上传文件以及对上传进行限制
html源码:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><form action="zy.php" method="post...
2020-03-04 12:33:53 1101 1
原创 sql注入之——mysql的四大基本注入手法
union类型的sql注入(联合查询注入)条件:页面必须有显示位判断列数:1’ order by 3-- -不存在返回错误判断显示位:-1’ union select 1,2,3-- -查看数据库:-1’ union select user(),database(),version()-- -查看数据库有哪些表 (爆数据表)table_schema='数据库名’-1’ u...
2020-03-04 12:26:41 969 1
原创 sql注入之——mssql(sqlserver)执行系统命令
原理利用xp_cmdshell扩展存储过程,此存储过程可以直接执行系统命令开启xp_cmdshell扩展存储过程?id=1;use master;exec sp_configure ‘show advanced options’,1;reconfigure;exec sp_configure ‘xp_cmdshell’,1;reconfigure;执行系统命令?id=1;use mas...
2020-02-12 21:02:39 5152 3
原创 sql注入之——sqlserver报错注入
条件必须有错误回显函数convert(int,(select top 1 db_name() )):将第二个参数的值转换成第一个参数的int类型查看数据库?id=1 and 1=convert(int,(select top 1 db_name()))查看数据库有哪些表?id=1 and 1=convert(int,(select top 1 name from test.sys....
2020-02-12 20:52:50 1649 3
原创 sql注入之——sqlserver联合查询注入
条件:有显示位判断列数:?id=1 order by 3判断显示位:?id=1 union select null,null,null查看数据库:?id=1 union select 1,‘2’,db_name()这里注意1,‘2’,db_name()的数据类型必备与数据库存储的数据类型一致查看数据库有哪些表,U:用户的表?id=1 union select null,n...
2020-02-12 20:36:52 1708 1
原创 sql注入之——sqlmap使用
sqlmap基本使用获取一个url:http://localhost/sqli-labs-master/Less-1/?id=1判断是否有注入python sqlmap.py –u “http://localhost/sqli-labs-master/Less-1/?id=1”get型注入查看所有数据库:python sqlmap.py –u “http://localhost/sq...
2020-02-11 20:49:51 495 3
原创 sql注入之——常用绕过waf方式
1.参数污染原理:正则表达式一般只检测第一个参数,我们可以第一个参数放正常数据流量,第二个参数放攻击数据流量语句http://localhost/sqli-labs-master/Less-31/login.php/?id=1111&id=-1") union select 1,2,3-- -可以看到第二个参数执行sql语句成功,但第一个参数不可以,我们之后在1,2,3处替换sq...
2020-02-11 20:11:56 1821 2
原创 sql注入之——宽字节注入方法
使用条件有自动转义函数或全局变量(转义字符串中的特殊字符 '或"或)addslashes()mysqli_real_escape_string()mysql_escape_string()magic_quotes_gpc绕过1.数值型变量没有被符号包裹可直接注入:$id=1 and1=12.使用了gbk编码可以使用宽字节绕过原理:国标gbk编码中,汉字两个字节,英文、特殊字...
2020-02-11 19:31:18 754 1
原创 sql注入之——堆叠(多语句注入)
条件源代码使用musqli_multi_quiery();多语句查询函数,即可一次执行多条sql语句语句?id=1’;select “<?php phpinfo(); ?>” into outfile “D:\PHPKFGJ\phpstudy\PHPTutorial\WWW\213.php”-- -效果该目录下写入了213.php文件,可由此写入一些木马文件...
2020-02-10 19:55:02 1659 2
原创 sql注入之——二次注入
条件登陆:不能注入注册:不能覆盖,但可以知道有哪些用户,没有限制特殊符号,可注册admin-- -修改密码:各密码字段不能注入,修改密码时用户是自动获取当前用户原理(admin为一个已知用户)注册一个admin’-- -用户,使更改密码时获取用户后注释密码,达到admin’-- -用户更改admin密码步骤:1.注册一个admin’-- -用户2.更改admin’-- -用户密码...
2020-02-10 19:40:41 710 2
原创 sql注入之——读写文件,带外攻击
1.开启读文件权限在my.ini加上secure_file_priv=secure_file_priv=代表对文件读写没有限制secure_file_priv=NULL代表不能进行文件读写secure_file_priv=d:/…代表只能对改路径下文件进行读写2.读文件:函数:load_file();语句:?id=-1 union select 1,load_file(“d:\...
2020-02-10 19:22:02 1518 2
原创 sql注入练习之——sqli-labs 1-25
第一关:注入点:‘连接的字符串数据脱库:-1’ union select 1,(select group_concat(concat_ws(0x7e,username,password))from users),3-- -第二关:注入点:数值型数据脱库:-1 union select 1,(select group_concat(concat_ws(0x7e,username,...
2020-02-10 18:45:46 3006 1
原创 sql注入之——mysql 联合查询注入
一、Dvwa low级别1.判断sql注入漏洞类型为:’为边界的字符串型2.判断列数和显示位:2列2个显示位 1' order by 23.确定数据库:1' union select 1,database()-- -4.查看数据库有哪些表:1' union select 2,(select group_concat(table_name) from informatio...
2020-01-06 23:54:06 504 1
原创 渗透测试基础之——火狐浏览器一些插件的使用
1.Flagfox:可以显示出网站所在地的国旗,以及显示网页的ip地址,域名,服务器位置等信息点击下面的小国旗2.Wappalyzer:是一款能够分析目标网站所采用的平台构架、网站环境、服务器配置环境、JavaScript框架、编程语言等参数的chrome网站技术分析插件。3.Max HacKBar:web渗透时的经典工具4.user-agent switc...
2020-01-02 22:34:33 3664 2
原创 渗透测试基础之——burpsuite工具各模块的使用方法
Proxy模块:抓包1.首先开启intercept下的intercept is on进行抓包2.打开代理服务器,就可在此处显示浏览网页抓到的数据包点击forward,可以将拦截到的数据包释放,让数据进行传递。Repeater模块:多次存放请求响应和更改抓到的请求消息内容抓到数据包后点击Action,选择send to repeater ...
2020-01-02 21:56:29 1199 3
原创 使用中国菜刀(结合一句话木马)通过Iiswriter的put方法getshell
1.在客户端安装iiswrite软件,并关闭客户端防火墙2.服务器安装iis,勾选以下选项 3.更改iis网站的主目录,将所有权限都勾选,再将网址的权限里来宾账户的权限改为完全控制 4.在客户机使用iiswrite对服务器所在文夹件上传一个txt文件并改后缀为asp,内容为<%eval(eval(chr(114)+chr(101)...
2019-12-30 22:58:31 3337 1
原创 php之——数组里常用的函数
以下内容均包含源代码和输出结果1.count:获取数组的长度<?php$a=[1,23,1,21];echo count($a);echo "<br>";2.sizeof:统计数组下标的个数<?php$a=[1,23,1,21];echo sizeof($a);echo "<br>";3.each:返回当前元素的键名和...
2019-12-11 19:24:15 461 1
原创 php之——常用的字符串函数
以下每个内容都包含源代码及输出结果1.mb_strlen :长度计算<?phpecho mb_strlen('asdsad');2.addslashes :将预定义的字符添加反斜杠转义<?phpecho addslashes("''");3.bin2hex:将2进制字符串转换为16进制<?phpecho bin2hex("w655...
2019-12-10 23:46:14 425 3
原创 php学习之——使用PHP来编写一个页面,页面内容显示浏览器信息,系统信息,文件位置信息,PHP版本,文件行数。
代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><table border="1" bgcolor="#ffebcd...
2019-12-09 23:52:13 691 2
原创 php学习之——如何在php中根据页面的行数,生成一个不同颜色的页面
代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><?phpfor($n=0;$n<=200;$n++) ...
2019-12-09 22:54:40 554 1
原创 php之——php输出内容的三种方式
1.使用双引号中插入单引号echo "that's ok";2.使用单引号加上转义字符\echo 'that\'s ok';3.使用eof输出一个h5文本echo <<<EOF<html><body>that's ok</body></html>EOF;?>代码及输出结果如下:...
2019-12-09 20:07:52 767 1
原创 php之——如何使apache服务器能够解析.phtml和.php3后缀的文件
1.找到apache的配置文件D:\phpstudy\PHPTutorial\Apache\conf\httpd.conf2.打开找到<IfModule mime_module>的最后一行,取消注释,加入phtml .php33.新建后缀为phtml或.php3的php文件就可使用apache识别...
2019-12-09 19:42:37 2197 2
原创 php之——PHP如何连接数据库(本文以mongodb数据库为例)
1.先下载一个和当前php版本号相匹配的mongodb的php扩展驱动下载链接如下:http://pecl.php.net/package/mongodb2.找到当前的php链接数据库的路径:D:\phpstudy\PHPTutorial\php\php-5.6.27-nts\ext,将刚下载好的压缩包解压,将里面的php_mongodb.dll驱动文件放入。3.找到php的配置...
2019-12-09 19:11:16 618 1
原创 windows、linux常用基本命令
windows基本操作命令一.文件/目录操作1.cd 切换目录cd //显示当前文件所在 cd.. //显示上一级目录 cd /d x:\ //进入x盘根目录 cd /d x: //进入上次x盘所在的目录 (可直接输入 x:) cd x: //显示上次x盘所在的目...
2019-11-29 17:15:27 2989 5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人