利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

admin 2025年5月30日11:57:36评论3 views字数 1700阅读5分40秒阅读模式
利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

本文参考如下链接完成

1. https://my.f5.com/manage/s/article/K00847516
2. https://my.f5.com/manage/s/article/K73554344
3. https://techdocs.f5.com/kb/en-us/products/big-ip_ltm/manuals/product/bigip-external-monitoring-implementations-13-0-0/2.html
4. https://www.cnblogs.com/JetpropelledSnake/p/10564448.html
5. https://www.cnblogs.com/JetpropelledSnake/p/10550778.html

一、F5侧配置

1、先配置pool,将graylog服务器IP+syslog input端口作为pool成员

利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP
(图片点击放大查看)
利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

(图片点击放大查看)

2、创建Request Logging的Profiles

例如vs_logging_to_graylog

利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP
(图片点击放大查看)
利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP
(图片点击放大查看)

模板内容为

{ "client_ip":"$CLIENT_IP","client_port":"$CLIENT_PORT","x-forward-for-ip":"${X-Forwarded-For}","date":"$DATE_NCSA","virtual_ip":"$VIRTUAL_IP","virtual_port":"$VIRTUAL_PORT","virtual_name":"$VIRTUAL_NAME","virtual_pool_name":"$VIRTUAL_POOL_NAME","server_ip":"$SERVER_IP","server_port":"$SERVER_PORT","http_path":"$HTTP_PATH","http_request":"$HTTP_REQUEST","http_statcode":"$HTTP_STATCODE","response_size":"$RESPONSE_SIZE","response_msecs":"$RESPONSE_MSECS","referer":"$Referer","user-agent":"${User-agent}" }

上面的这个变量参考Request logging parameters变量表,添加你需要的参数

我这边构造成json格式,方便Graylog进行JSON日志解析

3、接下来在VS中应用这个vs_logging_to_graylog 的Request Logging Profile

利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

(图片点击放大查看)

二、GrayLog侧配置

1、添加一个syslog 的input,端口与F5中配置的pool成员中一致

利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

(图片点击放大查看)

2、针对采集的日志配置一下Json提取器

利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

(图片点击放大查看)

3、Graylog上最终访问VS的日志效果如下

利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

(图片点击放大查看)

三、结合F5的iRules拦截攻击IP

针对访问IP的访问日志,可以结合安全威胁情报(例如微步)或者内部态势感知等等安全告警 判断是否封锁攻击IP 可以联动防火墙进行封锁

 可以结合F5的iRules拦截攻击IP

 步骤如下

1、新建 iRules中的Data Group List

例如BlockListIP_DataGroup 

利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

(图片点击放大查看)

2、新建iRules

例如

when FLOW_INIT {   if { [class match [IP::remote_addr] equals BlockListIP_DataGroup]} {     log local0. "Attacker IP [IP::client_addr]"     drop   } }

利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

3、在VS的Resoures中应用这个iRules模板即可

利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

这样就只用在Data Group List添加攻击IP黑名单即可进行拦截

原文始发于微信公众号(Linux运维实践派):利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IP

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月30日11:57:36
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   利用Graylog接入F5的RequestLog请求日志并结合F5的iRules拦截攻击IPhttp://cn-sec.com/archives/3947955.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息