XSS漏洞学习 XSS攻击通常指的是通过利用开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括、、、Flash或者甚至是普通的HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容、会话和cookie等各种内容。一般XSS可以分为如下几种常见类型。...
PHP反序列化漏洞学习 序列化是将变量转换为可保存或传输的字符串的过程,反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。序列化:反序列化: 例如:输出的结果为:在序列化后的结果中的字母标识为: 在这个代码中运用到了 __construct()魔术方法序列化魔术方法这里拿PIKACHU靶场一题来举例 这里给了一个例子我们看看源码这里并没有出现什么危险函数但construct析构函数中有个打印字符串的函数我们可以利用XSS漏洞弹个窗......
CTFHUB-Apache Mod CGI(PHP学习) 使用条件:早期的Web服务器,只能响应浏览器发来的HTTP静态资源的请求,并将存储在服务器中的静态资源返回给浏览器。随着Web技术的发展,逐渐出现了动态技术,但是Web服务器并不能够直接运行动态脚本,为了解决Web服务器与外部应用程序(CGI程序)之间数据互通,于是出现了CGI(Common Gateway Interface)通用网关接口。简单理解,可以认为CGI是Web服务器和运行其上的应用程序进行“交流”的一种约定。当遇到动态脚本请求时,Web服务器主进程就会Fork创建出一个新的进程来启动CGI程序
ctfhub-web进阶-shellshock(PHP学习) 使用条件:该方法利用的bash中的一个老漏洞,即Bash Shellshock 破壳漏洞(CVE-2014-6271)。该漏洞的原因是Bash使用的环境变量是通过函数名称来调用的,导致该漏洞出现是以开头定义的环境变量在命令 ENV 中解析成函数后,Bash执行并未退出,而是继续解析并执行shell命令。而其核心的原因在于在输入的过滤中没有严格限制边界,也没有做出合法化的参数判断。一般函数体内的代码不会被执行,但破壳漏洞会错误的将”{}”花括号外的命令进行执行。PHP里的某些函数能调用popen或其他能够派生
[GWCTF 2019]枯燥的抽奖 枯燥的生活😴查看网页源代码 发现check.php用公钥推出私钥私钥是由mt_rand函数生成的种子生成的工具php_mt_seed可以爆破出种子PHP mt_rand安全杂谈及应用场景详解这里 工具php_mt_seed-master需要用4.0版本,不能用旧版本 下载网址先用脚本将伪随机数转换成php_mt_seed可以识别的数据:生成的数据: 命令: 根据种子生成完整字符 提交得到flag...
BUUCTF[ctf473831530_2018_web_virink_web] 文件存储路径就是md5(orange.ip)限制字符写shell 参考文章CTF-web 第十三部分 命令注入 成功写入shell通过上面的脚本写入shell,连上蚁剑 看一下主机信息 这里并没有看到内网ip,换个姿势 试了一下这里面的ip都没有开放端口,再经过Article_kelp师傅的帮助下,扫描到了ip 9000对应php-fpm,873对应nsync我们可以自己构造fastcgi协议,和fpm进行通信参考文章Fastcgi协议分析 && PHP-FPM未授权访问漏洞 && Exp
[CISCN 2022 初赛]online_crt 下载附件,查看app.pygetcrt是生成证书的,createlink调用popen运行了c_rehashc_rehash 存在漏洞 https://www.secrss.com/articles/42602 CVE-2022-1292是当用户可控文件名时的命令注入再看到/proxy路由由用户构造报文,看看go 服务源码可以通过 /proxy 来更改文件名为命令最后通过 /createlink 调用 c_rehash 执行命令 得到一个证书利用脚本修改 利用/createlink调用
Nginx处理http请求的11个阶段 Nginx将一个HTTP请求分成多个阶段。以模块为单位进行处理。这样做的优点是使处理过程更加灵活、减少耦合度。HTTP框架将处理分成了11个阶段,各个阶段能够包括随意多个HTTP模块并以流水线的方式处理请求。...
RCE命令执行和代码执行 RCE为两种漏洞的缩写,分别为Remote Command/Code Execute,远程命令/代码执行。代码执行简介因为需求设计,后台有时候需要把用户的输入作为代码的一部分进行执行,也就造成了代码执行漏洞。通过代码注入或远程代码执行(RCE),攻击者可以通过注入攻击执行恶意代码、向网站写webshell、控制整个网站甚至服务器。在某些情况下,攻击者可能能够从代码注入升级为命令注入。危险函数eval() //把字符串作为PHP代码执行assert()
sql注入学习 前置知识SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。常用查询信息 database() # 在用的数据库名 user() # 用户信息 version() # 数据库版本信息 @@basedir # 数据库安装路径 @@version_compile_os
记一次站库分离的sql注入题目(手注和sql-shell的使用) 这里进行模糊测试,发现过滤了一大堆符号,但发现id为1和0时login name不同考虑异或的sql盲注附上我的脚本import requestsflag = ""for i in range(1, 2000): low = 32 high = 128 mid = (low + high) // 2 while low < high: url="http://*********/SQL%20Injection/?id=1^(..
BUU[GYCTF2020]Ezsqli 布尔盲注 无列名盲注打开链接打开就看见尸体是吧啊😅我们往下翻见到一个输入框尝试输入1输入2输入'初步判定为布尔盲注这里测试一下,发现过滤了union select, or 等等information_schema.columns表名不能用了,我们在这里使用sys.schema_table_statistics这个表,or使用||代替当or后面判断返回结果为true,输出结果为Nu1L;当or后面判断返回结果为false,输出结果为Err...
BUU[SWPU2019]Web1 打开链接发现是个登录页面我们先注册再登录进去点开申请发布广告,将广告名设为1'试试是否存在sql注入果然报错了,显然存在sql注入获取列数这里过滤了空格,order by,我们使用/**/来进行绕过,order by可以用group by来代替-1'/**/group/**/by/**/23,'最后得到列数为22查找有回显的列2和3接下来爆表这里将information_schema过滤了,但在 information_s...
BUU[GWCTF 2019]我有一个数据库 打开链接一堆乱码,查看源代码也没什么信息可提取,利用目录扫描器,看能不能扫出什么东西扫到了一个phpmyadmin进去看看这里的版本号为4.8.1,而phpmyadmin在4.8.0以及4.8.1的版本号中有文件包含漏洞[PHPMYADMIN]CVE-2018-12613我们试试读取看是否成功index.php?target=sql.php?/../../../../../../../../../etc/passwd成功尝试读取flaginde...
BUUCTF[PHPMYADMIN]CVE-2018-12613 打开所提供的网址是个phpmyadmin界面phpmyadmin的版本号为4.8.1在phpmyadmin的版本号为4.8.1以及4.8.0的版本中有着包含(查看并可能执行)服务器上的文件的漏洞,详情可看这篇文章phpMyAdmin 是一套开源的、基于Web的MySQL数据库管理工具。在 4.8.2 之前的 phpMyAdmin 4.8.x 中发现了一个问题,其中攻击者可以在服务器上包含文件。该漏洞来自 phpMyAdmin 中重定向和加载页面的部分代码,以及对白名单页面的不当测试..
漏洞中的伪协议异同 PHP 中的封装协议(伪协议) file:///var/www/html 访问本地文件系统 ftp://<login>:<password>@<ftpserveraddress> 访问 FTP(s) URLs data:// 数据流 http:// — 访问 HTTP(s) URLs ftp:// — 访问 FTP(s) URLs php:// — 访问各个输入/输出流 zlib:// — 压缩流...
SSRF漏洞学习 SSRF漏洞原理SSRF(Server-Side Request Forgery:服务器端请求伪造)是一个由攻击者构造请求,在目标服务端执行的一个安全漏洞。攻击者可以利用该漏洞使服务器端向攻击者构造的任意域发出请求,目标通常是从外网无法访问的内部系统。简而言之就是以服务器的身份来执行请求。常见利用方式伪协议读取文件伪协议读取文件,在SSRF中常用的伪协议就是file:///协议/?url=file:///var/www/html/flag.php内网访问我们从目标主机内