When one is combating spam there is no magic bullet. A overview of spam
management can be found at
https://www.mediawiki.org/wiki/Manual:Combating_spam.
For basics I would implement a captcha system, I would recommend the
following extensions: checkuser, AbuseFilter, Nuke, PageTriage, and
SpamBlacklist, For your request to manually review changes I would suggest
FlaggedRevs. You could also implement something similar to what
en.wikipedia does, and create a draft namespace and require all content to
be created there and moved to the article namespace upon review.