Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[suggestion] Access Log / 希望平台后续可以增加一个记录网站访问日志的功能,可选启用 #145

Closed
isxpy opened this issue Jul 8, 2023 · 18 comments
Labels
enhancement New feature or request released

Comments

@isxpy
Copy link

isxpy commented Jul 8, 2023

我查看了官网技术文档中的《如何记录所有访问雷池的请求》并做了配置,发现修改nginx配置并不能记录完整的请求和响应日志(好像是nginx本身不支持记录响应包,不确定)。
希望平台后续可以增加一个可以全量记录网站访问日志的功能,记录完整的请求包与响应包,可以让用户自几选择是否开启该功能,可以参考当前检测日志中的日志详情一样展示。
如果有了网站的访问日志记录,在发现网站被攻击的时候,我们可以根据攻击者IP,去检索近期攻击者的所有访问请求,便于分析攻击行为和目的。访问日志的作用可以方便用于很多的安全分析工作中。我还是比较期待这个功能!
雷池WAF真的很好用!希望越来越好!
20230708165425
20230708165604
20230708165704

@isxpy
Copy link
Author

isxpy commented Jul 8, 2023

如果有攻击请求未被防护规则识别到的情况,也可以通过查看网站访问日志去分析,再利用黑白名单功能,可以持续提高网站安全。

@zclaiqcc
Copy link
Collaborator

感谢支持 😄 这个主要考虑点就是磁盘 IO 和磁盘容量的问题,看看多少用户想要这个功能,多的话也可以加。

@James-ci-git
Copy link

1、建议这个功能就放到日志推送里面就好了,推送日志的时候可选是否推送全部日志记录。
2、不建议直接放在雷池的展示页面中,稍微不注意宿主机的磁盘就写满了。

@myname365
Copy link

这个功能很实用,强烈希望加上,对于磁盘 IO 和磁盘容量可以提醒或者设置删除周期。让用户决定。

@Lorna0 Lorna0 added the enhancement New feature or request label Jul 13, 2023
@hope-li279
Copy link

做成可选功能,默认关闭需要的用户在自行开启,挺好的

@ezjbc
Copy link

ezjbc commented Jul 19, 2023

访问日志/攻击日志 可以分2个表,给访问日志表设置个上限,这样子硬盘就不会被打爆了
遇到攻击,qps> 高频阈值,就停止全量访问日志采集,开始抽样采集访问日志
qps下降到低频,开始全量采集访问日志

@LIHAQ
Copy link

LIHAQ commented Aug 1, 2023

同希望可以增加这个功能

@jssolo
Copy link

jssolo commented Aug 21, 2023

希望可以加入这个功能,默认关闭,需要的时候开启即可,因为有些请求访问需要根据访问路径来人工判断是否是恶意请求

@jssolo
Copy link

jssolo commented Aug 21, 2023

关于担心磁盘占满的问题,可以加入设置超过多少日志或者超过几天的日志删除功能能,相当于仅保存几天或者多少条的数据

@zclaiqcc
Copy link
Collaborator

感觉还是没有感受到记录了访问日志之后有啥具体的用处。

“希望有这个功能”不等于“我需要在 xxx 的情况下做 xxx”。参考 X-Y 问题,访问日志记录功能只是“可能是解决 X 问题的方法”,但是 X 问题是什么呢?首先需要明确的是访问日子的量非常大,数量级上比攻击日志要大得多,比如考虑 100 倍或者 1000 倍。

之前我回复“主要考虑磁盘 IO 和容量”,感觉有点把讨论带歪了,产品设计和技术实现层面上的问题我们来解决,但是还是想先聊清楚需求,也就是说大家拿到这个功能之后,能解决什么具体的实际问题。

最早 @isxpy 师傅提到,“发现被攻击了想看下这个攻击 IP 的其他请求和行为”,这个确实是一个相对有价值的点,但是感觉还是有限🤔️。我理解只能满足在持续监控的情况下,突然发现一个攻击 IP,然后分析一下最近的访问日志。如果日志已经刷了好几天了,其实很难准确地还原出来攻击者的访问记录。另一点是日志量也太大了,先不考虑扫描器一次发起很多次扫描请求,就单是一个人专门攻击某个网站,都不太会是发两条请求就把这个网站给攻陷了的,大量日志没法一条一条翻看,效率太低了,不如简单直接把 IP 拉黑就行了,或者限频。

上面 @jssolo 师傅提到:

希望可以加入这个功能,默认关闭,需要的时候开启即可,因为有些请求访问需要根据访问路径来人工判断是否是恶意请求
但是并没有说「如何根据访问路径来人工判断是否是恶意请求」,看起来是先筛选访问路径,然后人工判断。假设有几千条日志,咋一条一条判断?

我自己的理解是,日志分析交给专业的工具,有分析需要的师傅自己开启 NGINX access log,然后导出到第三方服务 or 工具(甚至是一个磁盘更大的机器),异步地去做分析。这种工具应该有很多,没必要在 WAF 上做,增加 WAF 机器的负担。我理解 WAF 首先要保证的是稳定,然后是有效果,最后是高性能。像访问日志分析这些的需求,有更专业的全流程、态势感知、日志分析等等产品/服务来搞定。我能理解一部分师傅想要的是一个 all-in-one 的东西,“既然所有流量都过了 WAF,那 WAF 就应该能记录所有的流量给我看”,但是感觉上确实没有感受到记录和看到所有访问日志之后能有什么很高的价值。🤔️

当然有更多功能总比没有好,哪怕看到访问日志感觉很心安,也算是某种需求或者功能的价值。欢迎讨论~

@Lorna0
Copy link
Collaborator

Lorna0 commented Aug 29, 2023

@zclaiqcc 师傅说得比较完善了,我稍微补充一下 WAF 和全量日志记录的矛盾:

WAF 一般是串联到主链路里的,以此达到实时检测、实时拦截的效果,也就是说 WAF 处理慢网站访问就慢、WAF 挂了网站就挂了。
另一方面,全量日志记录——不管是用于分析网站运营情况,还是用于攻击事件的事后追溯——并不需要很强的实时性,反而是写入、存储、查询的压力大,要是串联到主链路里,会对网站的访问速度和稳定性造成较大的影响。

因此 WAF 和全量日志分析不太适合做到一块。目前市面上成熟的全流量、态势感知、日志分析、日志存储方案,也都是旁路、异步地工作的。如果不想购买产品,开启 NGINX access log,然后导出到第三方服务 or 一个磁盘更大的机器,再通过 elk 等专攻分析的软件异步地去做分析也会更合适。目前从社区收集的意见看,确实没发现什么有必要在 WAF 上记录全量日志的场景。

@19880910ts
Copy link

感谢支持 😄 这个主要考虑点就是磁盘 IO 和磁盘容量的问题,看看多少用户想要这个功能,多的话也可以加。

您好,我觉得这个日志的功能可以辅助人工筛查,举个例子,如果有全部的日志,发现了几条拦截信息,然后这个境外IP后续日志一直有持续的访问内容,那可不可以理解为,这个IP是成功的绕过限制了呢?waf并未全部拦截成功呢?但是没有全部访问日志的话,我只知道我拦截成功的,无法排查拦截不成功的。也不利于waf后续防御功能的完善和提报。

@JrDw0
Copy link

JrDw0 commented Dec 20, 2023

能否针对触发攻击的ip记录详细访问日志,全量的访问日志确实没必要。

@zcbxxx1
Copy link

zcbxxx1 commented Feb 17, 2024

强烈建议开发该功能,可选(个人感觉该功能就是访问日志做个可视化界面上来,不知道对不对)
对于小型站的防护分析十分有用,也方便;
本人比较懒

@ZionLoh90
Copy link

感谢支持 😄 这个主要考虑点就是磁盘 IO 和磁盘容量的问题,看看多少用户想要这个功能,多的话也可以加。

日志IO这块可以使用使用消息队列存储,然后持久化到自定义的数据库中,个人感觉日志还是比较重要的,比如访问记录、攻击记录等等,建议参考下堡塔云WAF(非广告!),相互借鉴互相成长

@zhuanmentiwen
Copy link

允许记录访问日志通过syslog发出去存储。。或者本机有个开启和关闭记录站点日志的功能。。。

@ghost
Copy link

ghost commented Jul 2, 2024

感谢支持 😄 这个主要考虑点就是磁盘 IO 和磁盘容量的问题,看看多少用户想要这个功能,多的话也可以加。

可以增加过期自动清理功能

@Lorna0
Copy link
Collaborator

Lorna0 commented Jul 10, 2024

6.1 Added access logs on Web UI in pro version. In addition, the nginx conf logs are still available in the free version.
If you want to continue to request the access logs in free version, please go to:

————

6.1 已新增界面的记录访问日志,升级至专业版可使用。另外,后台 nginx conf 记录日志在社区版下仍然可用。

如果希望继续讨论社区版记录访问日志,请移步:

@Lorna0 Lorna0 changed the title 希望平台后续可以增加一个记录网站访问日志的功能,可选启用 [suggestion] Access Log / 希望平台后续可以增加一个记录网站访问日志的功能,可选启用 Jul 10, 2024
@Lorna0 Lorna0 closed this as completed Jul 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request released
Projects
None yet
Development

No branches or pull requests