Thank you for response. Sure. There is some sample logs
{"DisplayName":"Nmap 7.92","DisplayVersion":"7.92","InstallDate":null,"Publisher":"Nmap Project","InstallLocation":null,"InstallSource":null,"ComputerName":"WIN10X64","Client-IP":"192.168.50.102","Installed-software":19,"LogID":11},
{"DisplayName":"Npcap","DisplayVersion":"1.50","InstallDate":null,"Publisher":"Nmap Project","InstallLocation":null,"InstallSource":null,"ComputerName":"WIN10X64","Client-IP":"192.168.50.102","Installed-software":19,"LogID":12},
{"DisplayName":"VMware Tools","DisplayVersion":"11.3.5.18557794","InstallDate":"20220804","Publisher":"VMware, Inc.","InstallLocation":"C:\\Program Files\\VMware\\VMware Tools\\","InstallSource":"C:\\Program Files\\Common Files\\VMware\\InstallerCache\\","ComputerName":"WIN10X64","Client-IP":"192.168.50.102","Installed-software":19,"LogID":3},
{"DisplayName":"Wazuh Agent","DisplayVersion":"4.3.5","InstallDate":"20220804","Publisher":"Wazuh, Inc.","InstallLocation":"","InstallSource":"C:\\Users\\root\\AppData\\Local\\Temp\\","ComputerName":"WIN10X64","Client-IP":"192.168.50.102","Installed-software":19,"LogID":18},
I've added custom "LogID" field with simple incremented counter to my logs in order to destignuish installed software since "DisplayName" field sometimes contains version number (like in Nmap example) and therefor is not reliable to match against. Current version of my rule -
<rule id="100560" level="10" frequency="2" timeframe="86400">
<if_matched_sid>100550</if_matched_sid>
<same_field>ComputerName</same_field>
<same_field>LogID</same_field>
<different_field>DisplayVersion</different_field>
<description>Software Version has been changed</description>
</rule>