疑难杂症 / 网络工程 · 11 11 月, 2025 0

BIG-IP系统升级后ASM Live Update设置消失:原因与解决

发生肾么了

最近网络安全设备公司F5爆出重大安全事故(怎么感觉这话有点地狱。。),我们也被要求紧急将机房里原先固件版本为16.x.x的BIG-IP设备升级到最新的17.5.1.3。

升级过程一切顺利。然而比较升级前后的设置,我们发现原本设置为定时更新的ASM的Live Update,自动更新功能被关闭,定时设置也消失了。

影响ASM对象

  • asm-attack-signatures
  • bot-signatures
  • browser-challenges

原因与解决

官方文档得知ASM设置消失源自软件BUG,但官方提供的解决步骤有一处写得不太明白。因此这里把解决的全过程记录一下。

(1) 进入BIG-IP的命令行,用ls查看以下文件:

ls -l /var/lib/hsqldb/live-update/live-update-import.yaml*

(2) 将末尾日期为最新的live-update-import.yaml.<日期>复制为live-update-import.yaml

cp -p /var/lib/hsqldb/live-update/live-update-import.yaml.<date> /var/lib/hsqldb/live-update/live-update-import.yaml

到这里都跟官方文档写的一样。而接下来就是文档没写清楚的地方。

(3) 将tomcat进程重启两次

bigstart restart tomcat
bigstart restart tomcat

到这里,Live Update设置会变为默认设置,并且不会再消失。可以用以下命令查看当前设置:

curl -sku <用户名>:<密码> https://<管理IP(或localhost)>/mgmt/tm/live-update/asm-attack-signatures/install-schedule | jq .

对官方文档的吐槽

其实官方文档中是有写“需要再重启一次tomcat”这件事的:

However, the schedules and installation history may be lost and reverted to the default upon initial restart of tomcat daemon (or reboot of the device). After tomcat is restarted once, the issue no longer occurs and the new configurations will be retained.

但不知为何在操作步骤中只写了重启一次tomcat的操作。

附赠:使用API修改ASM设置

可以使用PATCH方法通过API修改ASM设置。详细内容请参考这篇文章。这里只举一个简单的例子,将ASM中Attack Signature自动更新的定时设置为每天3点到4点:

curl -sku <用户名>:<密码> -X PATCH https://<管理IP(或localhost)>/mgmt/tm/live-update/asm-attack-signatures/install-schedule \
  -H "Content-Type: application/json" \
  -d '{"schedule":"daily","startTime":"03:00","endTime":"04:00"}'