неділю, 16 травня 2010 р.

Building a SOC

For run Security Operation Center in your company you must create process, write procedures, hire a staff , etc. All these steps well described in thousand documents.
But what about technical components of SOC?
1. Video wall
Sure thing you need it for security events visibility. It could be LCD, Plasma or just a projector.
Usually you have more than 5 different security management programs (1-2 SIEMs, IDS management, system logsЖирний, etc) , so, you need method to show all these on display. You can't tile one display with all these windows - lack of resolution for huge amount of information.
I recommend to use very simple vb script ,created by friend of mine Roma Lazaruk, to switch between programs.
//JScript
var WshShell = WScript.CreateObject("WScript.Shell");
KL = true;

while (KL) {

WshShell.AppActivate(388);
WScript.Sleep(90000);
WshShell.AppActivate("2752");
WScript.Sleep(90000);
WshShell.AppActivate("3612");
WScript.Sleep(90000);

if (WshShell.AppActivate("notepad")) {
WriteWord();
KL = false;
}
}
It gives you possibility to see and read all security information on video wall and adjust visibility interval between programs. This script use PID numbers (for switching between different process with the same name like browser windows ) for program activation and you must run notepad.exe to kill the script.

2. Knowledge base.
Sharing knowledge between teem players save your time, increase team productivity and secure you from personnel turnover problem.
Sure thing the best engine for knowledge base is Wiki. More over you can create really secure knowledge base based on mutual ssl authentication with certificates on smart card and wiki single sign on (SSO) by user cn. For your convenience Andrey Dugin write a wonderful article about this in previous post!


суботу, 15 травня 2010 р.

Securing mediawiki

It is described here how to configure mediawiki for:
- use https with mutual authentication;
- use single sign on by client certificates.

At first, enable mod_ssl on apache:

a2enmod ssl

Then add to apache configuration file httpd.conf next strings:
SSLEngine on

SSLCertificateFile /etc/apache2/ssl/server.crt
SSLCertificateKeyFile /etc/apache2/ssl/server.key

SSLCACertificateFile /etc/apache2/ssl/ca.crt

SSLCARevocationFile /etc/apache2/ssl/crl.pem

SSLVerifyClient require
SSLVerifyDepth 1

< Location />
SSLRequire (%{SSL_CLIENT_S_DN_OU} eq "infosec" )
< /Location>

Then disable http-server on apache:

a2dissite default

and edit ports.conf:

#NameVirtualHost *:80 - comment or delete
#Listen 80 - comment or delete


After this restart apache:

apache2ctl graceful

To configure SSL authentication on mediawiki using certificate CN as username you need to add these strings in your apache config:

< Directory "/var/lib/mediawiki/">
Options None
AllowOverride None
Order allow,deny
Allow from all
SSLRequireSSL
SSLRequire %{SSL_CLIENT_S_DN} =~ m/.*serialNumber=$/
< /Directory>

Then you need to use SSLAuthPlugin.php from guide: http://www.mediawiki.org/wiki/Extension:SSL_authentication depends on your version of mediawiki and add in LocalSettings.php these strings:

#Load SSLAuthPlugin
require_once('extensions/SSLAuthPlugin.php');

#Feel free to use extra PHP code to munge the variables if you'd like
#Additionally if you wish to only map some of the name data, set this to true
#and either blank ssl_RN and ssl_email or comment them out entirely.
$ssl_map_info = false;

#Ssssh.... quiet down errors
#$olderror = error_reporting(E_ALL ^ E_NOTICE);

#Map Real Name from certificate
#Can be DN but is it right?
$ssl_RN = $_SERVER['SSL_CLIENT_S_DN_CN'];

#MW username is required to map to something
#You should beware of possible namespace collisions, it is best to chose
#something that will not violate MW's usual restrictions on characters

#Just using Firstname + Lastname (CN) from Certificate 'will' make collisions... but what to use?
#UN could be md5-hash of DN, but its ugly to use...

$ssl_UN = $_SERVER['SSL_CLIENT_S_DN_CN'];

#Map e-mail to something close?
#Will throw warnings if E-Mail is not set in certificate.
#If so, comment out the next three lines and set $ssl_email empty.
if ($_SERVER['SSL_CLIENT_S_DN_Email'] != )
$ssl_email = $_SERVER['SSL_CLIENT_S_DN_Email'];
else
$ssl_email = ;

#Turn error reporting back on
#error_reporting($olderror);

#Activate SSL Plugin
SSLAuthSetup();

понеділок, 26 квітня 2010 р.

security asceticism - getting list of subdomains

Hi folks.
During first step of security audit you need to get list of all sub-domains for a company domain name. How we can do it?
1. If target corporate DNS server support zone transfer (it's a security problem itself) it's easy:
#dig nameserver domainname axfr
#host -l domainname
2. DNS brute forcers - as a any brute force attack it's take a lot of time and it's always dirty work
3. My favorite way - ,sure thing, using google:
Just do a simple request
-inurl:www.ibm.com site:ibm.com
So, if google already indexed these domains you will find it in the list!
Sure thing, it works only with domains with web-servers on it.

Big Brother watching you or mobile phone security issues

Lets talk about mobile phone security. You are well qualified security specialist and never install suspicious application on you handset, so, you think you are secure? Have you heard about OMA-DM technology? OMA-DM stands from Open Mobile Alliance Device Management. Within the Open Mobile Alliance Device Management the standard for firmware handset updates is known as the Firmware Update Management Object (FUMO) This standard permits Firmware Over the Air (FOTA) technology. How it works - here you can find short description. But it was only first step of implementing such technology on the market.
The second step is SCOMO - Software Component Management Object standard that permits Software Component Over the Air (SCOTA) technology. This technology was created for more granular and flexible management of each software components. With SCOTA, one or more piece of software could be changed without requiring update whole handset firmware. SCOTA is a best way to create phones' application stores, so, consumers can have access to the latest applications, without needing to replace devices.
The most interesting thing that all these technologies use http/https over IP and xml data format.
Sound cool, does it? But lets turn on our paranoia:
1. These technologies allow vendors, mobile or value added service providers (but not only them) to install or delete any application or data on your mobile phone.
2. This technology uses centralized management model , so, from the one management Center it's possible to legally control a huge botnet of mobile phones.
3. This technology could allow (or it could be already used) government to spy on citizens.
4. These system components could be penetrated by some "bad guys" and used for stealing your data or spying on you.
Talking about OMA-DM overall security conception - I' ve found only OMA Device Management Security Candidate Version 1.2 document. According to it OMA-DM protocol use to level of authentication: on transport layer (recommended to use TLS 1.0, SSL 3.0 ) and on application layer (OMA-DM use MD5 !).
Some useful information for Windows based smartphones you can find on msdn web site:
How many phones support these technologies? There are two types of OMA-DM support: OMA-DM ready terminals (soft client already build-in) and terminals that need OMA-DM client to be installed by user to enable OMA-DM support. Some useful but a bit old information you can find here .
Big Brother is watching you! Stay secured!

суботу, 3 квітня 2010 р.

Увеличения объема доступной виртуалке памяти в esxi3.5 или работа в esxi3.5 на хосте с 1 GB RAM

Куда нынче ИТ-безопаснику без виртуализации? А как быть при наличии старого железа?
Итак у нас есть физический сервер с 1 GB RAM и большое желание поднять на нем среду вируализации для запуска 1 виртуалки. (Вопрос зачем здесь виртуализация деликатно упустим: например для упрощения переноса системы или ее тестирования)

Итак какой гипервизор выбрать? Ответ прост esxi3.5 единственный из гипервизоров который согласиться работать на таком обеме памяти. esxi4 требует минимум 2 GB RAM. Итак установка прошла нормально. Виртуальный аплайнс смигрировал и вот теперь его нужно сконфигурить и запустить.

Только вот незадача ему не удаеться выделить более 256 М памяти! Казалось бы легкая и проворная esxi3.5 откушала более 700 метров. Итак как мы будем это бороть.

По умолчанию гипервизор резервирует 500 метров под управление WMами. Нам же с одной WMкой такого не нуно. Тюним: Идем в Configuration \ System Resource Allocation. Выбираем advanced находим VIM объект и ставим все параметры резервации на 256 метров


Затем переключаемся снова в простой режим из адванседа и правим системные ресурсы целиком, ограничивая их



и после всех этих танцев з бубном получаем столь необходимую нам память в общем размере 512 Мб и отдаем их виртуалке. вуаля

понеділок, 29 березня 2010 р.

Security Configuration Guides

When auditors visit your company for checking overall information security level they usually shower you with questions about vulnerability and patch management process. And if you haven't one of these processes well established - I'm dead sure you will get serious deficiency in the audit results.
But what about system hardening process ( it could part of configuration management ) - do you have such process established? Do yo have security configuration standards for all yours OS, DB and application well developed and updated? If you will start doing this from a scratch you gonna waste hell of a lot time. To save your time I propose you list of links to the well known library of security configuration guides:
  1. USA National Security Agency (NSA) - Security Configuration Guides
  2. USA National Institute of Standards and Technology (NIST) - National Checklist Program Repository
  3. USA Defense Information System Agency (DISA) - Security Technical Implementation Guides (STIGS)
  4. Community: the Center of Internet Security (CIS) - CIS Benchmarks
Sure thing you can find a lot of such guides on vendors websites:

PS. If you got more links and guides , pls add it in comments.

суботу, 13 березня 2010 р.

Using Google Alert for information security

So, we have spent hell of a lot of time and money installing different systems but how we can be sure that everything done good? Once in the morning you can find out that top today news is: your company has been hacked! I think, you must get worst news first. For this purpose you can write own web robot but from my point of view the simplest way is google alert service. How we can use it?
Create a search pattern like " my_company_name hacked OR compromised OR defaced " change option How often to as-it-happens, provide email and vuala - once google find something it gonna inform you.
More over you can use google alert service for checking your company web-resources for occasional leakage of confidential information. For this purpose create pattern like "site:my_company_web_site.com confidential OR secret OR internal use" or special pattern for documents that should not be published "site:my_company_web_site.com confidential filetype:doc OR filetype:cad". So, google will monitor your web sites instead of you and notify you.
Sure thing you can combine both methods for control of private data leakage over the internet, finding negative information about your company, advertisement about selling your protected data, etc.
Keep informed! :-)

пʼятницю, 5 березня 2010 р.

Определение нагрузки на SPAN-порт

Глубокий анализ сетевого трафика, как правило, производится без потенциальной возможности влияния на сетевые сервисы. Исключением может быть использование систем предотвращения вторжений в режиме IPS (Intrusion Prevention Systems). В зависимости от поставленных задач, используется анализ полной копии всех пакетов либо информации о каждом установленном сетевом соединении или обмене. Полная копия пакетов, обрабатываемых управляемым коммутатором, направляется на выделенный «зеркалированный», или SPAN (switch port analyzer) порт, к которому подключается анализатор. В зависимости от производителя, версии аппаратной платформы и программного обеспечения коммутатора, возможно выборочное копирование входящих/исходящих пакетов определенных физических либо логических интерфейсов на SPAN-порт. Для эффективного анализа пропускная способность SPAN-порта и, соответственно, сетевого сенсора, должна быть не менее пиковой суммарной нагрузки на анализируемые интерфейсы.
Предположим, есть коммутатор с n интерфейсов, сетевой трафик с m из которых необходимо анализировать. Порты могут быть как физические, так и логические. Независимо от того, будет ли SPAN-сессия терминироваться на данном коммутаторе или на удаленном, соблюдается условие m ≤ n – 1, поскольку интерфейс, передающий копии пакетов на анализатор, не может подавать копию своей нагрузки на себя. В зависимости от поставленных задач и возможностей коммутатора по каждому из m интерфейсов анализируется входящий, исходящий, либо весь трафик. Обозначим за Rx пиковое значение загрузки (бит/с) интерфейса входящими данными, а за Tx – исходящими. Расчет пропускной способности SPAN-порта и, соответственно, сетевого сенсора (Bw), на который подается весь трафик с m интерфейсов, производится по формуле:

(1)




Если же представляют интерес пакеты либо входящие, либо исходящие, в зависимости от порта коммутатора и подключенного к нему оборудования, то для вычисления введем дополнительные параметры: t – количество интерфейсов, с которых будет копироваться исходящий трафик, r – количество портов, у которых будут анализироваться входящие данные. В этом случае соблюдаются условия: r m, t m. Требования к соотношению значений r и t определяются либо поставленными задачами для исследования, либо программно-аппаратными ограничениями коммутатора. Таким образом, формула (1) для вычисления пропускной способности Bw приобретает следующий вид:
(2)

Практическое применение результатов данных расчетов в сети предприятия, как правило, сводится к решению вопросов:
- Какой интерфейс выделить на «зеркалированный» порт – FastEthernet, GigabitEthernet или TenGigabitEthernet?
- Какой производительности необходим сетевой сенсор?

Сетевые сенсоры как источник информации

Распределение информации с сенсоров между подразделениями

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

- администраторы серверов;

- администраторы сети;

- администраторы рабочих станций пользователей;

- администраторы IT-безопасности;

- служба безопасности;

- маркетинг.


Сетевой трафик может генерироваться:

- пользователями;

- администраторами;

- серверным и сетевым оборудованием.


Посредством глубокого анализа данных, передаваемых по пакетной сети, возможно разграничить предоставление информации:

- нагрузки на сеть – администраторам сети и серверов, в компаниях-провайдерах связи подобная информация также может пригодиться маркетингу;

- наличия вирусов/троянов/червей – администраторам IT-безопасности, рабочих станций пользователей, серверов;

- неправомерных действий пользователей и администраторов – службе безопасности;

- некорректной конфигурации рабочих станций, серверов, активного сетевого оборудования – администраторам рабочих станций, сети, серверов, IT-безопасности.


Для каждого типа событий возможна настройка отсылки информации в виде трапов SNMP либо syslog (в зависимости от возможностей сенсора) на отдельный сервер мониторинга для полной изоляции доступа к событиям, необходимым для других подразделений.

Мониторинг состояния систем обнаружения вторжений

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

- рациональности использования ресурсов;

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

- соответствия официально заявленных производителем параметров реальным данным;

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

- возможности распределения сенсоров различной мощности по разным участкам сети;

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

- необходимости снятия части нагрузки с детектора путем исключения из SPAN-сессии некоторых интерфейсов либо VLAN в случае высокой загрузки;

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

- возможности наращивания инспектируемого трафика в случае низкой нагрузки;

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

- целесообразности подключения дополнительного детектора в коммутатор – в случае перегрузок;

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

- возможности агрегации SPAN-сессий из разных коммутаторов для инспектирования на одном сенсоре любого производителя – при наличии такой необходимости;

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

- дополнительная информация об изменениях сетевой активности;

На основании информации об изменениях сетевого трафика можно контролировать появление аномалий либо использование несогласованных сетевых приложений

- узнать о проведенных несогласованных работах по реорганизации сети либо о произошедшей аварии;

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

- определить степень влияния работ на сервис для пользователей;

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

- воздействие внешних факторов (температура, отключение штатного электропитания);

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

- программный/аппаратный сбой в работе сенсоров.

В данном случае по отсутствию возможности управления определяется сбой в работе устройств.

неділю, 28 лютого 2010 р.

Vulnerabilities scanners architecture in big enterprise

Let's talk about vulnerabilities scanners within corporate security infrastructure. Everybody knows that vulnerability identification is one of the major component of security risk management process. So we must be sure that information about vulnerabilities is correct and up to date .
It's easy when you scan the network from your own laptop and use direct connection to the target system. But what about huge corporate network with a lot of routers, firewalls and packet filters between you and target system?
First of all you must install multiply instances of vulnerabilities scanners across the network. why you should avoid to use one scanner for all network ?
- compromising this scanner will give possibilities to attacker easily get access to all hosts. (For same scanner it's snap - IBM ISS internet scanner only works on Windows XP SP1 , so the scanner is vulnerable himself. )
- scanning through the firewalls will impact to the scan performance and could produce firewall cpu overload.
-low accuracy of the scans results (firewalls, routers and packets filters between scanner and the target can distort the scan )
So, does installing multiply scanner fix all problems? Sure thing, not. What about scan accuracy? It's depends of scanners and network configuration. So, if you would like to get trusted result you must be sure in scanner and network configuration before run each scan. It is not easy and can consume a lot of time without any warranty. How to solve this problem? Just do the same as engineers do for the precision instruments - calibrate them using master or template.
I recommend to use a bunch of calibration systems and allocate them across the network. It could be virtual systems based on well known vulnerable distributive such as Damn Vulnerable Linux or simple unpatched Windows with a test services running.
So, before scan the target system you must choose nearest calibration system, scan it and check result for accuracy. From my experience it's very important to do this because often even very famous vulnerabilities scanners fail during simple scan.

вівторок, 2 лютого 2010 р.

security asceticism-start browser from diff user

A lot of information security guys use windows. Sure thing -We Are All Sinners!
All of us know that they must work under limited account on windows - but usually we work with admin privileges. Yes it insecure, but everybody does it! So, how you can reduce the risk staying working under admin account?
Just start your web browser from account with limited privileges and access rights.
1. Create a user with such limited rights. (I've called him- browser)
2. Create a desktop shortcut with this command:

%windir%\System32\runas.exe /savecred /user:browser "C:\ProgramFiles\Mozilla Firefox\firefox.exe"

Thats all folks. If your browser will be penetrated , attacker gets only limited rights on your system.


четвер, 21 січня 2010 р.

Terminal server with advanced logging capabilities.

How we (Information security guys) get the information about user activities within information system? Sure thing – from the logs, produced by this system. But what could we do if some business critical system do not produce such logs or we cannot trust them? It could be in cases below:

1. Legacy system with no logging at all.

In the any big enterprise you can find old legacy system that have been designed a lot of years ago and do not fit any information security requirements at all. Very often you even haven’t possibility to install any additional software on such system (restricted by vendor or lack of performance). Sure thing you could protect this system from the network side by firewall but it not helps to get more logs from the system inside.


2. Business/ Mission critical systems supported on site or remotely by vendor.
It’s very popular now to give IT system operation support to the vendor or special outsourcing company. It’s very useful and helps to reduce you costs. But what about security? In such case you should fully trust to this company and couldn’t trust to the system logs (they could be changed easily with admin privileges on system and vendor knowledge of the system internals).

3. Protect your Business/ Mission critical systems from the evil systems administrators’ activities.
These guys have full knowledge and enough permission to do whatever they want. Sure thing well designed system must send logs to the central log’s storage and you could do investigation based on these logs. But what happened if it’s not enough or some subsystem of the system does not produce logs at all?

In all this case you must have a special designed infrastructure with terminals servers with advanced logging capabilities and give users access to the protected systems only through this terminal servers.

So , below samples of such infrastructures for each case.

1. Legacy system with no logging at all.




Except terminal server in this case sometimes you will need install network sniffer for control data flow within legacy information system (because old switches do not support acl or installing acl on network equipment prohibited by vendor )

2. Business/ Mission critical systems supported on site or remotely by vendor.



3. Protect your Business/ Mission critical systems from the evil systems administrators’ activities.



There are a lot of very expensive commercial terminal server solutions that could record all activities and produce a lot of logs or even be a man of the middle for ssh session. From my point of view one of the best solutions is Shell Control Box from Balabit. But it cost a lot and you should by license per each user ho access to the system and per each server access to whom this device protect.

In this article I gonna propose you alternative solution that will be much much cheaper but have almost the same functionality.

As a terminal server core I use Windows Terminal Server (Windows Server 2003). I chose licensing type – per user, but you could choose whatever you want.

1. Installing Windows Server 2003 and Terminal Server Service

Here there are two options:
  • use local authentication for terminal users (for small amount of users )
  • join the AD domain and use domain authentication for terminal users (for big amount users). If your company do not use AD, but you need to manage a lot users, especially on a multiply terminals servers you could install special AD Domain controller for this purpose.
Registering Windows Terminal Server and installing CAL licenses. (On domain controller for multiply terminal servers within domain)

2. Hardening terminal server.

First of all install Microsoft Windows Server 2003 Security Guide Tools and Templates (download it from Microsoft site) and configure your server as a Specialized Security - Limited Functionality server.

Then turn off or uninstall all unused services and windows components.

Modify the group policy and the registry to prohibit users to mount disk, copy clipboard, redirect ports and etc through RDP.

Do not forget do disable windows admin shares!

3. Set up a file share for users file transfer.

Very often users should have possibility to copy files to or from protected servers. We cannot allow users to use for this purpose RDP drive mounting for a lot of security reasons. The best way is to setup dedicated file share for such purpose. So, how user will transfer file to the protected area?
First of all user copy file to the terminal server file share. After that, he logon to the protected area through terminal server and copy file from terminal server to the protected server. So, he uses the terminal server as temporary transfer storage.

For you , as a security guy, it give possibility to copy this files for further analysis, scan it by anti-virus, log file transfer event, etc.

So, what should you do for this:

  • Create a file share on separate disk.
  • Turn on disk quotas.
  • Modify folder and subfolder permissions for allowing only to file owner view o modify own files and folders. (It will protect information of one user from others during file transfer through terminal server)
4. Install Antivirus software and configure it to scan files in shared folder.

5. Install a Screen Anytime software.

It cost about 1K$ per terminal server without session limitation. This really amazing soft could capture the user’s terminal session and store it as a high compressed video file. More over this software provide you session player and records management tools.
Configure Screen Anytime software for recording all session in shadow mode (hide it from users). If you have centralized log storage you can configure this software to send captured session video files to this log storage from all your terminals servers.

6. Change default shell to mstsc.exe instead of explorer.

Changing shell you prevent users from access data and software stored on terminal server. So, users can only go through this terminal server without possibilities to do something on the terminals server.
So, using mstsc ( RDP client) you can easily manage only windows servers.
But what happens if you would like to control access to the unix based systems? No problem! Create custom shell based on ssh client like Putty or even write small shall and include in it RDP, ssh, sql or other clients that you need. I strongly recommend you to check and modify these clients for preventing user access to terminal server file system. For example in my terminal server I using modified Putty with record session option and without any possibility to change it. So, I get two logs in one time: video from Screen Anytime and commands log in text from Putty.

7. Create a custom startup script to start Screen Anytime video capture on user log on.

Normally Screen Anytime does it for you. But, when you change this default shell you must take care of starting screen capturing.

8. Configure and startup a firewall.

Transit terminal server infrastructure
Sometimes you would like to allow users to install some software on terminal server or you cannot modify some client software to securely install it on terminal server. I recommend you to create a chain of terminal servers. First terminal server will have mstsc ( RDP client) as a shell and work as a transit terminal server with one purpose – record users activity. First server will only allow user to get to second terminal server. On this terminal server users will have all their software installed or even be administrators!



This scheme works amazing especially in case number 2 - giving ability to vendor easily remotely support your business critical systems.





Last tip: Use virtual infrastructure for these terminal servers! It really simplify your life.

That’s all folks!