2014年04月的文章

通过ucenter中的uc_key获取webshell通杀 Discuz X1.5 X2.5 X3

uc_key是UC客户端与服务端通信的通信密钥。因此使用uc_key来getshell只能获取UCenter Client的webshell,即Discuiz!论坛的webshell。如果一个服务器上只有UCenter Server是不能通过uc_key来获取该服务器上的webshell的(不过可以通过uc_key来将服务器上的数据并重置用户口令)。

漏洞很早就有了。直接看代码吧。

» 阅读全文

关键词: webshell

linux系统下python版查杀php webshell后门工具

后门这东西好让人蛋疼,第一文件太多了,不容易找,第二,难找,需要特征匹配啊。搞了一个python版查杀php webshell后门工具,大家可以增加后门的特征码,然后甩到后台给他查杀就可以了。

这个代码比较简单,大家可以继续完善下。

#!/usr/bin/python
# -*- coding: utf-8 -*-
#blog:www.jincon.com

import os
import sys
import re

rulelist = [
    '(\$_(GET|POST|REQUEST)\[.{0,15}\]\(\$_(GET|POST|REQUEST)\[.{0,15}\]\))',
    '(base64_decode\([\'"][\w\+/=]{200,}[\'"]\))',
    'eval\(base64_decode\(',
    '(eval\(\$_(POST|GET|REQUEST)\[.{0,15}\]\))',
    '(assert\(\$_(POST|GET|REQUEST)\[.{0,15}\]\))',
    '(\$[\w_]{0,15}\(\$_(POST|GET|REQUEST)\[.{0,15}\]\))',
    '(wscript\.shell)',
    '(gethostbyname\()',
    '(cmd\.exe)',
    '(shell\.application)',
    '(documents\s+and\s+settings)',
    '(system32)',
    '(serv-u)',
    '(提权)',
    '(phpspy)',
    '(后门)',
    '(webshell)',
    '(Program\s+Files)'
]

def Scan(path):
    for root,dirs,files in os.walk(path):
        for filespath in files:
            isover = False
            if '.' in filespath:
                ext = filespath[(filespath.rindex('.')+1):]
                if ext=='php':
                    file= open(os.path.join(root,filespath))
                    filestr = file.read()
                    file.close()
                    for rule in rulelist:
                        result = re.compile(rule).findall(filestr)
                        if result:
                            print '文件:'+os.path.join(root,filespath)
                            print '恶意代码:'+str(result[0])
                            print '\n\n'
                            break

if os.path.lexists(sys.argv[1]):
    print('\n\n开始扫描:'+sys.argv[1])
    print('               可疑文件                 ')
    print('########################################')
    Scan(sys.argv[1])
    print('提示:扫描完成-- O(∩_∩)O哈哈~')
else:
    print '提示:指定的扫描目录不存在---  我靠( \'o′)!!凸'

关键词: python , webshell

php-5.2和php5.3 版本之下修改php源码的方式防止跨站

php-5.2和php5.3 版本之下修改php源码的方式防止跨站。修改文件:

以php-5.2.17版本为例,位置:main/fopen_wrappers.c

» 阅读全文

关键词: 防止跨站 , 修改php源码

书读百遍其义自现之利用usort对二维数组指定键值排序

usort是php自带的可以自定义排序的函数,usort对二维数组指定键值排序。

bool usort ( array &$array , callable $cmp_function )

本函数将用用户自定义的比较函数对一个数组中的值进行排序。如果要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。

参数

array

输入的数组

cmp_function

在第一个参数小于,等于或大于第二个参数时,该比较函数必须相应地返回一个小于,等于或大于 0 的整数。

不说了,PHP手册看看还是非常好的,书读百遍其义自现,看代码:

» 阅读全文

关键词: 二维数组排序 , usort

wamp报错Call-time pass-by-reference和SCREAM:Error suppression ignored for解决方法

wamp报错SCREAM:Error suppression ignored for

问题:SCREAM:Error suppression ignored for

解决:

在php.ini最下面加入
scream.enabled = Off


第二个:

还有Deprecated: call-time pass-by-reference has been deprecated in

修改php.ini将allow_call_time_pass_reference=Off 改成allow_call_time_pass_reference = On即可。。

提醒大家注意的是,修改php.ini文件是修改如下路径下面的。

E:\wamp\bin\apache\apache2.2.22\bin\php.ini

关键词: call-time pass-by-reference , wamp

分析PHP-FPM进程CPU 100%的原因、步骤及解决方法

做服务器运维的时候,会经常遇到,php-fpm进程CPU 100%,那怎么知道PHP-FPM在运行什么占用那么多的CPU呢?

可以通过进程查看:

一、进程跟踪
# top                  //找出CPU使用率高的进程PID
# strace -p PID              //跟踪进程
# ll /proc/PID/fd            //查看该进程在处理哪些文件
将有可疑的PHP代码修改之,如:file_get_contents没有设置超时时间。

» 阅读全文

关键词: php-fpm进程

openssl心血(HeartBleed) 漏洞的检查和修复方法

openssl心血(heartbleed) 漏洞的检查和修复方法,其实都是冷饭了,呵呵~~~

1.首先用以下网站检测网站是否有漏洞:

http://wangzhan.360.cn/heartbleed

2.然后将openssl升级到1.0.1g方法如下
Debian/Ubuntu:
# apt-get update
# apt-get install openssl libssl1.0.0

CentOS/Redhat/Fedora:

# yum update openssl

3.最重要的还有重启nginx/apache 服务,否则补丁不会生效。

# /etc/init.d/apache2 restart
# /etc/init.d/ngnix restart
# /etc/init.d/httpd restart

关键词: heartbleed , openssl

nodejs的npm安装模块时候报错:npm ERR! Error: CERT_NOT_YET_VALID的解决方法

nodejs我就不介绍了,牛逼的东东,他非常强大。最近在centos6.4简化版的安装了node最新版,但是执行:

 npm install -g supervisor
竟然报错:
[root@localhost ~]# npm install -g supervisor
npm http GET https://registry.npmjs.org/supervisor
npm http GET https://registry.npmjs.org/supervisor
npm http GET https://registry.npmjs.org/supervisor
npm ERR! Error: CERT_NOT_YET_VALID
npm ERR!     at SecurePair.<anonymous> (tls.js:1370:32)
npm ERR!     at SecurePair.EventEmitter.emit (events.js:92:17)
npm ERR!     at SecurePair.maybeInitFinished (tls.js:982:10)
npm ERR!     at CleartextStream.read [as _read] (tls.js:469:13)
npm ERR!     at CleartextStream.Readable.read (_stream_readable.js:320:10)
npm ERR!     at EncryptedStream.write [as _write] (tls.js:366:25)
npm ERR!     at doWrite (_stream_writable.js:226:10)
npm ERR!     at writeOrBuffer (_stream_writable.js:216:5)
npm ERR!     at EncryptedStream.Writable.write (_stream_writable.js:183:11)
npm ERR!     at write (_stream_readable.js:583:24)
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 2.6.32-431.5.1.el6.x86_64
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "supe   rvisor"
npm ERR! cwd /root
npm ERR! node -v v0.10.26
npm ERR! npm -v 1.4.3
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /root/npm-debug.log
npm ERR! not ok code 0
经过仔细排查和google,原来是ssl 的问题:

解决办法:

 npm config set strict-ssl false
然后就OK啦~~~
npm install -g supervisor

如图:


npm.png

npm.png

大小: 9.68 KB
尺寸: 500 x 158
浏览: 35 次
点击打开新窗口浏览全图

关键词: npm , nodejs

Total: 261234Next ›