应急响应(Emergency Response)是指在发生紧急事件或安全事件时,及时采取措施以减轻损失和影响的过程。在计算机安全领域,应急响应通常指针对网络攻击、数据泄露、恶意软件感染等安全事件的应急处理过程。应急响应的主要目标是通过快速检测、隔离和纠正安全事件,尽量减少安全事件对组织的影响和损失。
收集信息:收集客户信息和中毒主机信息,包括样本。
判断类型:判断是否是安全事件,何种安全事件,勒索、挖矿、断网、DoS等等。
深入分析:日志分析、进程分析、启动项分析、样本分析。
清理处置:直接杀掉进程,删除文件,打补丁,抑或是修复文件。
产出报告:整理并输出完整的安全事件报告。
(1)文件变动查询:
find / -nmin -2 (找查两分钟之内文件内容变化的文件)
(2)查询文件最后修改时间:
ls --full-time [文件名]
(3)查询文件哈希值
md5sum [文件名]
(1)Linux系统日志:
/var/log下的secure、messages日志文件比较常用
cat [文件名]|grep [关键字]|wc -l (统计)
(2)Windows系统日志
此电脑--->右键点击管理--->系统工具--->事件查看器--->Windows日志
(1)查看CPU或内存资源占用:top
(2)查看进程的路径:ps -ef
(3)查看正在监听的端口和名字:netstat -ntplu
(4)查看开机启动服务:systemctl list-unit-files
(5)查看服务是否在运行:systemctl status [服务名]
(6)计划任务:crontab -l、/etc/cron.d、/etc/crontab
(7)查看文件哈希:
Windows:certutil.exe -hashfile .\1.txt (需要用powershell)
Linux:md5sum [文件名]
Linux系统
(1)查看用户:/etc/passwd、/etc/shadow
Windows系统
(1)查看用户:net user、注册表中SAM文件查看
(1)网卡配置信息
/etc/sysconfig/network-scripts
(2)查看DNS
cat /etc/resolv.conf
(3)查看网关:route
(4)查看监听端口和相关服务
(1)查看Linux SE
cat /etc/selinux/config (查看是否是开机自启动)
getenforce (查看当前状态)
(2)查看iptables
iptables -L
(3)查看环境变量
echo &PATH
7、监控分析
(1)如zabbix等监控工具
排查思路:
1、可能通过网络连接观察异常端口或者IP通信
2、可以通过任务管理器,详细信息,找到异常文件
3、通过网络连接,详细信息找到异常进程文件,使用杀毒软件检测
防御:
1、开启windows防火墙
2、安装正版的杀毒软件
排查思路:
1、排查网页修改时间
2、查看日志,分析服务器登录时间及IP
防御:
1、服务器设置强密码
2、22端口不对公网开放
3、使用堡垒机及指定IP登录
排查思路:
1、查看日志,分析服务器登录时间及IP
2、查看用户是否有异常
防御:
1、密码大小写,数字,字符不低于8位,使用强密码
2、3389如非必须,不开启个人电脑3389端口
3、如开启3389,指定固定IP可连接
Windows排查思路:
1、排查电脑本机C:\Windows\System32\drivers\etc\hosts文件
2、重启浏览器,确认是否有浏览器缓存
3、ipconfig /all 查看DHCP服务器及DNS服务器IP是否正确
防御:
1、网络接入认证
2、定期网络扫描,是否有内网IP提供DNS服务
3、交换机上把dhcp Snooping开启,防止非法DHCP服务器
排查思路:
1、排查arp表
2、对比MAC地址是否有异常
防御:
1、安装ARP防火墙
2、手动绑定MAC地址
3、网络接入认证,拒绝非实名认证设备接入网络
常见的方法:
CC攻击:攻击者借助代理服务器生成指向受害主机的合法请求,实现DDoS和伪装就叫:CC(Challenge Collapsar),CC主要用来攻击页面的。
SYN攻击:SYN攻击是黑客攻击的手段。SYN洪泛攻击的基础是依赖TCP建立连接时三次握手的设计。
纯流量攻击:发送大量垃圾流量。
排查思路:
1、查看应用日志(CC攻击)
2、查看服务器网络链接(SYN攻击)
3、监控查看网络流量(纯流量攻击)
防御:
1、接入第三方抗DDoS云平台
2、流量清洗
我是Google云的新手,我正在尝试对其进行首次部署。我的第一个部署是RubyonRails项目。我基本上是在关注thisguideinthegoogleclouddocumentation.唯一的区别是我使用的是我自己的项目,而不是他们提供的“helloworld”项目。这是我的app.yaml文件runtime:customvm:trueentrypoint:bundleexecrackup-p8080-Eproductionconfig.ruresources:cpu:0.5memory_gb:1.3disk_size_gb:10当我转到我的项目目录并运行gcloudprevie
在我做的一些网络开发中,我有多个操作开始,比如对外部API的GET请求,我希望它们同时开始,因为一个不依赖另一个的结果。我希望事情能够在后台运行。我找到了concurrent-rubylibrary这似乎运作良好。通过将其混合到您创建的类中,该类的方法具有在后台线程上运行的异步版本。这导致我编写如下代码,其中FirstAsyncWorker和SecondAsyncWorker是我编写的类,我在其中混合了Concurrent::Async模块,并编写了一个名为“work”的方法来发送HTTP请求:defindexop1_result=FirstAsyncWorker.new.async.
我试图在我的RubyonRails应用程序中调试一个极其缓慢的请求调用。我已设法根据自己的喜好优化Controller方法,Rails的日志告诉我它已在XX毫秒内完成操作(Completed200OKin5049ms(Views:34.9ms|ActiveRecord:76.3ms)).但是,在加载页面时,在浏览器中实际呈现任何内容之前打印此消息很长;最多约15秒的等待时间。Rackmini-profiler证实了这一点,告诉我GET操作(不计算完成Controller操作所花费的时间)花费了14秒左右。(分析器还确认Controller操作的执行时间约为5秒)。我可以接受Contro
我想通过Sinatra应用程序代理远程文件。这需要将带有header的HTTP响应从远程源流式传输回客户端,但我不知道如何在Net::HTTP#提供的block内使用流式API时设置响应header获取响应。例如,这不会设置响应头:get'/file'dostreamdo|out|uri=URI("http://manuals.info.apple.com/en/ipad_user_guide.pdf")Net::HTTP.get_response(uri)do|file|headers'Content-Type'=>file.header['Content-Type']file.re
出于某种原因,在我的开发机器上,我对通过Net::HTTP执行的HTTPS请求的响应非常非常慢。我试过RestClient和HTTParty,它们都有同样的问题。它似乎是凭空冒出来的。我已毫无问题地提出这些请求数百次,但今天它们的速度慢得令人难以忍受。pry(main)>putsTime.now;HTTParty.get('https://api.easypost.com/v2/addresses');putsTime.now;2015-04-2908:07:08-05002015-04-2908:09:39-0500如您所见,响应耗时2.5分钟。不仅仅是这个EasyPostAPIUR
我正在尝试下载一个大文件,然后使用Ruby将该文件发布到REST端点。该文件可能非常大,即超过可以存储在内存中甚至磁盘上的临时文件中的容量。我一直在用Net::HTTP尝试这个,但我愿意接受任何其他库(rest-client等)的解决方案,只要他们做我想做的事情。这是我尝试过的:require'net/http'source_uri=URI("https://example.org/very_large_file")source_request=Net::HTTP::Get.new(source_uri)source_http=Net::HTTP.start(source_uri.ho
我们最近更新了我们网站的SSL证书,在MacOSElCapitan10.11.3上出现以下情况:require'net/http'Net::HTTP.getURI('https://www.google.com')#=>"..."#ThesitewhosecertificategotrenewedNet::HTTP.getURI('https://www.example.com')#=>OpenSSL::SSL::SSLError:SSL_connectreturned=1errno=0state=error:certificateverifyfailed我在Google和StackO
我正在使用SendgridParseAPI和Griddlergem来接受传入的电子邮件。在大多数情况下,这工作正常;但是,如果您未使用状态代码200响应Sendgrid,他们将假定该应用程序未正确接收POST请求并继续尝试进行POST3天。我正在尝试使用状态代码进行响应,但遇到了问题。在常规的RESTful路由中,您可以执行类似...render:status=>200但是,我认为这必须在Controller中完成才能识别渲染方法。Griddler建议您创建一个EmailProcessor模型并使用“处理”方法来处理电子邮件。据我了解,您不能在模型中使用渲染方法。因此,我使用类方法创建
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:'ab'programfreezesafterlotsofrequests,why?这是一个简单的测试服务器:require'rubygems'require'rack'require'thin'classHelloWorlddefcall(env)[200,{"Content-Type"=>"text/plain"},"OK"]endendRack::Handler::Thin.runHelloWorld.new,:Port=>9294#I'vetriedwiththeseaddedtoo,'rack.mu
我是Rails的新手,有几个关于验证参数和返回错误响应的问题。我想使用新的Rails5API模式创建一个JSONAPI。据我所知,Rails建议使用“强参数”作为验证参数的基线。例如,如果我想创建一个需要电话号码或电子邮件的User类,我会在我的UsersController中使用类似这样的内容。defcreate@user=User.new(create_user_params)enddefcreate_user_paramsparams.require(:user).permit(:email,:phone)end现在如果我想要更复杂的东西,我可能会添加以下内容defcreatea