The 'find' command is a very powerful command that searches entire directory trees for files meeting certain criteria. It can search on name, size, modification date, contents, etc. Type 'man find' for more info.
The . is the starting point. A single dot in Linux means the current directory.
The '-name' means to search based on name, as opposed to all the other criteria that can be searched.
The 'cgi-bin' is a parameter to the '-name' criteria. That is the name being looked for. You can use wildcards as well, as long as you include the entire parameter in quotes, such as: find . -name '*.cgi'
Normally, 'find' will simply print a name of matching filesor directories. But if you include the '-exec', it means to execute the following command for each file found instead.
Everything after '-exec' is the command to be executed, where the '{}' curly braces will be replaced by the name of each file.