月度归档: 2016 年 9 月

  • Linux Centos Debian 常用 netstat 命令 合集

    这是一个十分常用的命令,可以让你实时了解到云主机当前的状态,例如:常见的80连接数量,以及按一些排序,来检查是否被攻击?查看time_wait和syn连接数量等等。

    1.查看所有80端口的连接数

    netstat -nat|grep -i "80"|wc -l

    2.对连接的IP按连接数量进行排序

    netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

    3.查看TCP连接状态

    netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn
    netstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}' 
    netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}'
    netstat -n | awk '/^tcp/ {++arr[$NF]};END {for(k in arr) print k,"\t",arr[k]}'
    netstat -n |awk '/^tcp/ {print $NF}'|sort|uniq -c|sort -rn
    netstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c

    4.查看80端口连接数最多的20个IP

    netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n20
    netstat -ant |awk '/:80/{split($5,ip,":");++A[ip[1]]}END{for(i in A) print A,i}' |sort -rn|head -n20

    5.用tcpdump嗅探80端口的访问看看谁最高

    tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr |head -20

    6.查找较多time_wait连接

    netstat -n|grep TIME_WAIT|awk '{print $5}'|sort|uniq -c|sort -rn|head -n20

    7.找查较多的SYN连接

    netstat -an | grep SYN | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr | more
  • Easypanel 下 安装 WordPress 搭建博客 图文教程

    前面我们介绍了easypanel 绑定域名 在线解压文件 建立索引 图文教程,一些小伙伴不知道怎么安装wordpress,我们这里写出具体步骤及方法:

    1.下载Wordpress 代码,在线文件–远程下载

    20160913133527

    完成后关闭下载窗口

    20160913133802

    2.刷新页面,解压文件夹

    20160913133923

    20160913134118

    完成后会有出现一个wordpress文件夹

    20160913134210

    3.绑定域名,对应目录

    20160913134559

    4.使用域名访问,配置wordpress

    20160913134737

    20160913134812

    数据库名,用户名,等请在面板首页右侧查看。密码默认为面板登陆密码。

    20160913134926

    20160913135341

    一步步完成安装即可~

  • Discuz uc.key泄露导致代码注入漏洞 修复方案

    漏洞名称:Discuz uc.key泄露导致代码注入漏洞
    补丁编号:00090
    补丁文件:/api/uc.php
    补丁来源:云盾自研
    更新时间:2016-06-04 14:21:12
    漏洞描述:在Discuz中,uc_key是UC客户端与服务端通信的通信密钥,discuz中的/api/uc.php存在代码写入漏洞,导致黑客可写入恶意代码获取uckey,最终进入网站后台,造成数据泄漏。您也可以登录官方网站更新到最新版本解决

    修复方案:
    http://www.discuz.net/forum.php?mod=viewthread&tid=3780579&highlight=uc

  • Discuz memcache+ssrf GETSHELL漏洞的解决方法

    漏洞描述:Discuz存在SSRF漏洞,在配置了memcache的情况下,攻击者可以利用ssrf通过memcache中转,向磁盘上写入WEBSHELL恶意代码,从而造成数据库泄漏

    解决方法一:
    打开/source/function/function_core.php
    搜索

    $content = preg_replace($_G['setting']['output']['preg']['search'], $_G['setting']['output']['preg']['replace'], $content);

    在上面加入(看清楚一定是上面)

    if (preg_match("(/|#|\+|%).*(/|#|\+|%)e", $_G['setting']['output']['preg']['search']) !== FALSE) { die("request error"); }

    解决方法二:??停止使用或卸载memcache

  • 抓取豆瓣小组内容入库到WordPress 插件FetchPost

    最近闲来无事写了一个抓取豆瓣小组内容入库到Wordpress的插件FetchPost。

    其实豆瓣小组里面的内容还挺有意思的。

    由于豆瓣网禁止抓取内容且是https协议,所以我们这里仅能使用Linux自带的curl抓取。

    演示站:http://xianzizhou.com

    2016/09/08更新:

    1.初始化插件,支持抓取豆瓣小组内容。

    2.支持抓取帖子全部分页内容。

    3.入库到Wordpress。

    4.支持入库时自定义标签功能。

    20160909135330

    20160909135141

    20160909135240

     

  • 2016/09/01关于Discuz安全补丁的重要通知

    ? ? ? ?开源社区论坛软件系统Discuz存在一个高危跨站漏洞,攻击者利用该漏洞可窃取论坛站点用户信息。
    ? ?? ? 由于该漏洞影响版本为全版本,且影响范围较大,风险等级较高,如果您采用了Discuz,我们强烈建议您对您的论坛进行安全加固。
    漏洞详情如下:
    【风险概述】:导致论坛站点用户信息被窃取等风险;
    【漏洞描述】:Discuz的helper_mobile.php存在跨站漏洞,攻击者可利用该漏洞窃取论坛站点用户信息。
    【影响版本】:全版本
    【修复建议】:
    修改文件:source/class/helper/helper_mobile.php
    找到以下两行:
    $query_sting_tmp = str_replace(array('&mobile=yes','mobile=yes'), array(''), $_SERVER['QUERY_STRING']);
    $_G['setting']['mobile']['pageurl'] =$_G['siteurl'].substr($_G['PHP_SELF'], 1).($query_sting_tmp ?'?'.$query_sting_tmp.'&mobile=no' : '?mobile=no' );

     

    替换为以下四行:
    parse_str($_SERVER['QUERY_STRING'], $query);
    $query['mobile'] = 'no';
    $query_sting_tmp = http_build_query($query);
    $_G['setting']['mobile']['pageurl'] =$_G['siteurl'].substr($_G['PHP_SELF'], 1).$query_sting_tmp;

     

  • elasticsearch的基本用法

    开始学习使用 elasticsearch, 把步骤记录在这里:

    最大的特点:
    1. 数据库的 database, 就是? index
    2. 数据库的 table,? 就是 tag
    3. 不要使用browser, 使用curl来进行客户端操作.? 否则会出现 java heap ooxx…

    curl:? -X 后面跟 RESTful :? GET, POST …
    -d 后面跟数据。 (d = data to send)

    1. create:

    指定 ID 来建立新记录。 (貌似PUT, POST都可以)
    $ curl -XPOST localhost:9200/films/md/2 -d ‘
    { “name”:”hei yi ren”, “tag”: “good”}’

    使用自动生成的 ID 建立新纪录:
    $ curl -XPOST localhost:9200/films/md -d ‘
    { “name”:”ma da jia si jia3″, “tag”: “good”}’

    2. 查询:
    2.1 查询所有的 index, type:
    $ curl localhost:9200/_search?pretty=true

    2.2 查询某个index下所有的type:
    $ curl localhost:9200/films/_search

    2.3 查询某个index 下, 某个 type下所有的记录:
    $ curl localhost:9200/films/md/_search?pretty=true

    2.4 带有参数的查询:
    $ curl localhost:9200/films/md/_search?q=tag:good
    {“took”:7,”timed_out”:false,”_shards”:{“total”:5,”successful”:5,”failed”:0},”hits”:{“total”:2,”max_score”:1.0,”hits”:[{“_index”:”film”,”_type”:”md”,”_id”:”2″,”_score”:1.0, “_source” :
    { “name”:”hei yi ren”, “tag”: “good”}},{“_index”:”film”,”_type”:”md”,”_id”:”1″,”_score”:0.30685282, “_source” :
    { “name”:”ma da jia si jia”, “tag”: “good”}}]}}

    2.5 使用JSON参数的查询: (注意 query 和 term 关键字)
    $ curl localhost:9200/film/_search -d ‘
    {“query” : { “term”: { “tag”:”bad”}}}’

    3. update
    $ curl -XPUT localhost:9200/films/md/1 -d { …(data)… }

    4. 删除。 删除所有的:
    $ curl -XDELETE localhost:9200/films

WeChat
↑