漏洞

PHP审计基础

匿名 (未验证) 提交于 2019-12-02 22:11:45
php核心配置 register_globals 全局变量注册开关 设置为on时,把GET/POST的变量注册成全局变量 PHP 5.4.0中移除 allow_url_include 包含远程文件 设置为on时,可包含远程文件 PHP 5.2后默认为off allow_url_fopen  打开远程文件 magic_quotes_gpc 魔术引号自动过滤 设置为on时,自动在GET/POST/COOKIE变量中',",\,NULL的前面加上\ PHP5不会过滤$_SERVER变量,PHP5.4以后移除 magic_quotes_runtime 魔术引号自动过滤 与mq_gpc的区别:mq_runtime只过滤从数据库/文件中获取的数据 PHP5.4以后移除 magic_quotes_sybase 魔术引号自动过滤 会覆盖掉_gpc;仅仅转义NULL和把'替换成" PHP5.4以后移除 safe_mode 安全模式 联动配置指令有很多;...... PHP5.4以后移除 open_basedir PHP可访问目录 用;分割多个目录,且以前缀而非目录划分 PHP5.2.3以后范围时PHP_INI_ALL disable_functions 禁用函数 如果使用此指令,切记把dl()函数也加入到禁用列表 display_errors/error_reporting 错误显示 d

ThinkPHP5远程命令执行漏洞

匿名 (未验证) 提交于 2019-12-02 22:11:45
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34444097/article/details/85298345 0x01 ThinkPHP简介 ThinkPHP是一个基于MVC和面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布。从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,注重开发体验和易用性,为web应用开发提供了强有力的支持。 0x02 漏洞简介 (1)漏洞名称 ThinkPHP5远程命令执行 (2)漏洞描述 由于ThinkPHP5框架对控制器名没有进行足够的安全检测,导致在没有开启强制路由的情况下,攻击者构造指定的请求,可以直接getshell。 (3)影响范围 ThinkPHP 5.0系列 <5.0.23 ThinkPHP 5.1系列< 5.1.31 基于ThinkPHP5二次开发的CMS:如AdminLTE后台管理系统、Thinkcmf、ThinkSNS等。 0x03 测试环境 centos 7.5 nginx 1.14.0 php 7.2.10 thinkphp5.1beta 0x04 环境部署 查看服务开启状态 将thinkPHP5.1源码K拷贝到 nginx Ŀ¼ /usr/local/nginx/html 下 赋予权限 chmod -R 777 thinkphp5

Linux内核本地提权漏洞(CVE-2019-13272)

匿名 (未验证) 提交于 2019-12-02 21:56:30
漏洞描述   kernel / ptrace.c中的ptrace_link错误地处理了想要创建ptrace关系的进程的凭据记录,这允许本地用户通过利用父子的某些方案来获取root访问权限 进程关系,父进程删除权限并调用execve(可能允许攻击者控制)。 一个影响因素是对象寿命问题(也可能导致恐慌)。 另一个影响因素是将ptrace关系标记为特权,这可以通过(例如)Polkit的pkexec帮助程序与PTRACE_TRACEME进行利用。获取root权限。 影响版本    Linux Kernel < 5.1.17 漏洞复现    测试版本Ubuntu18.04.1   1、 漏洞POC下载,防止Home目录下   2、对下载好的漏洞POC进行编译,运行编译好的文件 gcc cve-2019-13272.c -o cve-poc ./cve-poc       漏洞修补   补丁下载: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6994eefb0053799d2e07cd140df6c2ea106c41ee 参考: https://www.linuxidc.com/Linux/2019-07/159686.htm 来源:博客园 作者: ladyBird-Z 链接

ZooKeeper未授权漏洞

試著忘記壹切 提交于 2019-12-02 21:41:11
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户,默认端口2181。 利用: 连接: ./zkCli.sh -server ip:port    获取系统环境 echo envi|nc ip port 乌云网易案例: oot@kali:~# echo envi |nc 60.191.83.13 2181 Environment: zookeeper.version=3.4.6-1569965, built on 02/20/2014 09:09 GMT host.name=localhost java.version=1.7.0_79 java.vendor=Oracle Corporation java.home=/opt/jdk1.7.0_79/jre java.class.path=/root/zookeeper-3.4.6/bin/../build/classes:/root/zookeeper-3.4.6/bin/../build/lib/*.jar:/root/zookeeper-3.4.6/bin/../lib/slf4j-log4j12-1.6.1.jar:

strut2 升级至2.3.20

谁说我不能喝 提交于 2019-12-02 20:29:48
问题现象: Apache Struts s2-005 远程代码执行漏洞(CVE-2010-1870) 受影响版本: Struts 2.0.0 - Struts 2.1.8.1 漏洞描述: 在Struts2中访问OGNL的上下文对象必须要使用#符号,S2-003的修复方案中对#号进行过滤,但是没有考虑到unicode编码情况,导致\u0023或者8进制\43绕过。 http://struts.apache.org/docs/s2-005.html Apache Struts s2-008 远程代码执行漏洞(CVE-2012-0392) 受影响版本: Struts 2.1.0 - Struts 2.3.1 漏洞描述: Struts2框架存在一个DevMode模式,方便开发人员调试程序。如果启用该模式,攻击者可以构造特定代码导致OGNL表达式执行,以此对主机进行入侵。 http://struts.apache.org/docs/s2-008.html Apache Struts s2-016 远程代码执行漏洞(CVE-2013-2251) 受影响版本: Struts 2.0.0 - Struts 2.3.15 漏洞描述: 在Struts2中,DefaultActionMapper类支持以"action:"、"redirect:"、"redirectAction:"作为导航或是重定向前缀

CSRF漏洞

蓝咒 提交于 2019-12-02 20:25:18
CSRF漏洞原理: CSRF是跨站请求伪造,不攻击网站服务器,而是冒充用户在站内的正常操作。通常由于服务端没有对请求头做严格过滤引起的。CSRF会造成密码重置,用户伪造等问题,可能引发严重后果。 我们知道,绝大多数网站是通过cookie等方式辨识用户身份,再予以授权的。所以要伪造用户的正常操作,最好的方法是通过XSS或链接欺骗等途径,让用户在本机(即拥有身份cookie的浏览器端)发起用户所不知道的请求。CSRF攻击会令用户在不知情的情况下攻击自己已经登录的系统。 CSRF攻击的目的是滥用基本的Web功能。如果该网站可以使服务器上的状态变化,如改变受害者的电子邮件地址或密码,或购买的东西,强迫受害人检索数据等等。CSRF攻击会修改目标状态。在这一过程中,受害者会代替攻击者执行这些攻击,攻击者中不会收到响应,受害者会代替攻击者执行这些攻击。   在跨站点请求伪造(CSRF)攻击中,攻击者经由用户的浏览器注入网络请求来破坏用户与网站的会话的完整性。浏览器的安全策略允许网站将HTTP请求发送到任何网络地址。此策略允许控制浏览器呈现的内容的攻击者使用此用户控制下的其他资源。   需要对页面参数做修改时,可以使用burpsuite生成的csrf poc,从而进行poc测试,测试完成之后一定要验证,浏览器执行了我们生成的poc测试,令数据产生变化。   csrf可以和XSS联系在一起

利用漏洞获取libc

旧巷老猫 提交于 2019-12-02 20:20:14
最近做一些难的题目,越来越自闭,感觉自己的基础知识还有待补充,索性暂停源短时间做题,先把一些基础知识理一理。本系列博客以《ctf-in-all》以及i春秋的《linux pwn基础入门》为基础开始学习。 第一篇博客,来理一理如何利用漏洞获取libc。 首先,libc是什么? libc 即在 Linux系统下的C语言函数库。 不同版本的libc,函数首地址相对于文件开头的偏移和函数间的偏移不 一定一致。所以如果题目不提供libc,通过泄露任意一个库函数地址计算出system函数地址的方法就不好使 了。这就要求我们想办法获取目标系统的libc。 在某不知名网站找到了一段视频,讲了一下关于这一知识点,讲的比较通俗易懂,就将部分重要的地方截了下来。 在《Linux PWN入门》和《ctf-in-all》中主要就是使用DynELF来泄露函数地址。 利用 如 pwntools 的 DynELF 模块,对内存进行搜索,直接得到我们需要的函数地址。 下面阐述一下关于DynELF的知识点: 使用方法如下: io = remote(ip, port) def leak(addr): payload2leak_addr = “****” + pack(addr) + “****” io.send(payload2leak_addr) data = io.recv() return data d =

【网络安全】SQL注入、XML注入、JSON注入和CRLF注入科普文

瘦欲@ 提交于 2019-12-02 19:45:25
目录 SQL注入 一些寻找SQL漏洞的方法 防御SQL注入 SQL注入相关的优秀博客 XML注入 什么是XML注入 预防XML注入 JSON注入 什么是JSON注入 JSON注入的防御 CRLF注入 CRLF介绍 CRLF漏洞检测 CRLF漏洞预防 SQL注入 所谓SQL注入,是将恶意SQL命令通过某种方式提交到服务器后台,并欺骗服务器执行这些恶意的SQL命令的一种攻击方式。 —— [ 百度百科 ] 造成SQL注入漏洞原因有两个:一个是没有对输入的数据进行过滤(过滤输入),还有一个是没有对发送到数据库的数据进行转义(转义输出)。 一些寻找SQL漏洞的方法 http://host/test.php?id=100 and 1=1 //返回成功 http://host/test.php?id=100 and 1=2 //返回失败 http://host/test.php?name=rainman ‘ and ‘1’=‘1 //返回成功 http://host/test.php?name=rainman ‘ and ‘1’=‘2 //返回失败 http://host/test.php?name=rainman ‘ and ‘1’=‘2 )) //使用括号进行语句闭合 //在具有模糊搜索的地方 1)先搜索('),如果出错,说明90%存在这个漏洞。 2)然后搜索(%),如果正常返回,说明95

PHP-fpm 远程代码执行漏洞(CVE-2019-11043)复现

余生长醉 提交于 2019-12-02 18:45:21
简介 9 月 26 日,PHP 官方发布漏洞通告,其中指出:使用 Nginx + php-fpm 的服务器,在部分配置下,存在远程代码执行漏洞。并且该配置已被广泛使用,危害较大。 漏洞概述 Nginx 上 fastcgi_split_path_info 在处理带有 %0a 的请求时,会因为遇到换行符 \n 导致 PATH_INFO 为空。而 php-fpm 在处理 PATH_INFO 为空的情况下,存在逻辑缺陷。攻击者通过精心的构造和利用,可以导致远程代码执行。 影响版本 Nginx + php-fpm 的服务器,在使用如下配置的情况下,都可能存在远程代码执行漏洞。 location ~ [^/]\.php(/|$) { ··· fastcgi_split_path_info ^(.+?\.php)(/.*)$; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_pass php:9000; ... } } 不可以远程代码执行:PHP 7.0/7.1/7.2/7.3 只适用于php7 环境搭建 靶机centos7:https://github.com/vulhub/vulhub/tree/master/php/CVE-2019-11043 exp环境:kali go语言环境 首先安装 go环境 wget -c https:/

五个常见的Web应用漏洞及其解决方法

。_饼干妹妹 提交于 2019-12-02 18:37:58
开放Web应用安全项目(OWASP)很快会发布今年的10大Web应用安全漏洞清单。这个清单与去年并没有太大差别,这表明负责应用设计与开发的人仍然没能解决以前那些显而易见的错误。许多最常见的Web应用漏洞仍然广泛存在,许多恶意软件搜索和攻击这些漏洞,连黑客新手都能轻松做到。 本文介绍了5个最常见的Web应用漏洞,以及企业该如何修复初级问题,对抗那些针对这些漏洞的攻击。 注入攻击和跨站脚本攻击 Web应用主要有2种最常见的严重缺陷。首先是各种形式的注入攻击,其中包括SQL、操作系统、电子邮件和LDAP注入,它们的攻击方式都是在发给应用的命令或查询中夹带恶意数据。别有用心的数据可以让应用执行一些恶意命令或访问未授权数据。如果网站使用用户数据生成SQL查询,而不检查用户数据的合法性,那么攻击者就可能执行SQL注入。这样攻击者就可以直接向数据库提交恶意SQL查询和传输命令。举例来说,索尼的PlayStation数据库就曾经遭遇过SQL注入攻击,并植入未授权代码。 跨站脚本(XSS)攻击会将客户端脚本代码(如JavaScript)注入到Web应用的输出中,从而攻击应用的用户。只要访问受攻击的输出或页面,浏览器就会执行代码,让攻击者劫持用户会话,将用户重定向到一个恶意站点或者破坏网页显示效果。XSS攻击很可能出现在动态生成的页面内容中,通常应用会接受用户提供的数据而没有正确验证或转码。