Дополнительная защита терминального сервера под Windows 2008+ или блокируем кулл-хацкеров

Публикация № 238981

Администрирование - Администрирование данных 1С - Сервисные утилиты

сервер терминалов защита

При открытии удаленного рабочего стола в "большой интернет" неизбежно будет появляется большое количество желающих его взломать. Несложный скрипт поможет существенно затруднить работу по перебору паролей.

При открытии терминального сервера "наружу" неизбежно придет время, когда вы обнаружите в логах системы большое количество попыток подбора логина и пароля, которые, при большом потоке данных, могут банально заDDOSить сервер до полной невозможности работы пользователей. Да, есть и VPN, и проверка подлинности на уровне сети, и смена номера порта на роутере и т.д,, но все равно проходят и атаки идут. Так усложним им работу :)

Потребуется:

  • Windows 2008+
  • Скрипт
  • База данных (Access файл или MS SQL)
  • Настроенный брэндмауэр Windows (даже если сервер у вас за внешним файрволом)

Идея работы: ловим событие аудита отказа логина, помечаем адрес злоумышленника в базе, считаем сколько раз событие произошло и, при достижении определенного порога, делаем новую блокирующую запись в правилах файрволла.

В 2008+ сервере появилась возможность выполнить задачу при наступлении определенного события, так воспользуеся этим.

Создадим новую задачу по событию аудита отказа входа в систему, которая будет запускать VBS скрипт. 

После создания задачи нужно открыть ее свойства и поставить галку "Выполнять с наивысшими правами".

Теперь нужно определиться, как передать параметры из события, в частности, интересует IP-адрес, с которого идет подбор паролей, и подбираемый логин. В Windows, как всегда, напрямую сделать нельзя, поэтому пойдем через черный ход.

В планировщике заданий находим созданную нами задачу, нажимаем на ней правой кнопкой и выбираем пункт "Экспортировать". Сохраняется файл в формате XML.

Сохранили? Теперь откроем файл в Блокноте и допишем следующие блоки, выделенные желтым цветом. Внимание, верстка немного едет, если что - см. рис 7.

  1. <Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  2.   <RegistrationInfo>
  3.     <Date>2013-12-02T22:50:07.3872408>
  4.     <Author>X>
  5.   >
  6.   <Triggers>
  7.     <EventTrigger>
  8.       <Enabled>true>
  9.       <Subscription><QueryList><Query Id="0" Path="Security"><Select Path="Security">*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and EventID=4625]]</Select></Query></QueryList>>
  10.  
  11.       <ValueQueries>
  12.    <Value name="TargetUserName">Event/EventData/Data[@Name='TargetUserName']>
  13.    <Value name="IpAddress">Event/EventData/Data[@Name='IpAddress']>
  14.      >
  15.  
  16.    >
  17.   >
  18.   <Principals>
  19.     <Principal id="Author">
  20.       <UserId>X>
  21.       <LogonType>Password>
  22.       <RunLevel>LeastPrivilege>
  23.     >
  24.   >
  25.   <Settings>
  26.     <MultipleInstancesPolicy>IgnoreNew>
  27.     <DisallowStartIfOnBatteries>true>
  28.     <StopIfGoingOnBatteries>true>
  29.     <AllowHardTerminate>true>
  30.     <StartWhenAvailable>false>
  31.     <RunOnlyIfNetworkAvailable>false>
  32.     <IdleSettings>
  33.       <StopOnIdleEnd>true>
  34.       <RestartOnIdle>false>
  35.     >
  36.     <AllowStartOnDemand>true>
  37.     <Enabled>true>
  38.     <Hidden>false>
  39.     <RunOnlyIfIdle>false>
  40.     <WakeToRun>false>
  41.     <ExecutionTimeLimit>P3D>
  42.     <Priority>7>
  43.   >
  44.   <Actions Context="Author">
  45.     <Exec>
  46.       <Command>C:\Windows\System32\cscript.exe>
  47.       <Arguments>C:\Users\dmitry\BLOCK\RDP.vbs '$(TargetUserName)' '$(IpAddress)'>
  48.     >
  49.   >
  50. >
 

 Сохраняем файл, удаляем старую задачу и там же импортируем новую из скорректированного способа. Таким вот затейливым способом можно распарсить данные в XML файле события и передать их в качестве параметров в нужный нам скрипт.

 

Собственно скрипт.

  1. Dim ipAddress, idLogin
  2. Const adOpenStatic = 3
  3. Const adLockOptimistic = 3 
  4. Const toBlock = 4
  5.  
  6. Set objConnection = CreateObject("ADODB.Connection"
  7. Set objRecordSet = CreateObject("ADODB.Recordset"
  8. Set objRecordSet2 = CreateObject("ADODB.Recordset"
  9.  
  10. if wscript.arguments.count > 0 then
  11. idLogin = wscript.arguments.item(0)
  12. ipAddress = wscript.arguments.item(1)
  13.  
  14. else
  15. idLogin = "---"
  16. ipAddress = "---"
  17. end if
  18.  
  19. ' настраивам подключение к хранилищу
  20. ' в качестве хранилища может использоваться база данных как MS SQL, так и обычная база MS Access
  21. objConnection.Open _ 
  22.     "Provider=SQLOLEDB;Data Source=cloud-sql;" & _ 
  23.         "Trusted_Connection=Yes;Initial Catalog=RDP_BlockIP;" & _ 
  24.              "User ID=RDP_BlockIP;Password=RDP_BlockIP;" 
  25.  
  26. ' отметим в базе что была попытка подключения с ipAddress с логином idLogin
  27. objRecordSet.Open "insert into dbo.IP values (GETDATE(), " & ipAddress & ", " & idLogin & ", null)", _ 
  28.         objConnection, adOpenStatic, adLockOptimistic 
  29.  
  30.  
  31. Dim wsh
  32. Set wsh = WScript.CreateObject("WScript.Shell")
  33.  
  34. ' посчитаем, сколько раз за 24 часа было попыток подключения с указанного адреса
  35. ' считается только для адресов, которые не входят в адреса-исключения и не были уже обработаны ранее
  36. objRecordSet.Open "SELECT COUNT(LoginDate) as Attempts FROM [RDP_BlockIP].[dbo].IP WHERE [LoginDate] > GETDATE()-1 and (not [IP] in (select * from [RDP_BlockIP].[dbo].exclude_ip)) and (Done is null) and [IP] = " & ipAddress , _ 
  37.         objConnection, adOpenStatic, adLockOptimistic 
  38.  
  39. objRecordSet.MoveFirst 
  40.  
  41.  
  42. Dim fso, tf
  43.  
  44. ' Сделаем событиный файл, который подхватит jabber-робот и пришлет адресату
  45. ' Можно убрать или заменить на отправку почты, или что-то еще
  46. Set fso = CreateObject("Scripting.FileSystemObject")
  47. Set tf = fso.CreateTextFile("\\betta\jabber\audit_rdp.txt"True)
  48. tf.WriteLine("dmitry@192.168.0.3")
  49. tf.WriteLine("********** RDP ALERT src: " & ipAddress & ", usr: " & idLogin & "**********"
  50. tf.WriteBlankLines(3) 
  51. tf.Close
  52. ' По этоу строку можно удалять, если не требуется
  53.  
  54.  
  55.  
  56. Do Until objRecordSet.EOF
  57.   ' Если попыток подбора больше определенного значения...
  58. if (objRecordSet("Attempts") >= toBlock) and (Len(ipAddress)>4) Then
  59. ' ...то добавим в файрволл windows ipAddress с политикой блокировки доступа к порту 3389
  60.     wsh.Run("netsh advfirewall firewall add rule name=RDP_AUTOBLOCK_" & Replace(ipAddress,"'","") & " dir=in action=block profile=any remoteip=" & Replace(ipAddress,"'","") & " localport=3389 protocol=tcp")
  61.  
  62. ' Тут можно сделать СМС-оповещение, etc
  63.  
  64. Set wsh = Nothing
  65.     ' Пометим что для указанного адреса все события обработаны
  66. objRecordSet2.Open "update [RDP_BlockIP].[dbo].IP set [done]=1 where [IP] =" & ipAddress  , _ 
  67.         objConnection, adOpenStatic, adLockOptimistic 
  68. end if
  69. objRecordSet.MoveNext
  70. Loop

 Скрипт работает с базой (в примере с MS SQL), поэтому база должна быть, как и пользователь, с которым производится подключение.

Структура таблиц банальна (см. рис.). Первая таблица накапливает данные по IP-адресам, вторая предназначеня для адресов-исключений.

 

 

Итог работы.

Потираем руки и смотрим, как появляются новый записи при попытках брутфорса:

 

 

Обновление

 Список часто подбираемых логинов, зафиксированных этим скриптом за 2 месяца

@dmin alohasvr denis pos005 test1 Деректор
1 amberpos gateway pos05 test3 Директор
123 amministratore guest pos1 user дом
1234 an home pos2 user1 иванов
12345 angel john pos3 User2 Лена
1234567 aspnet jose pos4 user3 менеджер
333 augusto Justin pos5 user4 Нотариус
666 backup kassa raquel user5 пользователь
777 Boss kasse_1 rdspos user6 пользователь1
a bruno kasse1 reception usertask склад
actuser Buh Marko root zxc123 смирнов
adm buh1 max sales Админ смирнова
admin buhgalter Melissa scan Администратор тест
admin1 caisse micros server Алекс  
admin2 carlos office servr Александр  
administrator comp3 operator sklad Александра  
administrator1 cthsq29 owner support алена  
akapos DataCenter padicheva support_388945a бухгалтер  
aloha01 david pochta sys главбух  
alohaedc debbie pos test гость  

Скачать файлы

Наименование Файл Версия Размер
Скрипт

.vbs 3,47Kb
03.12.13
49
.vbs 3,47Kb 49 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. iov 406 03.12.13 21:07 Сейчас в теме
как нарисовать сову.
рисуем два кружка и дорисовываем все остальное- сова готова.

это я к чему.

аудит отказа.
человек в ВЫДЕЛЕННЫМ ip
Сведения о сети:
Имя рабочей станции: OWNEROR-PRS****
Сетевой адрес источника: -
Порт источника: -
и таких 90%
остальные либо из-за прокси либо иными путями
чрез пол года правил будет столько что тормоза видны будут и без ддоса.

далее в скрипте есть строки для jabbera
' Сделаем событиный файл, который подхватит jabber-робот и пришлет адресату
все бы ничего но если кто не умеет и не любит читать вставит - словит ошибку.

далее не поленился повторил все (я так понял таблицы ручками создаются?) и в результате ничего.
то есть аудит отказа есть и ничего не происходит.

то есть создал задачу через привязать задачу к событию - без исправлений - работает
с изменениями- нет.

как-то так.
2. Dimasik2007 414 03.12.13 22:15 Сейчас в теме
(1) iov,
человек в ВЫДЕЛЕННЫМ ip 
Сведения о сети: 
Имя рабочей станции:	OWNEROR-PRS**** 
Сетевой адрес источника:	- 
Порт источника:	 - 
и таких 90% 


Думаю, там в событии ниже указано "Пакет проверки подлинности: NTLM", когда проверка подлинности идет до подключения к серверу (если говорить простым языком), мой блок срабатывает, когда идет режим Negotiate, соответственно адреса ботов видны. На данный момент такие события попадались только с моей машины и то в ходе тестов. Как такое заблокировать - пока не вкурсе.

алее в скрипте есть строки для jabbera 
' Сделаем событиный файл, который подхватит jabber-робот и пришлет адресату 
все бы ничего но если кто не умеет и не любит читать вставит - словит ошибку. 


Не знаю админов, которые запускают незнакомые скрипты, перед этим не посмотрев код. Может там rm -rf / ? А коде указывается - не нужно - выпилите.


я так понял таблицы ручками создаются

Це же не сложно.

далее не поленился повторил все (я так понял таблицы ручками создаются?) и в результате ничего. 


Выполните скрипт из консоли, через cscript.exe, передав ему путь к скрипту и два параметра, могут быть ошибки.
типа cscript.exe rdp.vbs 'pupkin' '8.8.8.8'
3. Dimasik2007 414 03.12.13 22:17 Сейчас в теме
Что то цитаты аццки распухли, сорри.
4. iov 406 03.12.13 23:04 Сейчас в теме
так це яж про тоже. Тут для тех кто в курсе все просто просто. Но тутаж программисты 1с. Короче не жеваное не едет. стоило бы скриптик выложить для создания базы с нужными полями. имена параметров вынести отдельно с комментариями и пр. плюсов бы поболе насобирал и смысл архив качать был бы. Цеж не упрек а рекомендации.
5. Dimasik2007 414 03.12.13 23:23 Сейчас в теме
Ну, думаю, кто реально это будет использовать, то сделает без проблем.
Да, скриптег по созданию базы тут http://notepad.cc/share/c185kLi1jI
Адрес только файликов базы поменяйте.
6. asved.ru 35 04.12.13 06:48 Сейчас в теме
Недостаток решения в том, что злоумышленник блокируется по факту, в отличие от VPN, когда все злоумышленники блокируются превентивно.

Год или два назад обнаружилась юзабельная дырка в RDP, как следствие, появился червяк. Так у меня IPS фиксировал порядка 3000 атак в сутки на протяжении нескольких месяцев, с абсолютно разных хостов.
Боюсь, при таких масштабах сервер с приведенным решением упадет совершенно самостоятельно, не дожидаясь, пока его взломают.
8. Dimasik2007 414 04.12.13 09:30 Сейчас в теме
(6) Так речь идет о том, что это дополнительная защита, а не основная. VPN не всегда можно использовать, да и нормальные ОСи тоже. Понятное дело, если сервер высовывать наружу без нормального файера будет печально. Например, на моем шлюзе (pfSense) в правилах pfBlocker чуть не целые страны закрывает, Snort постоянно атаки обнаруживаем и т.д. и т.п., но все равно идут атаки, то с площадки вебстудии в Самаре, то с ноутбука менеджера, который сам не знал про зловреда. Поэтому подключению я даю 4 попытки и рублю. Мне так лучше, чем дикие логи в журнале безопасности.

Правила всегда можно очистить, или написать запросец и экспортнуть их в файрволл выше.
9. asved.ru 35 04.12.13 10:37 Сейчас в теме
(8)
Правила всегда можно очистить, или написать запросец и экспортнуть их в файрволл выше.


Или банить по маске /8, kekeke)
7. mikmike 5 04.12.13 07:20 Сейчас в теме
Можно эти правила периодически сбрасывать, т.е. при обнаружении атака блокируется, но через некоторое время адрес опять становится открытым.
10. karakozov 04.12.13 10:50 Сейчас в теме
Полезная и занимательная статейка, спасибо автору за инициацию проблемы и решение.
11. Trotter_NN 04.12.13 11:23 Сейчас в теме
А почему бы просто не использовать роутер сервер на линухе ?
16. Dimasik2007 414 04.12.13 18:41 Сейчас в теме
(11) Trotter_NN, это дополнительная защита. Роутер не спасет, если порт открыт.
Единственное, что можно настроить, это количество коннектов до блока на внешнем firewall'е, но это не всегда возможно. Также весьма трудно настроить блокировку на внешнем шлюзе в автоматическом режиме, я не гуру скриптов под линукс.

(13)
За статью +, но вот использование скуля для данной задачи лично мне кажется "пушкой по воробьям". Банальные файлы с именами = ip-адресу наверняка и дали бы прирост в скорости и повысили бы надёжность решения. Впрочем, это лишь имхо.

Как бы сервер уже есть (в нем 1С крутится), почему бы не использовать. Можно и базу Access заюзать, можно и файлы - дело уже каждого. Главное - понять, когда впилить новое блокирующее правило.

(14) По комментам выше и статье понятно, что наружу смотрит только порт RDP, через внешний шлюз-файрволл.

(15) Не сталкивался, так что сказать ничего не могу.
17. shakmaev 341 04.12.13 19:19 Сейчас в теме
(16) рекомендую обратить на него внимание. RDPG использует протокол удаленных рабочих столов(в том числе и RemoteApp) через HTTPS(443).
18. Dimasik2007 414 04.12.13 21:09 Сейчас в теме
(17) Попробуем, почему бы и нет.
Собственно статья появилась даже не от того, что брутфорс полез, а просто нашел на просторах интернета способ "выковырять" данные из XML события и передать их в качестве параметров, и подумал "О! Куда бы запилить?". Ну и не знал, что так просто с консоли правило добавить в брандмауэр. Собственно, последний обычно везде выпиливаю, чтобы не мешал, а тут пригодился. :)
12. alex_art 14 04.12.13 11:31 Сейчас в теме
Полезная статья, у нас сегодня есть такая проблема с атаками на сервер смотрящий "наружу". Будем решать по схеме, описанной в данной статье.
13. q_i 413 04.12.13 12:06 Сейчас в теме
За статью +, но вот использование скуля для данной задачи лично мне кажется "пушкой по воробьям". Банальные файлы с именами = ip-адресу наверняка и дали бы прирост в скорости и повысили бы надёжность решения. Впрочем, это лишь имхо.
shakmaev; +1 Ответить
14. Kalam 105 04.12.13 12:12 Сейчас в теме
Дурацкое решение ставить винду наружу изначально.
Кроме РДП может быть еще куча служб успешно атаковано, где на них скрипты?
15. shakmaev 341 04.12.13 16:50 Сейчас в теме
А что RDP Gateway уже не актуален? Проще и безопаснее не придумаешь.
19. Dimasik2007 414 04.12.13 21:14 Сейчас в теме
Удобно сидеть и попивать кофеек, и смотреть в сообщениях от робота в чате
19:54 @Робот-Бобот: * RDP ALERT src: '75.99.184.131', usr: 'Administrator'*
19:54 @Робот-Бобот: * RDP ALERT src: '75.99.184.131', usr: 'Administrator'*
19:54 @Робот-Бобот: * RDP ALERT src: '75.99.184.131', usr: 'Administrator'*
19:54 @Робот-Бобот: * [!BLOCKED!] RDP ALERT src: '75.99.184.131', usr: 'Administrator'*
20. LineykaSBK 1 05.12.13 06:26 Сейчас в теме
Согласен с тем, что пушкой по воробьям, у меня так настроено:
1: Новый сотрудник обязуется иметь интернет с выделенным IP, хотя он уже у большинства провайдеров по умолчанию.
2. Если человек с планшетника и ежи подобных, то тоже можно прикрутить через IP, благо айпишники сейчас выдаются сотовыми операторами белыми или арендуются на длительный срок., ресурсов много как определить простому юзеру свой ip. На инструктаже получает всю это информацию при приеме.
3. Настраивается на Циске (роутере или прокси сервере) правила доступа с фильтрацией по ip.
4. Закрываем с глаз долой свой внешний IP для всякого рода сканеров и сниферов на внешнем канале.
5. Разрешаем заходить только определенному списку IP, предварительно настроив правило с проксятника на терминалку.
6. Остальной на блок.
Смотрим лог файл, и не видим ни каких попыток подключения и перебора пароля, способ действует для всех приложений, не только для SQL портов и ежи подобных.
21. alsen 226 05.12.13 11:29 Сейчас в теме
Я в своё время тоже озаботился безопасностью и стал ставить всем OpenVPN на входе.

То есть наружу открыт только 1194. а его ломай не ломай, без сертификата ничего не сделаешь.
Все остальные подключения уже через VPN соединение.

К тому же при его использовании можно будет напрямую подключиться и к другим компьютерам той же подсети.
user833961; KEV8383; NoRazum; Dolly_EV; speshuric; +5 Ответить
38. user833961 28.09.17 07:24 Сейчас в теме
(21) подскажите как настроить?
(21) читал в интернете что и VPN ломается
22. Yimaida 35 07.12.13 00:40 Сейчас в теме
Если в наличии только сервак без навороченного сетевого оборудования, то руководствуюсь следующим. Для перебора пароля надо знать не только пароль но и логин. Поэтому учетную запись админа на серваке надо переименовывать. Гостей отключать. Даже обычных юзеров лучше называть как то оригинальнее чем user1 и т.п. Пользоваться только стойкими паролями. В политиках безопасности в политике блокировок учетных записей ставим время блокировки учетки и количество неверных попыток. 100% защиты не будет, но от шальных взломщиков в самый раз.
23. lalexrus 22.12.13 22:21 Сейчас в теме
это дополнительная защита. Роутер не спасет, если порт открыт
если вы сисадмин а не 1сник то покурите в сторону роутеров mikrotik (не панацея! особенно в плохих руках) - оно и стоит относительно недорого, с кучей функционала в т.ч. vpn. Ну а вообще - вы просто обязаны в какой-то мере иметь политику в области безопасности (раз у вас рдп то и людей работает не 2 человека), пусть сильно упрощенную, но базовые вещи - логины/пароли/доступ снаружи и т.п. в ней необходимо отразить и утвердить у руководства. А то вы и дальше будете к скулю прикручивать ненужные вещи.

PS кстати про сертификаты. вполне себе работает аутентификация по сертификатам в винде (правда придется разворачивать центр сертификации и т.п.) - можно к примеру на етокене с простым паролем держать сертификат и логиниться на виндовый терминал. Это кстати достойный ответ подбиральщикам паролей :) пусть попробуют ага.
arttemko; +1 Ответить
24. Dimasik2007 414 23.12.13 00:03 Сейчас в теме
(23) Ей богу, странные вы.
Ну есть у меня Микротики, все региональные офисы на них подняты (RB2011UAS-2HnD), все завязано в VPN. Изнутри - проблем нет вообще.

Но покажите мне скрипт под Микротик, который будет банить адреса, с которых идет подбор паролем. Размещу - проверим результативность.

то вы и дальше будете к скулю прикручивать ненужные вещи.

Вам - не нужные. Мне - вполне нужные, опыт тем более разный нужен.

Вот в (15) "товарисчь" указал что есть шлюзы, и их лучше использовать. Так это тоже опыт, все приходит в сравнении. Вот например, сертификаты у себя на планшете в RDClient заюизать не могу, шлюз возможно (но не пробовал).

Так что, думаю, каждый сам сможет вынести нужную ему пользу как из статьи, так и из комментов.

-------------------
Кстати, в скрипте можно использовать отправку смс по событию. (Не реклама: смс.ру дает бесплатно 60 смс/день на свой номер, почему бы и не юзать).

В примере ниже нужно подставить свой API и номер (см. примеры на оф. сайте).

wsh.Run("C:\curl.exe ""http://sms.ru/sms/send?api_id=ВАШ_ГУИД&to=ВАШ_НОМЕР&text=BLOCK+" & Replace(ipAddress,"'","") & "/" & idLogin & """")
25. stepan_shock 110 09.01.14 11:22 Сейчас в теме
из элементарных решений могу еще добавить такое как смена порта на роутере
то есть к примеру открываешь порт 11000 и мапишь его на 3389 по нужному айпи
меня избавило от флудеров
26. zveruga56 168 20.01.14 13:56 Сейчас в теме
Плюс однозначно!
А к 2003R2 можно прикрутить?
27. Dimasik2007 414 20.01.14 14:26 Сейчас в теме
(26) Оперативно не получится, тут вся соль в триггере Windows на новую запись в журнале безопасности, насколько знаю он только в 2008+ версии появился. Да и брандмауэр нужно смотреть в 2003, если там такие же команды консольные и т.п.

Журналы безопасности я Zabbix'ом анализирую, правда для других нужд, можно там прикрутить еще и анализ аудита + действия, но под рукой рабочей системы с 2003 нету уже, так что проверить не смогу.
28. Dimasik2007 414 16.06.14 23:21 Сейчас в теме
Полгода работы скрипта - полет нормальный. В день в среднем блокируется 8-10 IP адресов, и логи аудита короче стали :)
29. kiv1980 25.03.16 09:35 Сейчас в теме
Хорошая статья, но под свой сервер пришлось все скрипты переписывать, часть представленного вверху неработоспособно, пришлось менять xml и vbs файлы, так как выдавали кучу ошибок, также не передавались параметры в планировщике в vbs и при большой сети нужно исключить свой диапазон ИП адресов, иначе перебаниться всё :) Впрочем это мелочи, при нужных навыках, всё поправимо. Также блочу не только порт 3389, поставил Any (все). И всё неплохо заработало, просто недавно один из моих удаленных серверов сделали дедиком, там конечно был однозначно мой косяк, дал буху полный доступ и забыл про это, а у неё простой пароль, который быстро подобрали. В общем от всей вирусной дряни избавился, запустил этот метод и всё норм, все адреса хацкеров баняться при подборе на любые порты, так как в силу регулярного удаленного доступа, открыто много различных портов.
30. Dimasik2007 414 25.03.16 22:02 Сейчас в теме
(29) Скрипт отработал (отразил) успешно январскую атаку на сервер клиента, за 21 день было заблокировано 51 000 адресов.
Самое интересное, недавно изучал аналоги на рынке, есть коммерческая программа https://rdpguard.com/ принцип работы которой тот же)
31. sergey_twin 29.10.16 10:41 Сейчас в теме
братцы, откуда взяться внешнему ip взломщика в логах безопасности, когда rdp за натом? разжуйте пожалуйста, может что то не понимаю
32. Dimasik2007 414 07.11.16 20:11 Сейчас в теме
(31) Нат же у вас проброшен, коннект идет на внешний адрес + порт.
33. Tarlich 89 02.04.17 22:38 Сейчас в теме
не получается импортировать XML - прошу пример
мой :
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<RegistrationInfo>
<Date>2017-04-02T22:17:14.2790261</Date>
<Author>SERVER\Tarlich</Author>
</RegistrationInfo>
<Triggers>
<EventTrigger>
<Enabled>true</Enabled>
<Subscription><QueryList><Query Id="0" Path="Security"><Select Path="Security">*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and EventID=4625]]</Select></Query></QueryList></Subscription>
</EventTrigger>

<ValueQueries>
<Value name="TargetUserName">Event/EventData/Data[@Name='TargetUserName']>
<Value name="IpAddress">Event/EventData/Data[@Name='IpAddress']>
>

</Triggers>
<Principals>
<Principal id="Author">
<UserId>SERVER\Tarlich</UserId>
<LogonType>InteractiveToken</LogonType>
<RunLevel>HighestAvailable</RunLevel>
</Principal>
</Principals>
<Settings>
<MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>­
<DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries­>
<StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
<AllowHardTerminate>true</AllowHardTerminate>
<StartWhenAvailable>false</StartWhenAvailable>
<RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>­
<IdleSettings>
<StopOnIdleEnd>true</StopOnIdleEnd>
<RestartOnIdle>false</RestartOnIdle>
</IdleSettings>
<AllowStartOnDemand>true</AllowStartOnDemand>
<Enabled>true</Enabled>
<Hidden>false</Hidden>
<RunOnlyIfIdle>false</RunOnlyIfIdle>
<WakeToRun>false</WakeToRun>
<ExecutionTimeLimit>P3D</ExecutionTimeLimit>
<Priority>7</Priority>
</Settings>
<Actions Context="Author">
<Exec>
<Command>C:\Windows\System32\cscript.exe</Command>
<Arguments>C:\blok\RDP_Block.vbs '$(TargetUserName)' '$(IpAddress)'>
</Exec>
</Actions>
</Task>
34. antont 12 04.04.17 19:45 Сейчас в теме
Все гораздо банальнее.

1) Меняем порт RDP (на самом сервере или НАТе)
2) Разрешаем подключение только с проверкой подлинности
3) В политиках включить NLA

Вот полезная (хоть и старая) статья: https://www.atraining.ru/windows-rdp-tuning/
35. Dimasik2007 414 05.04.17 23:13 Сейчас в теме
(34) 1) Смена порта ничего не даст, (2,3) Актуально, если все клиенты поддерживают NLA. На момент времени, когда писалась статья - freerdp под linux в NLA не умел, RDClient на IOS не умел, да и сейчас вроде не может.
Да, это может быть костылище, но работает.
37. SuhoffGV 04.09.17 20:34 Сейчас в теме
(34) Клиенты под XP и android смогут подключаться после выполнения рекомендаций?
Под IOS, как я понял не смогут?

Скрипт в теме мне не поможет так как в логах win нет ip источника. Видны только события отказы и имена под которыми пытаются подрубится.
36. forsagforsag 71 22.05.17 17:28 Сейчас в теме
Идея понятна а рабочего примера нету?
Оставьте свое сообщение

См. также

Блин, мы забыли включить регламентные задания… Промо

Сервисные утилиты v8 Абонемент ($m)

Привет, Инфостарт! Сегодня расскажу, как я решил проблему с выключенными регламентными заданиями в рабочих базах. Желая исключить человеческий фактор и минимизировать количество ошибок, я написал небольшую конфигурацию.  В конфигурации два регламентных задания. Первое периодически подключается к кластеру и сохраняет текущие параметры: имя, Сервер БД, базу СУДБ, блокировки входа и регламентных заданий и т.д. Второе задание периодически проверяет эти параметры на ошибки.

1 стартмани

08.04.2019    15973    15    slozhenikin_com    37    

Детализированный анализ свободного места на диске просто как "РАЗ-ДВА!"

Сервисные утилиты Абонемент ($m)

Программа Circle Size разработана специально для точного и детального анализа дискового пространства и успешного избавления от ненужных файлов.

2 стартмани

16.04.2020    1086    1    solbol    2    

Создание *.dt файла из рабочей базы на сервере 1С без завершения работы пользователей

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Предлагаемая обработка создает *.dt файл (выгрузку ИБ) из рабочей базы на сервере 1С:Предприятие 8.3 без завершения работы пользователей.

1 стартмани

19.01.2020    9808    67    Sedaiko    15    

Очистка кэша и удаление временных файлов и пустых папок

Сервисные утилиты Абонемент ($m)

Чистка кэша, удаление временных файлов 1С, Windows, и прочих программ, с сохранением текущих настроек пользователя в 1С.

1 стартмани

26.12.2019    2692    7    vik070777    3    

Очистка кэша 1С 8 (8.0, 8.1, 8.2, 8.3). Грамотная чистка кэша 1С с сохранением настроек. Промо

Чистка базы Сервисные утилиты Администрирование данных 1С v8 1cv8.cf Россия Абонемент ($m)

Эффективное средство для устранения ошибок, возникающих в локальном кэше 1С на клиенте, которым легко сможет воспользоваться пользователь с любым уровнем знаний. Wsf-скрипт, созданный на стандартном языке автоматизации Windows - "WSH JScript", очищает кэш 1С просто, быстро и безопасно. Кроме варианта, очищающего кэш текущего пользователя, имеется также вариант для чистки кэша 1С всех пользователей терминального-сервера.

1 стартмани

04.11.2018    35503    365    Eugen-S    34    

Командный интерпретатор для 1С

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Инструмент для выполнения команд CMD / PowerShell из 1С.

2 стартмани

15.11.2019    10722    22    YPermitin    41    

Утилита, предназначенная для просмотра, изменения, добавления, удаления и извлечения ресурсов в исполняемых (.EXE, .DLL и др.) и ресурсных файлах (.RES) ОС Windows. для формирования своего отдельного DLL файла

Сервисные утилиты Абонемент ($m)

Иногда в разработке конфигурации мы используем DLL библиотеки с драйверами или приложения для весовых терминалов к примеру, но они представлены не в той форме, которая подходит непосредственно для нашего приложения, либо запрашивает диалоги, которые не очень нужны, для их исправления и изменения и предназначена данная утилита.

10 стартмани

05.11.2019    5301    5    vik070777    14    

Закрытие незавершенных сеансов

Сервисные утилиты Администрирование СУБД v8 1cv8.cf Россия Абонемент ($m)

Как удалять потерянные сеансы пользователей, чтобы они не мешали работе. Обработка протестирована на платформе версии 8.3.13.1644.

1 стартмани

20.09.2019    11452    50    AnatolPopov    8    

Менеджер буфера обмена с поддержкой 1С - ClipAngel 1.89 Промо

Сервисные утилиты Инструментарий разработчика Абонемент ($m)

Этот помощник запоминает все, что вы копируете в буфер обмена, и позволяет легко и быстро найти в истории нужную информацию и вставить ее в любое окно.

1 стартмани

17.01.2017    33400    72    tormozit    214    

CLR декодер для MS SQL Server

Сервисные утилиты Разработка внешних компонент Абонемент ($m)

Библиотека для расшифровки кракозябр в базе данных.

1 стартмани

05.07.2019    5130    0    hellion    0    

Мониторинг файловых баз (Zabbix - 1CD)

Сервисные утилиты Абонемент ($m)

Шаблон с autodiscovery Zabbix для мониторинга файловых баз 1С. Мониторится размер БД, количество таблиц, версия БД.

1 стартмани

21.05.2019    4033    1    shibanovan    0    

Windows сервис генерации pdf417-штрихкодов. Обработка для печати марок алкогольной продукции ДУМ

Сервисные утилиты Россия Акцизы Абонемент ($m)

Служба windows для генерации штрихкодов pdf417 в виде отдельных файлов JPEG. Делал для 1С:Далион Управление Магазином.

1 стартмани

18.02.2019    4677    1    user597086_dir_box    13    

Легкое и гибкое управление списком доступных баз 1С у пользователей Промо

Стартеры 1С Сервисные утилиты Администрирование СУБД v8 1cv8.cf Россия Абонемент ($m)

Когда в локальной сети много пользователей, а еще большое количество различных баз и при этом каждому нужны свои, то администрирование этого зоопарка превращается в АД! Этот комплекс позволяет централизованно управлять списком доступных баз в разрезе пользователей. За пару кликов можно добавить или убрать базу у всех пользователей.

5 стартмани

05.12.2018    14514    16    RomikR    9    

LicDataDecoder - расшифровка файла программной лицензии 1С

Сервисные утилиты v8 1cv8.cf Россия Абонемент ($m)

Представляю вашему вниманию утилиту, предназначенную для работы с файлами программных лицензий 1С (*.lic).

1 стартмани

10.02.2019    27619    252    GeraltSnow    60    

Удобная консоль регламентных и фоновых заданий

Универсальные обработки Сервисные утилиты Администрирование данных 1С v8 v8::УФ 1cv8.cf Абонемент ($m)

Аналог обработки БСП "РегламентныеИФоновыеЗадания". Не требует наличия библиотек, может использоваться в качестве внешней обработки. В отличие от обработки БСП предоставляет больше информации о свойствах регламентных и фоновых заданий, а также об ошибках и сообщениях для пользователей, возникших во время их выполнения. Позволяет управлять регламентными (создание, удаление, настройка расписания, ручной запуск) и фоновыми (прерывание) заданиями.

1 стартмани

06.02.2019    13434    151    Alxby    20    

Мониторинг windows серверов на раз, два с помощью prometheus и grafana

Сервисные утилиты Абонемент ($m)

Вдохновленный статьей про сбор, хранение и визуализации показателей с помощью prometheus и grafana подготовил готовый docker-compose файл для быстрой настройки и запуска мониторинга windows серверов.

1 стартмани

08.01.2019    11005    7    metmetmet    20    

Установка баз данных из Проводника Промо

Сервисные утилиты Администрирование данных 1С Стартеры 1С Абонемент ($m)

Взяли выгрузку базы у клиента? Прислали по почте файл конфигурации? Хотите развернуть базу данных двойным щелчком на файле *.dt или *.cf? Database Manager - то что вам нужно!

2 стартмани

28.10.2013    34986    15    Evil Beaver    30    

Универсальный монитор лицензий 1С

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Хотите узнать, какие программные лицензии установлены на сервере и все их технические подробности? А может быть, вам нужна информация по использованию всех видов лицензий кластера? Нет ничего проще, читай далее, чтобы быть в курсе!

3 стартмани

03.01.2019    26281    216    Xershi    68    

Чистка кэша 1С (теперь в .exe)

Сервисные утилиты v8 Абонемент ($m)

Попробуйте поискать в интернете "Очистить кэш 1С". Практически везде вы наткнетесь на всякие батники, ps-скрипты, рекомендации зайти и удалить вручную, поставить /ClearCache для баз на УФ и т.д. В подавляющем большинстве случаев предлагается бездумно удалить все содержимое \Roaming\1C\1cv8\ и \Local\1C\1cv8\, но это как переустановить Windows, чтобы почистить Temp.

1 стартмани

18.11.2018    14885    94    riposte    42    

CopyCopy - Копирование любого файла по расписанию

Сервисные утилиты Абонемент ($m)

Программа копирует файл в равный промежуток времени указанный пользователем.

1 стартмани

28.08.2018    5844    2    fierylions    0    

Скачиваем релизы с сайта users.v8.1c.ru Промо

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Обработка позволяет настроить список релизов, доступных пользователю, на сайте users.v8.1c.ru, проверять - вышли ли новые обновления и, если вышли, скачивать их и раскладывать по папочкам. Требует установки curl и openssl

10 стартмани

18.08.2014    38115    24    Demonobond    31    

1C + Arduino + сканер отпечатков пальцев + RFID считыватель

Терминал сбора данных Сервисные утилиты Учет рабочего времени Учет рабочего времени v8 1cv8.cf Абонемент ($m)

Связываем 1C, Arduino, сканер отпечатков пальцев и RFID считыватель для системы учёта рабочего времени или пропускной системы.

1 стартмани

21.08.2018    22754    14    DGorgoN    39    

РусскийФокс и ClickerMann заносят данные в 1С

Сервисные утилиты Практика программирования Россия Абонемент ($m)

Новый объектно-ориентированный русскоязычный 1С-подобный язык программирования РусскийФокс. . РусскийФокс создает сценарии для Clickermann. Сценарий заполняет справочник в 1С.

1 стартмани

21.07.2018    10307    1    andreosh    20    

Switcheroo_1C - Быстрое переключение между окнами 1С

Сервисные утилиты Абонемент ($m)

Утилита позволяющая переключаться между окнами 1С, аналог Alt+Tab только учитываются 1С приложения.

1 стартмани

18.06.2018    6737    1    WizaXxX    0    

V8 Viewer. Открытие и сравнение внешних обработок в Проводнике + исходники Промо

Сервисные утилиты Инструментарий разработчика Универсальные обработки v8 1cv8.cf Абонемент ($m)

Вы хотите получить возможность быстро посмотреть содержимое внешнего отчета или обработки? А сравнить ее с другой? И все это без запуска 1С:Предприятия, только из оболочки ОС? Тогда мы идем к вам! :) В конце заметки - ссылка на исходники.

2 стартмани

06.03.2013    65123    119    Evil Beaver    157    

Очистка Кэша 1С

Сервисные утилиты Абонемент ($m)

Очистка кэша 1С, для любой операционной системы семейства Windows.

1 стартмани

28.05.2018    8704    17    IceEvgen    3    

Регистрация компонент 1С и запуск консоли кластера серверов

Сервисные утилиты Россия Абонемент ($m)

Выводит список установленных платформ 1С, позволяет зарегистрировать V8x.COMConnector, V8x.Application, V8x.ServerAbout и запустить консоль кластера серверов 1С для выбранной версии. Показывает текущие версии зарегистрированных компонент 1С (требуется .NET Framework 4.0 и права администратора).

1 стартмани

22.03.2018    11493    34    ROL32    34    

Резервное копирование файлов nw_am.exe

Сервисные утилиты Архивирование (backup) Россия Абонемент ($m)

Резервное копирование файлов. Интерфейса нет, всё делается через 2 файла настройки. Очень маленькая и незаметная программа, которая работает даже на слабых компьютерах. Тестировалась на Window XP, Window 7 и Windows 10. Проверялось антивирусами Avast и Avira, за вирус не приняли. Язык разработки Pure Basic (надстройка над FASM-ом). Код закрыт, т.к. не думаю. что кому-то будет интересно разбирать синтаксис малознакомой среды разработки. Копирование производится в папки по дате и времени.

1 стартмани

26.02.2018    8108    0    strange2007    1    

Быстрое удаление неиспользуемых версий 1С:Предприятие 8, кэша метаданных и информационных баз Промо

Сервисные утилиты v8 Абонемент ($m)

При обновлении платформы 1С:Предприятие 8 предыдущие версии не удаляются. Со временем количество неиспользуемых версий платформы растет. Они занимают место на диске. Для решения этой проблемы предназначена программа OneCleaner. Она позволяет быстро удалить неиспользуемые версии платформы, а также почистить кэш метаданных и удалить ненужные информационные базы данных.

1 стартмани

14.11.2017    20794    88    bonv    15    

Докер образ для быстрого запуска анализатора журналов PostgreSQL

Сервисные утилиты Статистика базы данных Производительность и оптимизация (HighLoad) Абонемент ($m)

Журналы работы очень полезный инструмент, и их может быть очень много. Их можно  записывать в /dev/null или вообще отключить, но лучше не стоит так делать, ведь в них можно отыскать массу полезной информации о работе СУБД.

1 стартмани

29.12.2017    10547    0    _evgen_b    0    

Com to Keyboard - имитация ввода с клавиатуры сигнала, поступающего из Com порта

Сервисные утилиты Абонемент ($m)

Утилита позволяет имитировать ввод с клавиатуры сигнала, поступающего из Com порта. Иногда при использовании оборудования (Сканер и Картридер и т.д.) возникают проблемы с его подключением к системе учета. В таком случае просто не обойтись без дополнительных утилит, позволяющих решить поставленные задачи.

3 стартмани

11.12.2017    8407    7    mvdimas    1    

V8 Log Scanner - утилита для быстрого парсинга логов ТЖ

Сервисные утилиты v8 Россия Абонемент ($m)

Как можно быстро настраивать logcfg.xml и парсить логи технологического журнала с помощью самописной open-source утилиты V8LogScanner. Без необходимости погружаться в регулярные выражения.

1 стартмани

07.11.2017    18300    5    ripreal1    27    

Очистка регистров накопления, сведений, расчета или бухгалтерии Промо

Сервисные утилиты Чистка базы Свертка базы v8 1cv8.cf Абонемент ($m)

Очистка регистров накопления, сведений, расчета или бухгалтерии (обычная и управляемая форма)

2 стартмани

25.12.2009    60142    256    sebe    20    

RDP: Библиотека файлов

Сервисные утилиты Россия Абонемент ($m)

Программа запускается в system tray. В контекстное меню программы загружается список файлов с расширением "*.rdb". Открывает соединение с удаленным рабочем столом.

1 стартмани

27.10.2017    7515    8    arcadics    5    

Графическая оболочка для консольной утилиты cnvdbfl.exe

Сервисные утилиты v8 Абонемент ($m)

Графическая оболочка для консольной утилиты cnvdbfl.exe предназначенной для преобразования размера внутренней страницы файла базы 1С.

1 стартмани

25.10.2017    37545    261    frkbvfnjh    43    

Удаление данных напрямую в SQL

Сервисные утилиты Чистка базы v8 v8::СКД 1cv8.cf Абонемент ($m)

Порой так и хочется грохнуть что нить в скуле, но наталкиваешься на отсутствие понятных и функциональный инструментов. Вроде как что то и есть, но явно писанное для каких то конкретных простых целей. И так очередное творение в данной тематике. Особенности: удаление порциями, отображение готового текста запроса, отбор данных с помощью СКД (в отборе учитываются составные типы и обращения через точку).

1 стартмани

08.07.2017    14574    97    denacid    29    

Закрываем всплывающие сообщения платформы Промо

Сервисные утилиты v8::УФ Абонемент ($m)

Принудительное закрывание сообщений платформы 8.3.10.

1 стартмани

10.11.2017    12332    13    RomaH    8    

ОСкрипты для деплоя и копирования базы данных

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Набор оскриптов для деплоя базы 1С через хранилище и копирование через sql-бекап одной базы в другую

1 стартмани

02.05.2017    22635    34    Stepa86    27    

Программы перекодировки символов для ККТ онлайн «Элвес-МФ», «АТОЛ 90Ф» и «Меркурий-115Ф»

Сервисные утилиты ККМ Кассовые операции Кассовые операции Россия Абонемент ($m)

Программы перекодировки символов для ККТ онлайн «Элвес-МФ», «АТОЛ 90Ф» и «Меркурий-115Ф» - предназначены для сокращения времени ввода символьной информации в поля таблиц ККТ. Если касса не подключена к компьютеру, тогда текстовая информация в неё вводится через цифровую клавиатуру. Программа перекодировки символов переводит символы текста в цифровой код, предназначенный к вводу в ККТ, позволяет экономить время на поиске соответствующих значений символов в таблице кодов символов (стр. 42 руководства ККТ Элвес-МФ), (стр. 68 руководства ККТ АТОЛ 90Ф) (стр. 68 руководства ККТ АТОЛ 90Ф) или (Приложение 2 руководства ККТ «Меркурий-115Ф»). Пользователь программы может выбрать способ вывода перекодированных символов в строку или в столбик.

1 стартмани

10.03.2017    41475    5    w22u    5    

1:Tools - наш инструмент для обслуживания 1С

Сервисные утилиты Абонемент ($m)

Уважаемые коллеги. Разрешите представить вам первый выпуск нашего инструмента для обслуживания 1С. Пока набор функций невелик, но со временем будет расти. Сегодня в него входят очистка кеша и восстановление запуска баз после аварийного завершения.

1 стартмани

05.02.2017    27087    54    oldcopy    78    

Автокликер для 1С Промо

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Внешняя обработка, запускаемая в обычном (неуправляемом) режиме для автоматизации действий пользователя (кликер). ActiveX компонента, используемая в обработке, получает события от клавиатуры и мыши по всей области экрана в любом приложении и транслирует их в 1С, получает информацию о процессах, текущем активном приложении, выбранном языке в текущем приложении, умеет сохранять снимки произвольной области экрана, активных окон, буфера обмена, а также, в режиме воспроизведения умеет активировать описанные выше события. Все методы и свойства компоненты доступны при непосредственной интеграции в 1С. Примеры обращения к компоненте представлены в открытом коде обработки.

1 стартмани

03.04.2017    29931    70    slava_1c    49    

Статистика использования ключей HASP (PRTG via PowerShell)

Сервисные утилиты Абонемент ($m)

Когда наступит момент нехватки ключей HASP? А может уже пора бежать в магазин за новыми ключами?

1 стартмани

03.12.2016    11213    17    ddens    0    

Восстановление работоспособности ключа криптозащиты с ошибкой CKR_FUNCTION_FAILED (FIX для автоматической настройки)

Сервисные утилиты Администрирование данных 1С Розничная и сетевая торговля (FMCG) Россия Абонемент ($m)

Для облегчения процесса мною было собрано два установочника, один для x32 систем, другой для x64, дабы облегчить процесс перенастройки. Просто скачиваете и "Запускаете от имени Администратора". Все остальное происходит автоматически.  

1 стартмани

25.11.2016    23937    60    user635667    11    

Очистка кэша всех пользователей на терминальном сервере

Сервисные утилиты Беларусь Абонемент ($m)

Иногда при динамическом обновлении слетают настройки (пустые формы или странное поведение системы).

1 стартмани

02.09.2016    10518    34    ilya.rudziak    0    

Удаленная консультация Промо

Сервисные утилиты Абонемент ($m)

Простая и удобная удаленная консультация пользователей. Доступен исходный код.

1 стартмани

26.07.2015    27886    68    gzharkoj    56    

Универсальный редактор реквизитов объектов. Мультиобработчик Промо

Универсальные обработки Чистка базы Обработка документов Практика программирования Обработка справочников Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Объекты: Справочник, Документ, ПланОбмена, ПВХ, Бизнес-процесс, Задача, ПланСчетов, ПВР. Мультиобработчик: -Проведение, перенумерация, движения, копирование, создание на основании, подчиненность, статистика, удаление документов. -Регистрация изменений объекта(ов) в планах обмена. -Установка/Отключение ГлавногоУзла РИБ. -Поиск и восстановление "Битых" ссылок. -Недопустимые символы XML/Дерево XML. -Поиск и замена ссылок. -Ошибки ИБ, в т.ч XML. -Множество обработок справочников. -GUID. Дата и время создания объектов ссылочного типа. -Аналитика предопределенных, блокируемых реквизитов, ХранилищаЗначений. -История изменений объекта. -Активные пользователи. -Подписки на события, функциональные опции. -Загрузка пользователей ИБ из Windows, Active Directory. -Выгрузка/Загрузка пользователей ИБ в/из внешний XML-файл. -Поддержка различных режимов модальности. Файловый, Клиент-Серверный варианты. Обычная и Управляемая формы.

1 стартмани

28.12.2011    165647    2258    StepByStep    419