我们经常会感觉电脑行为有点奇怪, 比如总是打开莫名其妙的网站, 或者偶尔变卡(网络/CPU), 似乎自己"中毒"了,

但X60安全卫士或者X讯电脑管家扫描之后又说你电脑"非常安全", 那么有可能你已经被黑客光顾过了. 这种时候也许要专业的取证人员出场,

但似乎又有点小提大作. 因此本文介绍一些低成本的自检方法, 对于个人用户可以快速判断自己是否已经被入侵过.

1. 异常的日志记录

通常我们需要检查一些可疑的事件记录, 比如:

“Event log service was stopped.”(事件记录服务已经停止)
“Windows File Protection is not active on this system.”(Windows文件保护未开启)
“The protected System file [file name] was not restored to its original, valid version because of the Windows File Protection…”(受保护的系统文件XXX无法还原)
“The MS Telnet Service has started successfully.”(Telnet服务开启成功)

除此之外, 还可以看看有没有大量失败的登录日志或者被锁定的账户.

查看事件日志有两种方式:

  1. 通过图形界面查看, 开始->运行 eventvwr.msc

  2. 通过命令行查看, 主要是使用eventquery.vbs脚本:

    C:> eventquery.vbs | more

或者只看某个条目下的日志:

C:> eventquery.vbs /L security

eventquery.vbs是使用可以查看命令行帮助或者微软的官方文档.

2. 异常的进程和服务

即在我们熟知的Windows任务管理器中查看是否有奇怪的进程在运行, 重点关注用户名是SYSTEM(系统)或者Administrator(管理员), 以及在管理员组的用户.

当然, 你最好能熟悉正常的进程和服务, 不然也不知道某个进程是不是"异常"的. 如果不熟悉也不要紧, 对着任务管理器不认识的进程, 挨个google一遍也就能大概了解了.

查找异常进程

使用Ctrl+Alt+Del快捷键或者开始->运行taskmgr.exe打开任务管理器即可看到运行中的进程. 当然也可以使用命令行查看进程:

C:> tasklist
C:> wmic process list full

查找异常服务

  • 1). 图形界面: 开始->运行 services.msc

  • 2). 命令行:

    C:> net start

    C:> sc query

查找和每个进程关联的服务:

C:> tasklist /svc

3. 异常的文件和注册表

如果磁盘可用空间突然减小, 我们可以查找文件看是否有异常. 通过开始菜单依次点击:

开始->查找->文件或目录

然后设置查找选项, 比如文件大小大于10000KB, 或者创建/修改时间在一周以内, 并搜索相关文件.

对于注册表, 通常是查找自启动的注册点, 并检查对应的应用程序, 常见的启动点为:

HKLM\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\Software\Microsoft\Windows\CurrentVersion\Runonce
HKLM\Software\Microsoft\Windows\CurrentVersion\RunonceEx
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
HKCU\Software\Microsoft\Windows\CurrentVersion\Runonce
HKCU\Software\Microsoft\Windows\CurrentVersion\RunonceEx

注: HKLM和HKCU分别是HKEY_LOCAL_MACHINEHKEY_CURRENT_USER的缩写.

查看注册表有两种方式:

  1. 图形界面: 开始->运行 regedit.exe

  2. 命令行reg query <key>, 例:

    C:> reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Run

当然除此之外还有很多注册点可以进行自启动, 这个在下面说.

4. 异常的计划任务

接下来是查看异常的计划任务, 重点关注那些以管理员组或者SYSTEM权限, 或者是以空白用户名定时启动的任务.

查看定时任务

  1. 图形界面, 可以通过开始菜单搜索Task Scheduler打开, 或者:

    开始->运行 taskschd.msc /s

  2. 命令行输出计划任务:

    C:> schtasks

查看自启动程序

  1. 图形界面, 开始->运行 msconfig.exe

  2. 命令行:

    C:> wmic startup list full

其他自启动入口

要注意的是, msconfig这些命令只是列出了部分开机自动启动的程序, Windows开机自启动的方式很多, 包括劫持系统程序/动态运行库等方式,

其中涉及到许多注册表入口, 感兴趣的朋友可以查看网上的其他文章.

5. 异常的网络流量

常用的网络相关自检命令:

  • 检查防火墙配置:

    C:> netsh firewall show config

  • 查看共享文件, 检查是否是主动分享的:

    C:> net view \127.0.0.1

  • 查看本机活跃的会话:

    C:> net session

  • 查看本机对其他系统打开的会话:

    C:> net use

  • 查看NetBIOS over TCP/IP 的激活状态:

    C:> nbtstat -S

  • 查看当前网络连接和监听情况:

    C:> netstat -na

  • 持续输出上述信息, 每3秒刷新一次:

    C:> netstat -na 3

  • 查看网络连接对应的进程id(-o)和进程名字(-b)

    C:> netstat -naob

注: netstat -b 除了显示进程名字, 还显示了进程所加载的DLL信息, 所以持续输出的话会消耗比较多的CPU资源.

对于其他选项, 可以通过netstat -h查看帮助.

6. 异常帐号

重点查看新添加进管理员组的帐号.

  1. 图形界面方式:

    开始->运行 lusrmgr.msc -> 点击用户组 -> 双击管理员

然后查看里面的用户列表.

  1. 命令行方式:

    C:> net user

    C:> net localgroup administrators

小结

当发现电脑突然变卡的时, 应当及时查看任务管理器看是否有某个异常进程占用了大量CPU资源; 当系统异常死机时,

应当及时检查对应日志, 看是否是某个程序执行exp导致的崩溃. 总而言之, 最好经常按照上述方式快速对系统做一遍检查,

以即使找出可能是电脑入侵引起的反常迹象, 以免导致个人信息和财产遭受损害.

快速自检电脑是否被黑客入侵过(Windows版)的更多相关文章

  1. 快速自检电脑是否被黑客入侵过(Linux版)

    之前写了一篇快速自检电脑是否被黑客入侵过(Windows版), 这次就来写写Linux版本的. 前言 严谨地说, Linux只是一个内核, GNU Linux才算完整的操作系统, 但在本文里还是用通俗 ...

  2. 快速自检电脑是否被黑客入侵过(Linux版)

    前言 严谨地说, Linux只是一个内核, `GNU Linux`才算完整的操作系统, 但在本文里还是用通俗的叫法, 把`Ubuntu`,`Debian`,`RedHat`,`CentOS`,`Arc ...

  3. Mysql被黑客入侵及安全措施总结

    情况概述 今天登陆在腾讯云服务器上搭建的 MySQL 数据库,发现数据库被黑了,黑客提示十分明显. MySQL 中只剩下两个数据库,一个是information_schema,另一个是黑客创建的PLE ...

  4. dotnet 使用 Qpush 快速从电脑到手机推送文字

    在手机打字总不是方便,于是就有了 Qpush 这个工具,通过这个工具可以快速从电脑到手机推送文字. 但是这个工具没有找到客户端,于是我就给他写了一个库,通过这个库可以快速进行开发 先介绍QPush 快 ...

  5. Dappy如何防止DNS黑客入侵

    作者:Raphaël 译者注:Dappy是RChain生态中的DNS[域名系统(服务)协议].Dappy基于RChain的技术架构保障了域名系统的安全性. Dappy是一个用于文件和Web应用程序的去 ...

  6. 微信电脑版真的要来了 微信Windows版客户端1.0 Alpha推出

    微信电脑版的搜索量一直很大,但只有网页版,之前也写了微信网页版APP - 网页微信客户端电脑版体验,在键盘上打字的感觉就是快.现在微信Windows版客户端1.0 Alpha推出了,来一睹芳容吧(20 ...

  7. 【黑客基础】Windows PowerShell 脚本学习(上)

    视频地址:[黑客基础]Windows PowerShell 脚本学习 2019.12.05 学习笔记 1.$PSVersionTable :查看PowerShell的版本信息. 2.PowerShel ...

  8. Serverless 初体验:快速开发与部署一个Hello World(Java版)

    昨天被阿里云的这个酷炫大屏吸引了! 我等85后开发者居然这么少!挺好奇到底什么鬼东西都是90.95后在玩?就深入看了一下. 这是一个关于Serverless的体验活动,Serverless在国内一直都 ...

  9. dede织梦如何防止被黑客入侵渗透?

    dede精简设置篇:避免被hack注射挂马 精简设置篇:不需要的功能统统删除.比如不需要会员就将member文件夹删除.删除多余组件是避免被hack注射的最佳办法.将每个目录添加空的index.htm ...

随机推荐

  1. Python自学笔记-time模块(转)

    在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平台可能有所不同 ...

  2. Java视频扩展知识 线程池的了解

     Java视频扩展知识   线程池的了解 1.简单介绍: Jdk1.5之后加入了java.util.concurrent包,这个包中主要介绍java中线程以及线程池的使用.为我们在开发中处理线程的 ...

  3. 远程连接MySQL,防火墙阻止访问,解决方法

    远程连接MySQL,防火墙阻止访问,解决方法   xp/2003添加防火墙例外端口 打开防火墙,选择例外选项卡,添加端口 名称:mysqlport 端口号:3306 选中TCP win7添加防火墙例外 ...

  4. asp.net(C#)html无限分类树 可新增 删除 修改

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ProductSort.aspx ...

  5. C++类中静态变量和静态方法使用介绍

    静态成员的提出是为了解决数据共享的问题.实现共享有许多方法,如:设置全局性的变量或对象是一种方法.但是,全局变量或对象是有局限性的.这一章里,我们主要讲述类的静态成员来实现数据的共享. 静态数据成员 ...

  6. EF框架搭建小总结--ModelFirst模型优先

    前言:去年刚工作的时候,也是刚刚正式接触.net,当时了解了EF以及三种开发模式,Database First.Model First .Code First.公司用的开发模式是Database Fi ...

  7. C++每次读取一行字符串输入(学习笔记) (转)

    1. 面向行的输入:getline()getline()函数读取整行,它使用通过回车键输入的换行符来确定输入结尾. cin.getline(Arr, 20) // Arr为用来输入行的数组的名称:   ...

  8. Hadoop(十三)分析MapReduce程序

    前言 刚才发生了悲伤的一幕,本来这篇博客马上就要写好的,花了我一晚上的时间.但是刚才电脑没有插电源就没有了.很难受!想哭,但是没有办法继续站起来. 前面的一篇博文中介绍了什么是MapReduce,这一 ...

  9. [Java第一课]环境变量的配置以及eclipse一些常用快捷键

    1.环境变量的配置(这里对xp系统电脑来说:) 首先安装jdk软件. 然后在我的电脑(右键)-->属性-->高级-->环境变量-->系统变量(注意)-->新建(新建两个p ...

  10. 翻译:MLAPP(2.3节 一些常见的离散分布)

    笔者:尝试翻译MLAPP(Machine Learning: a Probabilistic Perspective)一书,供机器学习的学者参考,如有错误理解之处请指出,不胜感激!(如需转载,请联系本 ...