-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcontent.json
1 lines (1 loc) · 10.8 KB
/
content.json
1
[{"title":"Procmon 案例#1","date":"2017-11-11T02:54:48.549Z","path":"2017/11/11/Procmon-case-01/","text":"问题描述用户反馈,使用他的电脑访问网络共享文件夹\\\\zch49app02\\mailattach,建立新文件夹时(点击鼠标邮件,选择新建文件夹),窗口会失去响应很长时间(约一分钟),点击鼠标、键盘没有任何反馈,等待一分钟后窗口恢复正常且文件夹建立成功。通常情况这个过程只需要1~2秒,用户怀疑是我们的文件共享服务器有问题。 问题分析新建文件夹操作涉及到用户电脑、网络通讯(用户对应的交换机端口,端口跳线)、文件共享服务器等。所以设计方案(通过另外一台只安装了基本系统主机访问该文件共享服务,新建立文件夹)来排除不相关的因素。通过测试,没有出现用户问题,所以初步判断应该是用户电脑自身的问题。 处理过程初步判断是用户电脑问题,所以网络通讯测试,服务器测试全部忽略。采用Procmon抓去LOG来分析。具体步骤如下: 1、在用户电脑上,启动Procmon且开启日志记录。让用户修改文件共享服务器上的文件名(原来文件夹 ‘new folder’修改为 ‘new folder2’),等待漫长时间后修改成功(问题重现),停止日志记录,保存LOG。 2、打开LOG文件,如第一步描述,我们是把’new folder’修改成’new folder2’,所以先考虑查看和’new folder’相关的日志,看看有什么日志内容。设置过滤路径包含’new folder‘的内容(截取部分内容,如下图片)可以看到和关键字相关的有进程有svchost.exe、Exlorer.EXE。svchost.exe进程一般是服进程而不会参与文件窗口显示,所以忽略这个进程;而显示窗口和explorer相关,所以我们进一步设置新的过滤条件,包含explorer.exe的进程。这样整个日志就只出现和explorer.exe进程且操作目录是’new folder’相关的内容,其它则不在显示。 3、过滤 explorer.exe后,拖动Procmon日志框,因为窗口Hang,则explorer.exe一般会有时间跳跃地方;直到发现如下图片,时间中断1分钟(截取部分内容,如下图)这里我们可以理解,在这个时间段explorer.exe进程没有任何新的操作,而这个现象是不正常的。如果你开启Procmon记录过滤explorer.exe,正常操作电脑,你会发现explorer.exe时间不会出现1分钟的中断。 4、explorer.exe 除了处理这次修改文件名的操作外,还会处理其它操作(基于Windows多线程原理)。然后开启线程显示,然后搜索 new folder2发现如下结果从图片发现setrenameinfo操作(从信息很符合我们修改目录名),且TID 10924。可以初步判断 TID 10924是这次操作的线程。 5、取消先前的所有过滤,设置只过滤条件TID为10924,只查看线程是10924的日志。回到刚才我们观察到的时间中断点 6、从LOG来看,没发现什么奇怪的地方。于是点击19:50最后一个记录,且查看其Stack调用(获取现成这步操作,有哪些功能调用,你能在微软官方的教材里面获取Stack的解释),发现bit9的痕迹(Parity.sys)备注:公司在前期大面积部署了Bit9(安全软件,而Parity.sys是Bit9的一个驱动;此驱动会在Windows启动以服务方式加载进系统。用普通删除文件方式来删除,Windows删除会提示正在使用无法删除。需要通过Winpe,来删除硬盘Windows服务方式来解决)。这里也可以点击Parity.sys,然后进一步查看属性,也会发现是Bit9进程而不是Windows系统自身的进程。使用Winpe,采用非正常手段,删除Bit9后,恢复正常。 最后通过分析,了解到是部署安全软件引起的问题。不过这个问题也很有迷惑性。因为是公司大面积部署Bit9,绝大部分用户都安装Bit9软件,但是只有极个别用户有碰见类似问题;如果按照如果软件有问题,大家电脑都应该有问题的思路,就会让人无从下手。通过分析了解到软件的Bug(例如本例的Bit9),会在不同机器上有不同的表现。Procmon帮我们分析、认识到具体原因。另外Windows自身的程序,动态连接库等一般不会引起使用异常,这就是直接跳过图片中flmgr.sys、ntoskrnl.exe进程检查的原因。 特别注意,修改系统文件(修改注册表,删除系统文件等)可能会引起系统崩溃,所以任何操作请三思。最好先在测试机上操作,确定没问题再到真实环境操作。","tags":[{"name":"Procmon","slug":"Procmon","permalink":"http://tbs575.github.io/tags/Procmon/"}]},{"title":"本博客说明","date":"2017-11-10T09:16:27.000Z","path":"2017/11/10/Readme/","text":"学以致用·宁静致远学习是一个长期的过程,语言、计算机、生活中的一切都尽如此。如何把学到的东西在现实中用起来,有些时候却是那么的困难。某些知识如何在现实中得到实践远比学习本身更重要。学习是一个长期过程。这个过程中,也许你看不到自己的任何进步。1年、2年、甚至10年。别忘记最初的梦想,沉下来,艰难地走下去。希望有天自己也能说“无它,唯手熟尔” 本博客采用 Github + Hexo方式来构建。最初想法是记录博客,对于主题样式不想花太多的精力去折腾,简单、美观即可。最先测试了Jekyll方式,根据网上的帖子,方法在主题上卡壳很久,原来Jekyll有很多好的主题,不过并不被Github支持,辛辛苦苦研究了半天的主题最后发现不支持。后来才采用了Hexo方式,理论上Hexo的主题都会被Github支持(其实Hexo会根据你的主题自动生成静态的HTML页面)。你只需要参考另外一篇帖子,选取自己喜欢的主题,快速上手(写博客)。 留言板,最初采用disqus,不过貌似会被“墙”掉。最后采用“友言”,不过貌似友言也不正常(本地Hexo服务器测试正常,而github无法显示),如果你有好的建议欢迎来邮件。","tags":[]},{"title":"Github 博客搭建","date":"2017-11-09T17:39:59.000Z","path":"2017/11/09/Github-Blog/","text":"在反反复复折腾Github构建个人博客后,最后选定了Hexo方式来构建。 环境构建我是采用ubuntu系统来构建本地的Hexo博客环境,命令如下1234567sudo apt install npm # 安装npm包sudo apt install nodejs-legacy # 安装 nodejssudo npm install -g hexo-cli # 安装hexo环境cd ~ # 进入自己家目录hexo init blogs # 初始化blogs (博客目录)cd blogs/ # 进入blogs目录npm install # 主题安装采用 BlueLake主题,访问 BlueLake 按照博主的顺序安装、配置即可 补充 不要用手动 git push方式来上传博客,Github会提示错误。修改 _config.yml文件,使用命令 hexo deploy 来上传文件。 1234567# Deployment## Docs: https://hexo.io/docs/deployment.htmldeploy: type: git # 使用git类型仓库 repo: git@github.com:tbs575/tbs575.github.io.git # 设置仓库账户和密码,和sshkey配合,用ssh -T git@github.com通过后,可以用hexo deploy直接上传,不需要每次都舒服帐号和密码 branch: master 如何添加文章的图片。根据这篇文章提到的方法,安装 npm install hexo-asset-image --save,使用命令 hexo n “xxx” 创建新的博客,把图片放入 source/_posts/xxx目录下。在文章里面 来加入图片。","tags":[{"name":"Github","slug":"Github","permalink":"http://tbs575.github.io/tags/Github/"}]},{"title":"Procmon 入门篇","date":"2017-11-01T16:16:01.000Z","path":"2017/11/01/Procmon/","text":"Procmon,全称 Process Monitor。是微软的一个高级监控工具,属于SysinternalsSuite工具包其中一个(SysinternalsSuite 包含了很多有用的工具,例如进程分析Procexp,网络测试Psping等),SysinternalsSuite适用Windows系统。 Procmon是什么Procmon是实时监控软件,内记录注册表,文件访问,系统模块调用的一些信息。实际上Procmon是一个高级排错工具。对于Windows环境的一切issue(例如Outlook为什么无法启动,修改网络服务器的文件为什么花的时间很长)理论上都可以用这个工具来分析,解决。为什么是理论上?因为需要从大量无关的LOG信息里面找出你需要的关键信息,需要很多的系统原理知识,时间,经验;很多时候都选择重装系统来修复一切的软件问题。只是对于电脑使用者来说,重装系统后恢复他们的使用环境确实一件痛苦的事。通过Procmon对系统问题分析,你会对Windows的认识组建加深;随着分析的案例越多,修复系统问题的时间月会越来越短,能力也会越来越强。 获取工具访问微软网站获取工具,网站有该工具的使用介绍。 Procmon 入门官方的教材(当然在互联网的今天,要下载到PDF版也不是一件难事)。微软官方的书,对工具的使用说的很详细,也有不少有趣的案例分析;另外你也能搜索到过国内的一些帖子,对这个工具的使用有一些了解。 建议Windows Troubleshooting有些时候是很复杂的。例如我们访问文件服务器很慢,那么可能是客户机问题、交换机问题、或者文件服务器自身问题,如何设计方案来排除就很关键了。而且Procmon会在很短时间记录很多操作日志,几万条记录甚至更多,如何能快速地定位,和你对Windows的了解有关,也和你知道用户具体操作有关。当你知道用户具体操作内容、步骤越多,越能帮你在上万条日志中找出相关的内容。 最后因为不是针对新手教材,所以没有把工具基本使用作为重点。这篇文章只是为了后续的案例分析作为入门的讲解,对Procmon一个大概的概念。网上的很多针对Procmon的文章都是粗略的讲解,比如看那条LOG、如何解决,而对于对于如何分析问题,解决问题、案例,没有更多的深入,这个才是Procmon的核心。工具只是工具,而要如何利用它才是能力的体现。","tags":[{"name":"Procmon","slug":"Procmon","permalink":"http://tbs575.github.io/tags/Procmon/"},{"name":"Windows","slug":"Windows","permalink":"http://tbs575.github.io/tags/Windows/"}]},{"title":"Hello World","date":"2016-11-09T17:39:59.000Z","path":"2016/11/09/hello-world/","text":"Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick StartCreate a new post1$ hexo new \"My New Post\" More info: Writing Run server1$ hexo server More info: Server Generate static files1$ hexo generate More info: Generating Deploy to remote sites1$ hexo deploy More info: Deployment","tags":[]}]