XCON上有人向WATERCLOUD提问云安全,WATERCLOUD说,云安全就是个桶,什么都可以装,确实如此,只有有2台服务器的,可以称自己是云计算,有2个客户端的,也可以号称是云计算,最不济的,有2个以上用户用的,也可以称自己是云计算。
云计算目前有2种模式,一种是GOOGLE为主推的,服务器端的云计算,把客户端某一功能集中到多个服务器端来实现,这种云计算强调的是客户端的简洁性,方便用户部署使用和维护。
一种就是MS推的,客户端的云计算,把功能分布到多个客户端来实现,按我的理解,有2种模式的客户端云计算,一种是CLIENT都是对等方式的云计算,比如P2P,局网内的网络磁盘等等,一种是为服务器提供服务的,类似现在很多安全厂商推的云计算,客户端发现恶意页面或者病毒上报服务器端。基于客户端的云计算强调的是充分利用客户端计算机资源。
无论服务器端的云计算,还是客户端的云计算,单纯从技术角度说,都是可以实现的,没有什么高下之分,在不同的运用环境中都有可取的地方。部署到挂马检测中,就形成了2种,服务器端的云计算就是我们的云计算模式,集中在服务器端检测,将检测结果发布给各种厂商,来保护客户端的安全。一种就是很多病毒厂商使用的基于客户端的云计算,利用客户端检测和发现挂马页面上报到服务器端的模式。
基于客户端的云计算的优点在于充分利用了大量客户端的资源和环境,无须厂商部署大量的设备环境和带宽,在真实环境下面实施,但是缺陷也难以回避
1。资源利用授权问题,客户端的云计算是利用了客户端的资源的,其实很多时候,用户并不知道结果会回传服务器,是没有得到用户授权就使用了用户资源的。
2。隐私。回传用户访问的URL信息和一些相关信息,是侵犯了用户隐私的,虽然现在国内用户不是很关注隐私,但确实为存在一定的法律风险。
3。基于客户端的云计算天然存在安全性问题,因为客户端云计算假定每个客户端都是平等的,可信的。所以客户端上传数据的真实性是难以评估的,通过统计概率虽然可以屏蔽单个恶意上报但也带来了滞后性,同时拥有大批量肉机的BOTNET,或者大量的ARP欺骗攻击,都可以欺骗基于客户端的云计算导致误报。
基于服务器端的云计算的优点在于拥有更多的自主性,检查更加及时精确和可控,可以追踪更具体的信息,但是缺陷也是存在的,主要是成本方面的
1。厂商前期需要投入大量的机器和带宽资源来集中检测和模拟环境
2。从检测来说,一旦检测集群的IP地址范围被挂马知道则很容易逃避检测,或者有针对性的DOS检测集群,厂商只能通过分布式多点检测来避免这样的对抗,其实也就是进一步加大了成本投入。
无论如何,基于云计算的云安全,无论是忽悠概念还是真实的云,已经在安全社区开始使用了,未来会有越来越多的云安全模式会出现。
微软Microsoft前几天发布了新的全球招聘网站 https://careers.microsoft.com/。做为全球最大的IT公司,职位机会分布在100多个国家,能够把这些工作都整合起来的确是利民利微的事情。
从界面看,有点像Bing(也是花花绿绿)。网站会根据候选人的IP地址自动选择显示语言。目前做好的国家主页有美国和英国,其它国家主页会陆续推出。
网站的设计理念包括:
全球统一的用户体验界面
全球微软候选人都有机会竞争同一职位
不放过任何一个几角旮旯里的优秀人才
http://www.irecruiter.cn/20090213/562
年初谈到,“三大招聘网站中的2个老总会下台”。 现在应该是现实了。
英雄能够征服天下 ,不能征服自己;圣贤不想征服天下,而征服了自己;
英雄是将自己的烦恼交给别人去挑起来,圣人自己挑尽天下人的烦恼。
最近有一个小项目需要做一些在windows服务器上的调度工作,之前也一直困扰在这里,用php或者python也可以解决问题,但是需要在windows服务器再安装环境,想了想,还是希望用最简单的dos脚本来完成工作。
dos脚本,其实在windows2003中已经有了很多增强,除了原有习惯使用的dos命令之外,还可以使用 wsh(Windows Scripting Host)脚本混合使用。对一些简单的工作有很好的帮助。
下面把这个小项目用的几个好玩的命令给show一下。
1)forfiles forfiles以前没有用过,是可以遍历你指定的目录,按照你的要求,遍历指定的日期、文件大小等的条件,然后进行操作 相当与对files的for命令。到微软上看帮助。我用的是时间参数,删除掉30天之前的文件。FORFILES /D -30 /P d:\datafile\ /M *.* /s /C “cmd /c del @path” d:\datafile是我的工作目录,这个命令可以删除掉30天以前创建的文件,可惜有一个美中不足,就是不能删除目录,用forfiles如果不加参数是可以遍历出目录来的,但是加了参数,就无法遍历或者很麻烦了。然后forfiles之后。增加了一个遍历删除空目录的命令
FORFILES /D -30 /P d:\datafile\ /M *.* /s /C “cmd /c del @path”
d:
cd\
cd datafile
rem =====
for /f “delims=” %%i in (’dir /ad /b /s’) do call :rd_dir_empty “%%i”
goto :eof
rem ======= 删除空目录 =========
:rd_dir_empty
rd %1 2>nul||goto :eof
set dir_route=%1
for /f “delims=” %%i in (%dir_route%) do (
set dir_route=”%%~dpi”
for /f “delims=” %%j in (’dir /ad /b “%%~dpi”‘)do rd “%%~dpi%%j” 2>nul||goto :eof
)
:: 把路径最后的\去掉,以便set route_deepest=”%%~dpi”能取到上一层路径
if “%dir_route:~-2,1%”==”\” set dir_route=”%dir_route:~1,-2%”
if /i not “%cd%”==%dir_route% call :rd_dir_empty %dir_route%
goto :eof
将上述编写成一个批处理 del30.bat
因为datafile目录本身是提供iis服务的。这样删除可能删除不掉。就再编写一个批处理
rundel.bat
rem ==停止iis服务
net stop w3svc
rem ==调用del30.bat 然后返回到此处
call del30.bat
rem==启动iis
net start w3svc
然后再编写任务计划,这个没什么好说的了。每天在凌晨3点执行。
2)删除目录的命令rmdir, 在windows2003中取消了delete的删除目录功能,取代的是rmdir
rmdir 两个参数 /s 删除指定目录下所有的目录和文件
/q 静默模式。
3)管道符号敲回车,在命令中间,有一个第3方工具,这个工具,在运行结束之后,提示,按回车结束。如果不处理他,就会在批处理过程中卡住。-_-# 实验了一下,才发现原来在windows下,回车是CR 。。这个是在我最开始接触计算机的时候,教材上是这样写的。没有想到过了若干年后,才在实际的工作中应用到。真是。。。无语啊。
type CR|第3方工具.exe 参数[1] 参数[2]
type CR然后跟一个管道符,是表示将一个回车传递到第3方程序中去。这样在程序结束的时候,就会自动敲一个回车,来结束这个第3方工具。
喜欢抓业务工作
责任心强,习惯依靠个人努力去完成任务
事无巨细,不善于授权
虽有工作目标,但缺乏目标控制
不善于、不习惯做计划
救火现象普遍
未经过系统的管理技能培训
不善于建立有效的工作网络、工作团队
认为对人的管理是人事部门的事
不善于招聘、选拔、培训、发展激励等人力资源管理工作
其实。主管应该是
专业技能专家角色
信息沟通角色
人际关系角色
决策者角色
运单: ****************
已签收: *** 星期一, 八月 24, 2009 于 10:23
Boston, MA – USA – Beijing & Surrounding Area – China, People’s Republic
星期一, 八月 24, 2009 时间 位置已派送并签收: *** 10:23 Beijing & Surrounding Area – China, People’s Republic
快件正在派送中09:01 Beijing & Surrounding Area – China, People’s Republic
快件已经到达派送作业地点 Beijing & Surrounding Area – China, People’s Republic07:11 Beijing & Surrounding Area – China, People’s Republic
Piece 1:JD0030130683010687
星期日, 八月 23, 2009 离开转运地 Beijing & Surrounding Area – China, People’s Republic14:06 Beijing & Surrounding Area – China, People’s Republic
Piece 1:JD0030130683010687
作业中 Beijing & Surrounding Area – China, People’s Republic14:02 Beijing & Surrounding Area – China, People’s Republic
Piece 1:JD0030130683010687
快件已完成清关手续并从海关放行 Beijing & Surrounding Area – China, People’s Republic09:53 Beijing & Surrounding Area – China, People’s Republic
快件到达分拣作业地点 Beijing & Surrounding Area – China, People’s Republic09:53 Beijing & Surrounding Area – China, People’s Republic
离开转运地 Hong Kong – Hub – Hong Kong02:53 Hong Kong – Hub – Hong Kong
作业中 Hong Kong – Hub – Hong Kong02:50 Hong Kong – Hub – Hong Kong
星期六, 八月 22, 2009 作业中 Hong Kong – Hub – Hong Kong00:11 Hong Kong – Hub – Hong Kong
星期五, 八月 21, 2009 快件到达分拣作业地点 Hong Kong – Hub – Hong Kong12:33 Hong Kong – Hub – Hong Kong
星期四, 八月 20, 2009 离开转运地 Cincinnati Hub – USA05:34 Cincinnati Hub, OH – USA
作业中 Cincinnati Hub – USA04:37 Cincinnati Hub, OH – USA
星期三, 八月 19, 2009 离开转运地 Boston – USA22:14 Boston, MA – USA
Piece 1:JD0030130683010687
作业中 Boston – USA22:13 Boston, MA – USA
Piece 1:JD0030130683010687
快件已从发件人处提取17:30 Boston, MA – USA
从alisdn上转过来的,很全面,不错的东西。
1. 设置windbg的符号方式srv*d:\symbols*http://msdl.microsoft.com/download/symbols
2. 如何设置windbg的远程调试模式。
远程调试最好的是dbgsvr模式,即符号可以位于调试机的模式
1) 在目标机器上C:\Program Files\Debugging Tools for Windows>dbgsrv.exe -t tcp:port=1234,password=spat
2) 在你的机器上 windbg.exe -premote tcp:server=192.168.1.102,port=1234,password=spat -p 596 //where 596 = PID of target
3) 最后只要设置你自己的符号即可
3. 如何设置windbg 可以使用!address命令
参照1设置路径即可。
4. sys的抓取dump的工具条 /developer:thesys
1) sys的工具
2) windbg .dump /ma c:\mydump.dmp 或者参考windbg 的.dump命令
3) adplus 方式
adplus -crash -pn test.exe -o c:\mydumps\
adplus -hang -pn test.exe -o c:\mydumps\
5. 调试器随程序启动调试
1). 使用全局标志编辑器 (Gflags.exe)
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
请注意 Gflags.exe 文件通常位于以下目录: C:\Program Files \Debugging Tools for Windows。
运行 Gflags.exe 文件以启动全局标志编辑器。
在 图像文件名称 文本框中,键入承载您要调试的服务的进程的映像名称。 是例如如果您要调试由具有 MyService.exe 作为图像名称的进
程承载的服务,键入 MyService.exe 。目标 下, 单击以选择 图像文件选项 选项。图像调试器选项 ,下单击以选中 调试器 复选框。
调试器 文本框中键入您要使用的调试器的完整路径。 是例如如果您要使用 WinDbg 调试器调试服务,您可以键入类似于以下内容的完整路
径: C:\Program Files \Debugging Tools,for Windows\windbg.exe 单击 应用 ,然后单击 确定 以退出全局标记编辑器。
or http://support.microsoft.com/?kbid=824344
2) 在此键值下建立Debugger=c:\mydbg\autodump.bat 内容如下:
cscript.exe c:\debuggers\adplus.vbs -crash -o c:\mydumps\ -sc %1
6. 替换目标机器上的默认调试器比如Dr. Watson
1) drwtsn32.exe 能够启动,另外添加 -i 参数可以注册它作为调试器
2) 编辑aedebug
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ AeDebug
3) 替换Debugger 从drwtsn32.exe -p %ld -e %ld -g 为
windbg.exe -p %ld -e %ld -c “.dump /mfh c:\myfile.dmp;q”
7. 常见windbg 命令
1) r d e read/dump/edit registry
2) d 可扩展为dd dc db dw 等
3) dds 可以查看esp上的stack符号列表 , 也可确认vtable是否合法
dds esp
x t2!A::`vftable` …. , dds addr
4) s -a/-u address length pattern 可以查询asii或者unicode的字符串在范围内
s -a 00400000 L?50000 “taobao.com”
5) ba [r/e][1/2/4] var/address 可以设定指定地址的访问断点
6) !runaway 可以查看线程对时间的占用
7) ~*kb 可以查看所有线程的堆栈
x var/symbol 可以查看地址,比如 x msvcrt!printf
9) u address , 可以反汇编指定地点的代码
10) 超过3个参数的检查
.frame /r framen
查看esp,然后找到想要的参数
dd/du/dc address 即可
11)dt 显示指定地址处的内存结构
dt this … dt this CMyClass
12) wt 递归显示所在点之后的调用状况 , wt -l2 递归展示两级
13) 异常断点的设置
sxx/sxn/sdd 启用
sx{e|d|i|n} [-c "Cmd1"] [-c2 "Cmd2"] [-h] {Exception|Event|*}
cmd1表示 first change , cmd2 sencond change
举例来说,某个模块加载时候:
sxe ld:t2.dll
这样当加载t2.dll 时候将触发一个断点
av : Access violation
eh: C++ EH exception
….
14) 一些稍高级的调试统计指令
ba w4 t2!g_cnt “j (poi(t2!g_1) cmp12.log
立刻能够看到以内存增量排序的backtrace的列表,然后可以具体查看这个backtrace然后
使用!heap -p -a addr 来看callstack
尝试的方式和手段
1. vertarget 看看系统运行了多久了
2. !peb 查看环境信息
3. 查看是否有msvcrd.dll 这类debug的dll加载
4. lmf 查看是否有unload的模块,是否正常
5. !analyze -v 观察问题描述
tcp_max_syn_backlog太小了,增大即可
今天在群里,跟别人争论那个rm删除文件 时提示太多的问题,后来在网上找了一下相关的东西,发现确实有此类问题,但大多数都是在aix提问出来
如下:
非常常见的一个 Unix/Linux 命令错误信息: The parameter list is too long.
$ find /backup/* -ctime 2
ksh: /usr/bin/find: 0403-027 The parameter list is too long.
ind: 0403-027 The parameter list is too long 这个错误信息很让人迷惑: 难道该目录下文件太多了么? 其实不是的, 问题出在那个 “*” 上,Korn Shell 默认把 * 作为 Metadata 处理,进行了扩展,进而这条语句备错误的解析.我的操作平台是 AIX 5.3. 我不确定这是和这个平台的 Korn Shell 有关.
使用 ls / grep / find 等命令时侯因为通配符的使用, 一不小心就会遇到这样的错误.可以通过对对象添加引号来禁止扩展.
另外有的时候, 使用 rm 命令的时候也可能遇到:
rm:0403-027 The parameter list is too long.
这个错误的根本原因是因为 /usr/include/limits.h 定义系统核心 LINE_BUFSZ 限制.
如果有大量文件数需要删除,
可以考虑用 xargs 的 -n 参数进行批量删除.参考如下示例:
find /backup/ -ctime 2 -print | xargs -n 10 rm {} \;