Fortinet Firmware Audit
Network Devices SoftwareDiscover Fortinet Firmware Versions in Your Environment
Fortinet provides a range of security devices like firewalls, SD-WAN appliances, and endpoint protection platforms. Their devices run on Firmware more commonly known as FortiOS or FortiProxy depending on the device type.
This audit will prodide you with an overview of all Fortinet network devices along with the formware version so you can ensure you’re running the latest firmware version across your environment.
The version information of your FortiOS installations will not be scanned by default. You will have to add this information to your scan manually using custom OID scanning. You can easily find the correct OID in the MIB library.
Fortinet Firmware Audit Lansweeper On-Prem Query
Select Top 1000000 tblAssets.AssetID, tblAssets.AssetName, tsysAssetTypes.AssetTypeIcon10 As icon, tblAssets.IPAddress, tsysIPLocations.IPLocation, tblAssetCustom.Manufacturer, tblAssetCustom.Model, tblAssets.Description, Subquery1.Label As OID, Subquery1.Data As Version, Right(Subquery1.DataClean, CharIndex('v', Reverse(Subquery1.DataClean)) - 1) As [Version (Normalized)], Case When tblErrors.ErrorText Is Not Null Or tblErrors.ErrorText != '' Then 'Scanning Error: ' + tsysasseterrortypes.ErrorMsg Else '' End As ScanningErrors, tblAssets.Lastseen, tblAssets.Lasttried From tblAssets Inner Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID Inner Join tsysAssetTypes On tsysAssetTypes.AssetType = tblAssets.Assettype Inner Join tsysIPLocations On tsysIPLocations.LocationID = tblAssets.LocationID Inner Join tblState On tblState.State = tblAssetCustom.State Left Join (Select tblOIDData.AssetID, tblOIDData.Label, tblOIDData.Data, SubString(tblOIDData.Data, CharIndex('v', tblOIDData.Data), CharIndex(',', tblOIDData.Data) - 1 - CharIndex('v', tblOIDData.Data) + Len(',')) As DataClean From tblOIDData Where tblOIDData.Label = 'fg sys version' And tblOIDData.Data Not Like '%data%') As Subquery1 On Subquery1.AssetID = tblAssets.AssetID Left Join (Select Distinct Top 1000000 tblErrors.AssetID As ID, Max(tblErrors.Teller) As ErrorID From tblErrors Group By tblErrors.AssetID) As ScanningError On tblAssets.AssetID = ScanningError.ID Left Join tblErrors On ScanningError.ErrorID = tblErrors.Teller Left Join tsysasseterrortypes On tsysasseterrortypes.Errortype = tblErrors.ErrorType Where tblAssetCustom.Manufacturer Like '%fortinet%' And tblState.Statename = 'Active' Order By tblAssetCustom.Model, tblAssets.IPAddress, Subquery1.DataClean