Web安全
文章平均质量分 91
Web安全
iO快到碗里来
...
展开
-
PHP 代码审计基础
0x00 Preface大多数漏洞都是由 [可控变量]+[特定功能] 产生的(对于用户可传入的变量缺少过滤或过滤存在绕过)。比如SQL注入,我们通过闭合、注释等方式插入payload以获取敏感数据。比如文件上传,我们上传一句话木马以获得web权限。这样的例子数不胜数,同时也给我们提供了一个思路,在我们进行代码审计时,可以根据搜索特定功能,查看是否存在可控变量,从而检验是否存在漏洞。#漏洞关键字:SQL 注入:select insert update mysql_query mysqli 等文件上传原创 2021-11-25 19:29:02 · 1453 阅读 · 0 评论 -
file_put_contents() 利用技巧
0x00 Prefacefile_put_contents()函数:把一个字符串写入文件中。var_dump()函数:显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。fwrite()函数:将内容写入一个打开的文件中。strcmp()函数:比较两个字符串。strlen()函数:返回字符串的长度,中文字符串的处理使用 mb_strlen()函数。md5()函数:计算字符串的 MD5 散列。preg_match()函数:用于执行一个正则表达式匹配。原创 2021-11-08 17:00:57 · 4196 阅读 · 0 评论 -
SQL注入 安全狗绕过
0x00 前言最近看了几篇关于安全狗 Bypass 的文章,绕过方式五花八门。在此以安全狗 apache4.0.30255 为例,简单做个总结。0x01 相关知识/* … */ 在大部分语言中都是一种注释,处于 /* … */ 之中的语句是不被执行的。但 MySQL 为了保证兼容性,比如要求从 mysqldump 导出的 SQL 语句能被其它数据库直接使用,它把一些特有的仅在 MySQL 上能执行的语句放在 /*! … */ 中,这样这些语句在其它数据库中就不会被当作执行语句,但在 MySQL 中原创 2021-09-24 16:18:07 · 385 阅读 · 0 评论 -
零宽字符隐写——2021网刃杯CTF 签到
0x01 零宽字符零宽度字符是一些不可见的,不可打印的字符。它们存在于页面中主要用于调整字符的显示格式,下面就是一些常见的零宽度字符及它们的unicode码和原本用途:零宽度空格符 (zero-width space) U+200B : 用于较长单词的换行分隔零宽度非断空格符 (zero width no-break space) U+FEFF : 用于阻止特定位置的换行分隔零宽度连字符 (zero-width joiner) U+200D : 用于阿拉伯文与印度语系等文字中,使不会发生连字的字符原创 2021-09-22 22:35:38 · 4807 阅读 · 1 评论 -
PHP反序列化&POP链的构造——2021第五空间CTF pklovecloud
网上关与PHP反序列化&POP链构造的文章有很多,笔者在这里简要讲解一下其相关知识。0x01 序列化和反序列化为方便存储和传输对象,将对象转化为字符串的操作叫做序列化( serialize() ),将所转化的字符串恢复成对象的过程叫做反序列化( unserialize() )。举个栗子:<?phpClass test{ public $a= '1'; public $bb= 2; public $ccc= True;}$r= new test();ec原创 2021-09-20 18:14:48 · 2976 阅读 · 1 评论 -
DVWA XSS总结
DVWA XSS(Reflected)low未进行过滤,构造payload:<script>alert("x");</script>medium过滤规则:把< script>用str_replace()函数替换为空。尝试双写<script>标签:<sc<script>ript>alert("x");</sc</script>ript>-->发现返回hello ript>:问题很奇怪,查看原创 2021-08-28 09:55:33 · 623 阅读 · 0 评论 -
CTFHub SSRF总结
内网访问题目描述:尝试访问位于127.0.0.1的flag.php吧进入题目:可以看到该链接可以传入一个参数url=,跟据题目描述直接构造payload:url=http://127.0.0.1/flag.php,成功得到flag。伪协议读取文件题目描述:尝试去读取一下Web目录下的flag.php吧进入题目:和第一题一样,可以传入一个参数url=,首先尝试第一题的payload:url=http://127.0.0.1/flag.php蟹bro,What’s up ??? F12看原创 2021-08-25 12:55:10 · 2371 阅读 · 0 评论 -
SSRF 漏洞学习
SSRF 漏洞学习实战0x00 漏洞概述SSRF (Server-Side Request Forgery,服务器端请求伪造) 是一种由攻击者构造请求,由服务端发起这一请求的安全漏洞。一般情况下,SSRF攻击的目标是外网无法访问的内网系统,也正因为请求是由服务端发起的,所以服务端能请求到与自身相连而与外网隔绝的内部系统。也就是说可以利用一个网络请求的服务,当作跳板进行攻击。0x01 形成原因由于服务端提供了从其他服务器应用获取数据的功能,但又没有对目标地址做严格过滤与限制,导致攻击者可以传入任意的原创 2021-08-25 12:51:46 · 1566 阅读 · 1 评论 -
XSS 漏洞学习
XSS漏洞学习实战XSS简介XSS(Cross Site Scripting)攻击全称跨站脚本攻击,是为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS,XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中,当受害者访问这些页面时,浏览器会解析并执行这些恶意代码,从而达到窃取用户身份/钓鱼/传播恶意代码等行为。主要有三种类型:存储型XSS、反射型XSS(也叫做非持久性)、Dom型XS原创 2021-08-10 17:23:37 · 545 阅读 · 0 评论 -
SQL注入 漏洞学习
宽字节注入是由于不同编码中中英文所占字符的不同所导致的。通常来说,在GBK编码当中,一个汉字占用2个字节。而在UTF-8编码中,一个汉字占用3个字节。在php中,我们可以通过输入 echo strlen(“中”) 来测试。当为GBK编码时,输出2。当为UTF-8编码时,输出3。除了GBK编码以外,所有的ANSI编码都是中文占用两个字节。在说之前,我们先说一下php中对于sql注入的过滤,这里就不得不提到几个函数了。addslashes()函数,这个函数在预定义字符之前添加反斜杠 \ 。预定义字符: 单引原创 2021-08-08 17:08:45 · 246 阅读 · 0 评论 -
MySQL 用户分析及权限管理
正文Linux一切皆文件,每个进程、服务都有其对应的文件,每个文件又有其对应的属主和属组。mysql也不例外,在配置mysql时我们通过以下命令为mysql创建了一个无法登录的用户群及用户作为其属组和属主。可以参考我之前的文章:LNMP环境搭建(基础加固),里面有配置的详细过程以及部分相关知识的讲解。groupadd mysqluseradd -M -g mysql -s /sbin/nologin mysqlchown -R mysql:mysql /usr/local/mysql配置完成后我原创 2021-08-04 11:22:24 · 330 阅读 · 0 评论 -
MySQL 文件读写
MySQL在不同版本读写文件方法大致有这几个:1.load_file()2.load data infile()3.system cat4.outfile5.dumpfileload_file()和load data infile读取文件的方法为:新建一个表,将读取文件以字符串形式插入表中,然后读出表中数据。load_file()也可以直接使用select load_file('文件路径')读文件需满足条件1.secure_file_priv值允许对该路径下的文件进行操作2.数据库用户(m原创 2021-08-01 22:36:22 · 8927 阅读 · 2 评论 -
MySQL 内置系统表详解及用户hash查询
5.6版本自带的库为:information_schema、mysql、performance_schema、test5.7版本自带的库为:information_schema、mysql、performance_schema、sys以5.6版本为例,查看数据库内置系统表:5.7版本内置系统表:information_schemaInformation_schema数据库是MySQL自带的,它提供了访问数据库元数据的方式。元数据是关于数据的数据,如数据库名或表名,列的数据类型,或访问权限等。原创 2021-07-31 16:13:31 · 2503 阅读 · 0 评论 -
LNMP环境搭建+Nginx/MySQL/PHP加固+安全思考
LNMP环境搭建该LNMP环境是在windows的VMware Workstation Pro中的Centos虚拟机上搭建的,各个软件的版本为:Centos7 + Nginx1.12.2 + Mysql-5.6.38 + PHP7.2.0。前置知识rpm和yunrpm (ecnu.edu.cn)Linux yum 命令 - 编程宝库 (codebaoku.com)useraddLinux中一切皆文件,每个文件都有其对应的用户。用户账号的管理工作主要涉及到用户账号的添加、修改和删除。添加用户原创 2021-07-30 17:13:59 · 471 阅读 · 0 评论 -
web页面解析流程及其相关知识(http、https、cdn、waf)
Web 页面解析的流程理解 web 页面解析的过程,总结其中涉及的基础知识和可能存在的安全问题。Web 页面解析的总体流程客户端(浏览器)发起页面请求,主机对 地址中的DNS 域名进行解析,找到对应的 IP 地址,请求发送到 服务端,服务器根据请求内容发送响应给客户端,客户端收到响应,将内容渲染成网页。Apache请求处理循环讲解:1、Post-Read-Request阶段: 在正常请求处理流程中,这是模块可以插入钩子的第一个阶段。对于那些想很早进入处理请求的模块来说,这个阶段可以被利用。2、原创 2021-07-30 18:06:52 · 2191 阅读 · 0 评论