The native search module, and in this case the
exp:search:search_results tag, expects a URL like this, assuming the tag is put in the
The hash is supposed to be at least 32 characters long (alphanumeric). If the hash is not there, the error is triggered.
The hash is used to look up a submitted search query. The query has been put in the DB by submitting the search form, after which it redirects to the results page. The search hash stays valid for a limited amount of time, after which it's deleted from the DB. If EE cannot find the search query associated with the hash, the error is triggered.
If a valid query is found, it is run again. If it then has 0 results, the error is triggered.
Then there's the possibility of having an expired XID token, as a result of the secure forms. This will be addressed in 2.8, but in the meantime, you can execute this query to avoid this issue:
UPDATE exp_actions SET csrf_exempt = 1 WHERE class = 'Search';
So, make sure all of the above conditions are met, and the error should go away.