You shouldn't need to use INSPECT. I just tried this:
[Expert@LabSC:0]# mgmt_cli -r true login > session.txt
[Expert@LabSC:0]# mgmt_cli -s session.txt --format json add service-tcp name lowSources source-port 1-1024 port 1-65535
{
"uid" : "ab4ec7b3-cffe-4b5b-9fa1-77b6ac8fe65a",
"name" : "lowSources",
"type" : "service-tcp",
"domain" : {...},
"port" : "1-65535",
"source-port" : "1-1024",
"match-by-protocol-signature" : false,
"override-default-settings" : false,
"session-timeout" : 3600,
"use-default-session-timeout" : true,
"match-for-any" : false,
"sync-connections-on-cluster" : true,
"aggressive-aging" : {...},
"keep-connections-open-after-policy-installation" : false,
"groups" : [ ],
"comments" : "",
"color" : "black",
"icon" : "Services/TCPService",
"tags" : [ ],
"meta-info" : {...},
"read-only" : true
}
Then you add a rule for that service telling the firewall to drop traffic which matches it.
The SecureXL concerns are still present, but at least it's not an especially unusual service object.