Для внесения дополнительной защиты от ботов в стандартную форму добавления комментариев информационных систем, помимо капчи, необходимо:
1. В XSL-шаблоне вывода инфоэлемента (стандартно это "ВыводЕдиницыИнформационнойСистемы"

после:
<!-- Обработка CAPTCHA -->
<xsl:if test="//captcha_key != 0 and /document/site_user_id = 0">
<p>Контрольные цифры
<sup>
<font color="red">*</font>
</sup></p>
<div style="float: left">
<img id="comment_{$comment_id}" class="image" src="/captcha.php?get_captcha={//captcha_key}{$comment_id}&height=30&width=100" title="Код подтверждения" name="captcha"/>
</div>
<div id="captcha" style="clear:both;">
<img style="border: 0px" src="/hostcmsfiles/images/refresh.gif" /> <a href="javascript:void(0);" onclick="ReNewCaptchaById('comment_{$comment_id}', '{//captcha_key}{$comment_id}', 30); return false;">Показать другое число</a>
</div>
<div style="float: left; margin-top: 5px">
<input type="hidden" name="captcha_key" value="{//captcha_key}{$comment_id}"/>
<input type="text" name="captcha_keystring" size="15"/>
</div>
<div id="captcha" style="clear:both;margin-bottom:10px;">
Введите число, которое указано выше.
</div>
</xsl:if>
<xsl:if test="$comment_id != 0">
<input type="hidden" name="comment_parent_id" value="{comment_id}"/>
</xsl:if>
добавить скрытые поля:
<!-- Защита от ботов -->
<input type="hidden" name="email" value="comment@localhost.ru"/>
<input type="hidden" name="author" value=""/>
2.
Для HostCMS 5
В типовой динамической странице информационных систем (стандартно это "Информационные системы"

строку:
if (isset($_POST['add_comment'])
&& (($GLOBALS['LA']['ShowAddComment'] == 1 && $site_user_id > 0) || $GLOBALS['LA']['ShowAddComment'] == 2))
заменить на:
if (isset($_POST['add_comment'])
&& (($GLOBALS['LA']['ShowAddComment'] == 1 && $site_user_id > 0) || $GLOBALS['LA']['ShowAddComment'] == 2)
&& isset($_POST['email']) && isset($_POST['author']) && $_POST['email'] == 'comment@localhost.ru' && $_POST['author'] == '')
Для HostCMS 6
В типовой динамической странице информационных систем (стандартно это "Информационные системы"

строку:
if (Core_Array::getPost('add_comment') && Core_Array::get(Core_Page::instance()->libParams, 'showAddComment') != 0)
заменить на:
if (Core_Array::getPost('add_comment') && Core_Array::get(Core_Page::instance()->libParams, 'showAddComment') != 0 && Core_Array::getPost('email') == 'comment@localhost.ru' && Core_Array::getPost('author') === '')