You're still missing the point here.
We could rewrite the access point any way you want, and as long as there is some way for some body to reach it or otherwise access it from the internet via a browser then it can be run repeatedly.
making it only accessable via the ultimatebb.cgi script?
ultimatebb.cgi?ubb=avatar_select[/b.../ultimatebb.cgi?ubb=avatar_select <img src="https://www.ubbcentral.com/boards/images/graemlins/confused.gif" alt="" />
If we changed it to a POST instead of a GET it just takes someone 30 seconds longer to figure out how to access the function. Even if we build in refer check to the POST operation perl still has to start, compile, check the refer(if it gets one), then exit.
negligable savings provided you don't have an ungodly number of avatars.
Changing the access point wouldn't make it less repeatable at all, just less traceable. You have already commented on how much work it is to grep your logs. But you want me to make it harder?
Last time - the truth is that if it can be reached from the internet it can be operated repeatedly. There is no escaping that. No amount of floodchecking is going to fix it either. Floodcheck still requires perl to startup, compile the scripts, run it's checks against a flat file that it has to open, and then exit. Same answer as a refer check in making the avatar window a POST. No real savings.
I'm sorry if you feel that is an unacceptable answer, but it is the truth and to me, answering with any less than an honest answer, based on the reality of the situation, is even less acceptable.
111 40 141155 40 15016515614716217156 40 12715014116447163 40 146157162 40 15416515614315077