ls -al

FineCMS有一个缓存功能,和当初Wordpress一样,有一个缓存功能,并且缓存的文件名不是随机的并且后缀是php,就导致了可以利用后台缓存功能来getshell。

下面是Payload

Read More

首先来看一段CI内核在开启session储存在数据库选项的时候的操作.也就是

/system/core/config.php

内核配置文件设置为以下的时候

$config['sess_use_database'] = true;

Read More

呵呵,昨晚和初中同学叙旧,两个人无聊找了一款网页游戏BR大逃杀玩,今天把这个网页游戏下下来简单审计了一下源码。

Read More

简介

什么是CURL

curl是利用URL语法在命令行方式下工作的开源文件传输工具。它被广泛应用在Unix、多种Linux发行版中,并且有DOS和Win32、Win64下的移植版本。

Read More
  • 影响条件:
  • 程序:WordPress
  • 版本: ?->2.0.5
  • 严重程度:高危

正文

由于这些漏洞都是在exploit-db上面扒下来的exp,再通过exp的作用来分析程序漏洞.所以有时候exp写的比较让人难以理解,可以通过wireshark抓包来进行分析.

这个漏洞expolit-db里的exp名称是
WordPress 2.0.5 - Trackback UTF-7 - Remote SQL Injection Exploit

由于这个漏洞是注入,可以选择在wp-includes/wp-db.phpprint_error()函数里面下一个断点,OS X里可以使用macGDBp配合MAMP搭建测试环境,很方便.

Read More
  • 影响条件:
  • 程序:WordPress
  • 版本:<= 1.5.1.2
  • 严重程度:高危

基础知识

想要分析这个漏洞首先要了解xmlrpc的相关知识.

什么是xmlrpc?

xml rpc是使用http协议做为传输协议的rpc机制,使用xml文本的方式传输命令和数据调用远程的方法。

用wordpress xmlrpc.php的sayHello函数来演示一个例子

发送以下的xmlrpc数据包到wordpress的xmlrpc.php路径上,wordpress就会返回返回一个xmlrpc Response

Read More

WordPress <= 1.5.1.1 - SQL注入分析

  • 影响条件:
  • 程序:WordPress
  • 版本:<= 1.5.1.1
  • 严重程度:高危

简要

在Wordpress调用模版时候,其功能之一是在右侧显示当前存档的类型,进行对应类型查询的时候没有使用干净的参数导致注入

正文

首先将断点下在问题点追寻处理流程

如下:
C3110BB5-4E9D-45E1-B40E-3A3E031C4AD2.png

Read More

WordPress <= 2.0.2 - (cache) Remote Shell Injection Exploit

  • 影响条件:
  • 程序:WordPress
  • 版本:<= 2.0.2
  • 严重程度:高危

简要

这个漏洞问题出在WordPress生成的序列化后的缓存文件中.因为缓存文件的后缀为php,文件的内容可控,并且文件名在一定条件下可预见,所以在一定条件下可以getshell

正文

首先下断点在生成问题文件的地方

程序流程图

1.png

出问题的是
wp-includes/cache.php
文件中的save()函数

save()函数序列化了用户的资料之后再保存到

Read More

PHP类型

PHP类型基础知识

PHP是弱类型语言(依照laruence的说法是一种中强类型语言)

所谓的弱类型就是在申明一个变量的时候,并不需要显式指明它保存的数据的类型,在程序执行的过程中可以根据需求动态的改变变量的类型.

那PHP是如何实现这个功能的呢?

首先PHP定义了一个保存变量的结构体(C语言)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
typedef struct _zval_struct zval;
typedef union _zvalue_value {
long lval; /* long value */
double dval; /* double value */
struct {
char *val;
int len;
} str;
HashTable *ht; /* hash table value */
zend_object_value obj;
zend_ast *ast;
} zvalue_value;
struct _zval_struct {
/* Variable information */
zvalue_value value; /* value */
zend_uint refcount__gc; /* PHP的内存回收机制需要这个值,现在我们并不需要对它特别关注 */
zend_uchar type; /* active type */
zend_uchar is_ref__gc;
};
Read More

心情杂谈

哎哎哎,老司机一言不合就爆洞啊,这个洞在之前分析CVE-2016-3714的时候也发现了,结果被捂烂了…心塞塞~那我就写一下当时是怎么发现怎么这个洞…

漏洞分析正文

之前在分析CVE-2016-3714的时候想,system()函数处理有问题,那么其他类似的有哪些函数呢?

下面是一个可以执行命令的函数列表:

1
2
3
4
5
6
7
system()
popen()
fork()+exec()
execl()

那么搜索一下调用system()函数有哪些地方?经过搜索的话,最终只有CVE-2016-3714这个漏洞点调用到了一个system(). 那这么接下来搜索一下popen()函数调用点

Read More
⬆︎TOP