Альтернативні потоки NTFS або як Widows визначає, що файл був завантажений з Інтернету.

Альтернативні потоки NTFS або як Widows визначає, що файл був завантажений з Інтернету.

Операційні системи Windows наділені двома маловідомими функціямиприховування даних: потоки даних NTFS(відомі також як альтернативні потоки даних) та доступ до списку ресурсів на базі дозволів Access-based Enumeration (ABE). Альтернативні потоки даних дозволяють додавати до файлу приховану інформацію, таку як відомості про файл. Швидше за все, вам не доведеться задіяти приховані потоки даних, проте зловмисники можуть використовувати цю технологію проти вас, тому слід мати уявлення про неї і про те, як вона може працювати.

Що ж до методу ABE, він може поповнити ваш арсенал. Цей метод дозволяє робити невидимими папкита файли спільно використовуваних ресурсів для тих користувачів, які не мають дозволу на доступ до них.

Ось що потрібно знати про ці кошти.

Річки, що живлять море даних

Альтернативні потоки даних – це функція файлової системи NTFS. Колись ними була наділена система Windows NT 3.1 для того, щоб дати можливість користувачам NT і Macintosh обмінюватися файлами.

Файл NTFS складається із потоків даних. Це стандартний поток даних $DATA, і, можливо, один або кілька альтернативних потоків даних. Будь-який користувач, що володіє необхідними дозволамина роботу з файлом, що бачить існуючий потік даних $DATA, може відкрити його, а також зчитувати та записувати дані в цей потік.

Альтернативний потік даних – це додаткова інформаціяабо файли, які користувач або програма можуть приєднувати до файлу NTFS. Про існування альтернативного потоку даних знає лише користувач, який створив його. Зазвичай користувачі не знають, чи приєднаний до файлу альтернативний потік даних; річ у тому, що ні вміст цього потоку, ні його ім'я не є видимими. До того ж, немає можливості побачити зміну у розмірі файлу.

Існує безліч способів використання альтернативних потоків даних. У системі Windowsці потоки застосовуються для зберігання зведених даних документів, створених додатками, які не входять до комплекту Microsoft Office, таких як прості текстові файли(. Txt). Зведені дані, наприклад заголовок, тема та дані про автора, можна ввести на вкладці Summary діалогового вікна Properties відповідного файлу. Ці зведені дані зберігаються в альтернативному потоці даних SummaryInformation.

Програми Windows, такі як Encrypting File System (EFS) і Windows Explorer, використовують альтернативні потоки даних для приєднання тих чи інших файлів даних до файлів, які зберігаються на накопичувачах, відформатованих під систему NTFS. Програма EFS за допомогою альтернативних потоків даних приєднує до зашифрованих файлів відомості про кодування та декодування, що забезпечує можливість децентралізованого шифрування та дешифрації засобами цієї програми.

Реалізоване у пакеті Windows XP Service Pack 2 (SP2) програма Microsoft Internet Explorer(IE) використовує альтернативний потік даних Security.Zone для забезпечення класифікації зони безпеки файлів, записаних на томі NTFS. В результаті IE має можливість блокування передбачають розширення об'єму прав користувача атак, які можуть мати місце в ситуаціях, коли користувач завантажує шкідливий код з ненадійної за критеріями безпеки зони Internet і зберігає цей код на жорсткому диску. IE відносить локально збережений контент до зони безпеки Local Machine, яка передбачає надання більшого обсягу прав, ніж зона безпеки Internet. Пакет XP SP2 завжди перевіряє потік даних Security.Zone перед тим як дозволити завантаженому коду робити будь-які дії на локальній системі.

Канал для впровадження шкідливого коду

Альтернативні потоки даних, що заслуговують на увагу і небезпечні, стають через те, що їхні імена та вміст не відображаються у вікні програми Windows Explorer. Тому організатори різноманітних атак вважають такі потоки зручним засобом приховування даних або зловмисного коду, що потрапив у систему. Прикладом використання цих потоків може бути черв'як VBS.Potok@mm. Хакери використовували альтернативний потік даних для приєднання до існуючого .ini-файлу ODBC декількох сценаріїв на мові Visual Basic (VB).

При активізації черв'як створює обліковий записз адміністративними повноваженнями і розсилає себе на адреси, які сам і виявляє в адресній книзі Microsoft Outlook.

Ще одна небезпека полягає в тому, що дисковий простір, виділене для альтернативних потоків даних, не відображається у даних про розміри (файлів) та про незайнятий дисковий простір програми Windows Explorer. Хакер може використовувати альтернативні потоки даних для заповнення дискового простору файлового сервера, і адміністратору залишиться тільки ламати голову, намагаючись докопатися до проблеми. Крім того, треба сказати, що утиліта командного рядка Dir не бере до уваги альтернативні потоки даних при підрахунку даних про розміри (файлів та папок). Сьогодні існує лише один засіб Microsoft, здатний враховувати альтернативні потоки даних при підрахунку розмірів: це утиліта Chkdsk.

Додавання нового потоку

Будь-яка людина, яка має право запису у файл NTFS, може скористатися звичайними командами операційної системи для приєднання до файлу альтернативного потоку даних. Наприклад, наступна команда створює альтернативний потік даних mystream, приєднує mystream до файлу з ім'ям file.txt і зберігає у потоці mystream фразу "top secret".

echo top secret > file.txt: mystream

Переглянути вміст потоку mystream можна за допомогою команди

Як зазначалося вище, до альтернативних потоків даних можна додавати виконувані файли. Так, існує можливість додати приховану копію калькулятора Windows(calc.exe) до файлу file.txt. Для цього потрібно просто ввести команду

type calc.exe > file.txt: calc.exe

Щоб запустити прихований калькулятор, введіть команду

start .file.txt: calc.exe

Ви можете переконатися, що альтернативні потоки даних та їх вміст не відображаються в інструментальних засобах Microsoft. Відкрийте програму Windows Explorer та перегляньте в ній властивості файлу file.txt. Фактично розмір файлу складає 112 Кбайт (стільки місця займає вбудований файл calc.exe) – але програма покаже розмір файлу рівним 0 Кбайт: у потоці даних $DATA немає відомостей про вбудований файл, а програма Windows Explorer не може зчитувати інформацію з альтернативного потоку даних.

Зрозуміло, що з альтернативними потоками даних пов'язано чимало погроз, особливо в мережах, де робота з видачі дозволів на звернення до ресурсів NTFS не приділяється належної уваги і не встановлено жорсткого контролю доступу до серверам Windows. Існує простий механізм захисту, здатний перешкоджати спробам хакерів скористатися альтернативними потоками даних - система контролю доступу NTFS. Якщо зловмисники не мають дозволу записувати дані у файл, вони не зможуть створювати альтернативні потоки даних та приєднувати їх до цього файлу.

Виявлення змін

Якщо у вас виникає відчуття, що хакерам вдалося обійти заслін встановлених дозволів, скористайтеся одним з розроблених інструментальних засобів виявлення вмісту альтернативних потоків даних. Програми для перевірки цілісності системи, такі як Tripwire Enterprise і Tripwire for Servers, дозволяють виявляти всі зміни у файловій системі NTFS, що мали місце в системі Windows, включаючи додавання або зміну вмісту потоку даних.

Пропонована Sysinternal програма Streams - це утиліта командного рядка, що безкоштовно розповсюджується, що визначає імена приєднаних до файлів альтернативних потоків даних. На екрані 1 показано, як використовувати утиліту Streams для перегляду імені потоку даних calc.exe, який раніше додали до файлу file.txt. Цю утиліту можна завантажити за адресою http://www.sysinternals.com/utilities/streams.html.

Ще один простий спосіб виявлення альтернативного потоку даних - з допомогою Windows Explorer скопіювати підозрілий файл на накопичувач з файловою системою, Відмінної від NTFS (скажімо, на накопичувач FAT). Інші файлові системи не мають засобів для роботи з альтернативними потоками даних. Тому якщо ви спробуєте скопіювати файл NTFS з приєднаними альтернативними потоками даних для розміщення його в іншій файловій системі, NTFS видасть попередження, аналогічне показаному на екрані 2. Але майте на увазі, що якщо ви копіюватимете цей файл у вікні командного рядка за допомогою команди Copy , Windows скопіює його на відміну від NTFS файловусистему та без попередження видалить потік даних.

Приховування ресурсів, що спільно використовуються, за допомогою ABE

ABE – це додаткова функція рівня спільного використанняфайлів, яку Microsoft вперше реалізувала у пакеті Windows Server 2003 SP1. Її можна використовувати в будь-якому спільному каталозі Windows незалежно від того, в якій файловій системі зберігаються дані, що спільно використовуються. ABE дозволяє адміністраторам приховувати папки та файли, що зберігаються на загальнодоступних ресурсах, від тих користувачів, які не мають відповідних дозволів на доступ до них на рівні NTFS. Іншими словами, йдеться про забезпечення безпеки на рівні папок.

У випадках, коли ABE не застосовується, користувачі, підключаючись до загального каталогу, бачать всі розміщені на загальному ресурсі файли та папки, включаючи ті, на читання яких вони не мають дозволів, і ті, доступ до яких для них заблокований. Коли користувач намагається відкрити файл або папку, доступ до яких йому не дозволено, система видає повідомлення про помилку із поясненням про заборону доступу. Ці повідомлення про помилки можуть збивати користувачів з пантелику, тому активізація засобів ABE дозволяє зменшити навантаження служби підтримки.

Втім, використання ABE має свої мінуси. Перед тим як повернути клієнту, що підключився до загального ресурсу, список об'єктів, що містяться в папці, сервер повинен перевірити всі списки управління доступом до цих об'єктів: тільки після цього він може визначити, які дані слід повертати. В результаті може відзначатися істотне зниження продуктивності системи, особливо при зверненні до загальних ресурсів, що містить багато об'єктів.

Кошти ABE доцільно використовувати, наприклад, для налаштування загальнодоступних ресурсів у домашніх каталогах користувачів. Замість створення прихованого загальнодоступного ресурсу для домашнього каталогу кожного користувача, можна створити один спільний ресурс, який містить домашні каталоги всіх користувачів у папці домашнього каталогу. Користувачі підключатимуться до цього кореневого каталогу, і ви зможете за допомогою ABE, а також дозволів NTFS контролювати видимість домашніх каталогів усіх користувачів.

Активізація функції ABE

У цій функції застосовується новий прапор загальнодоступного ресурсу SHI1005_FLAGS_ENFORCE_NAMESPACE_ ACCESS; на момент, коли пишуться ці рядки, він реалізований лише в пакетах Windows 2003 SP1 та Release 2 (R2). Цей прапор означає, що ви застосовуєте функцію ABE до однієї з папок.

Для встановлення прапора можна використовувати розширення властивостей папки Windows Explorer або командний рядок abecmd.exe. Microsoft розповсюджує розширення ABE Explorer та abecmd.exe в інсталяційному пакеті ABE, який є додатковим модулем для платформи Windows Server 2003 SP1. Установчий пакетможна завантажити з вузла Microsoft за адресою http://www.microsoft.com/downloads/details.aspx?FamilyId=04A563D 9-78D9-4342-A485-B030AC442084 . Оскільки ABE – це серверне розширення, його можна використовувати незалежно від того, яка версія Windowsвстановлена ​​на клієнті.

Після встановлення засобів ABE на сервері можна встановити цей прапор для тієї чи іншої папки. Клацніть на папці правою клавішею миші, виберіть Properties, перейдіть на вкладку Access-based Enumeration і встановіть прапорець Enable access-based enumeration on this shared folder, як показано на екрані 3. Щоб застосувати функцію ABE до всіх загальнодоступних ресурсів системи, встановіть прапорець this folder"s setting to all existing shared folders on this computer.

Другий спосіб – використовувати засіб командного рядка abecmd.exe. Щоб застосувати функцію ABE до загальнодоступного ресурсу shareddocs, введіть наступну команду:

abecmd /enable shareddocs

Для активізації функції ABE на всіх доступних ресурсах можна використовувати параметр /all, а відключення ABE - параметр /disable.

Управління доступом

ABE - простий засіб, що дозволяє обмежити повноваження користувачів доступом лише до тих файлів, які їм потрібні для роботи. Користувачі можуть легко знаходити потрібні файли, оскільки їм не доводиться пробиратися крізь папки, що не мають відношення до справи, і вони не турбують службу підтримки питаннями про те, чому не відкриваються файли, дозволів на роботу з якими вони не мають.

Щоб захиститися від хакерів, які застосовують альтернативні потоки даних, адміністратори повинні стежити за налаштуваннями керування доступом до загальнодоступних ресурсів та використовувати одну з описаних мною утиліт для виявлення прихованих альтернативних потоків даних, а також змін у системі NTFS.

Жан Де Клерк([email protected]) - співробітник Security Office компанії Hewlett-Packard. Займається керуванням ідентифікацією та засобами безпеки продуктів Microsoft. Автор книги Windows Server 2003 Security Infrastructures (видавництво Digital Press). Підтримка альтернативних потоків даних (AltDS) була додана в NTFS для сумісності з файловою системою HFS Macintosh, яка використовувала потік ресурсів для зберігання іконок та іншої інформації про файл. Використання AltDS приховано від користувача та не доступне звичайними засобами. Провідник та інші програми працюють зі стандартним потоком та не можуть читати дані з альтернативних. За допомогою AltDS можна легко приховувати дані, які не можуть бути виявлені стандартними перевіркамисистеми. Ця стаття дасть основну інформацію про роботу та визначення AltDS.

Створення AltDS

Створити AltDS дуже легко. Для цього скористаємося командним рядком. Спочатку створимо базовий файл, до якого будемо прикріплювати наші потоки.
C:\>echo Just a plan text file>sample.txt

C:\>type sample.txt
Just a plan text file


Далі ми скористаємося двокрапкою в якості оператора, щоб вказати на те, що будемо використовувати AltDS:
C:\\>echo You can't see me>sample.txt:secret.txt

Для перегляду вмісту можна використовувати такі команди:
C:\ more< sample.txt:secret.txt

або
C:\ notepad sample.txt:secret.txt

Якщо все працює добре то побачите текст: You can"t see me, а при відкритті з провідника даний текст видно не буде. Також AltDS можна прикріпити не тільки до файлу, але і до папки. або текст:
C:\>md stuff
C:\>cd stuff
C:\stuff>echo Hide stuff in stuff>:hide.txt
C:\stuff>dir
Volume in drive C не має label.
Volume Serial Number is 40CC-B506Directory of C:\stuff
09/28/2004 10:19 AM .
09/28/2004 10:19 AM

0 File(s) 0 bytes2 Dir(s) 12,253,208,576 bytes free
C:\stuff>notepad:hide.txt

Тепер ви знаєте, як блокнотом переглянути та відредагувати прикріплений AltDS, а також як прикріплювати його до файлів та папок.

Приховування та запуск програм

Приховати програми, використовуючи AltDS так само легко, як і тестові файли. Для початку знову створимо базовий файл:

Далі помістимо наш додаток у потік, для прикладу я використав notepad.exe:
C:\WINDOWS>type notepad.exe>test.txt:note.exe

Тепер переконаємося, що в нашому файлі все також текст:
C:\WINDOWS>type test.txt
Test

А тепер найцікавіше, запустимо наш захований додаток:
C:\WINDOWS>start .\test.txt:note.exe
C:\WINDOWS>

Так як ця стаття є не повним перекладом взятої статті, то оформлено як простий топік. Додаткові прийоми можна знайти за вказаним посиланням.

UPD:

Утиліти по роботі з AltDS (список взятий із статті за посиланням вище):

LADS - List Alternate Data Streams by Frank Heyne
www.heysoft.de/Frames/f_sw_la_en.htm

Streams.exe від SysInternals.

Останнім часом у зв'язку з здешевленням апаратних засобів (у доларовому еквіваленті) все більша кількістьКористувачів комп'ютера отримує у розпорядженні ресурси цілком достатні роботи операційної системи Microsoft Windows NT (i200MMX + 32-64 Mb). Ненадійність та непередбачуваність Windows 95/98, а також нездатність її до управління на належному рівні ресурсами сучасних комп'ютерівприводить багатьох користувачів до думки про перехід на NT.

При цьому багато недосвідчених користувачів не знаходять для себе нічого кардинально нового. І дійсно, встановивши Internet Explorer 4 і не користуючись численними можливостями NT щодо застосування політики безпеки та захисту, найбільшими відмінностями від Windows 98 може здатися наявність двох папок “Автозавантаження” у пусковому меню (поточного користувача та загального для всіх користувачів) та відсутність аплету Add /Remove Hardware в Панелі керування. А якщо ще й не форматувати диск файловою системою NTFS, різниці можна більше і не знайти.

Але ця стаття таки описує деякі відмінності NTFS від FAT, VFAT, FAT16 і FAT32. Загальновідомі відмінності: здатність до самовідновлення, відкладений запис, максимальний розміртоми та файлу на ньому до 16 Екзабайт ( 1 Екзабайт = 1000000 Гбайт), можливість стиснення окремих файлів та папок, встановлення дозволів та аудиту досить широко освітлені в літературі та документації до Windows NT. Але існують ще маловідомі та маловикористовувані можливості NTFS: жорсткі посилання (hardlinks) та множинні потоки даних (multiply data flows або forks). Далі йтиметься саме про них.

Множинні потоки даних. Цей термін знайомий користувачам Macintosh. У цій системі файл може мати два потоки (forks): потік даних та потік ресурсів. У потоці даних зберігаються дані файлу - цей потік копіюється як єдиний при перенесенні файлу з Macintosh на PC. Другий потік файлу - потік ресурсів, що містить дані операційної системи - меню, значки, шрифти, загалом все те, що прийнято називати ресурсами. Коли Windows NT Server обслуговує клієнтів Macintosh і надає дисковий простір для зберігання файлів, необхідно, щоб файлова система сервера підтримувала формат файлів клієнта. Це є однією з причин появи множинних потоків даних у NTFS.

Як це реалізовано? Будь-яка інформація про файл, починаючи з його імені, дозволів і закінчуючи власне даними, що зберігаються у файлі, з точки зору NTFS є атрибутом, що зберігається у власному потоці (stream). Розробники NTFS вважали, що можна не обмежуватися одним потоком для даних - безіменним, і додали можливість створення кількох, крім основного, іменованих потоків. Для створення множинних потоків можна застосувати функцію Win32 API, але можна зробити й простіше.

З часів Кернігана та Річі – розробників мови C та операційної системи UNIX у багатьох операційних системІснує можливість узагальнення операцій введення – виведення. З цієї точки зору, будь-яка операція введення - виводу може розглядатися як операція введення з потоку або виведення в потік незалежно від того, що є джерелом даних (консоль, тобто клавіатура, файл або порт) і приймачем (знову ж таки консоль, даному випадкувже екран монітора, принтер або файл). Існує і можливість перенаправити введення - виведення програми з екрана на принтер і вводити команди не з клавіатури, а з файлу. В наш час повсюдного використання графічного інтерфейсу користувачаці можливості застосовуються дуже рідко, тому пояснимо сказане прикладом.

Команда операційних систем Microsoft echo використовується для виведення інформації на екран у текстовому режимі:

C:>echo Hello, World!

Команда echo як пристрій виведення інформації використовує екран монітора. Виведення цієї команди можна перенаправити з консолі до файлу (для цього використовується символ “>”):

C:>echo Hello, World! > file

Як бачите, команда echo у цьому випадку на екран нічого не вивела. Але у файлі file можна знайти рядок “Hello, World!”. Аналогічно висновок команди echo можна перенаправити і на принтер:

C:>echo Hello, World! > lpt1

На екрані знову нічого, але на аркуші паперу в принтері можна виявити той самий рядок “Hello, world!”, якщо звичайно принтер під'єднаний до порту lpt1. Таким чином, виведення будь-якої програми текстового режиму можна перенаправити на будь-який пристрій, що підтримує потокове введення інформації або файл, за винятком тих програм, які в текстовому режимі використовують для виведення інформації безпосередню модифікацію відеопам'яті та інші нестандартні, з точки зору класичного C, можливості.

Аналогічно можна перенаправити та введення програми. Команда більше операційних систем Microsoft використовується для буферизації виведення команд, що виводять інформації більше, ніж уміщається на екран. Але цю команду можна використовувати і для ілюстрації перенаправлення введення:

C:>more Hello, World!

У файлі file знаходився рядок "Hello, World!", який був спрямований на екран.

Так само, за допомогою перенаправлення введення-виводу можна створювати та читати множинні потоки даних:

C:>echo string1 > file:fork1

Записом file:fork1 визначається у файлі file потік з ім'ям fork1 (оскільки він ще не існує, створюється новий з цим ім'ям) і перенаправляємо в нього висновок команди echo. При цьому розмір файлу при перегляді його властивостей не змінюється, та стандартними засобами Windows NT, не знаючи імені потоку його існування, не можна визначити. Але, знаючи його ім'я, можна за допомогою команди more визначити і його вміст:

Таким чином, можна створювати та читати вміст потоків даних файлу. Кількість потоків, створюваних в одному файлі обмежена лише наявністю вільного просторуна диску. Аналогічно можна створювати потоки даних у каталогах, але для перегляду вмісту потоку доведеться застосувати інший засіб виведення потоку на екран, оскільки команда more при цьому видає таку помилку:

Якщо нічого потрібного знайти не вдалося, то можна написати в будь-якому компіляторі C++ таку програму:

while (cin.get(ch)) cout.put(ch);

Скомпонувати цю програму краще як консольне додаток Win32, і використовувати як засіб для вивчення потоків каталогів.

Windows NT не надає стандартних засобівдля отримання інформації про численні потоки даних. Але що робити, якщо все ж таки необхідна така інформація? У цьому випадку можна скористатися програмою streams Марка Руссиновича (Mark Russinovich), яку разом із вихідним кодомможна взяти на www.sysinternals.com. У цій програмі для отримання інформації про численні потоки даних використовуються недокументовані функції Windows NT. Ось інформація, отримана за допомогою програми streams про файл file:

NTFS Streams Enumerator v1.0

Systems Internals - http://www.sysinternals.com

Тут можна бачити як назву потоку даних, так і його розмір у байтах (додаткові 3 символи це пробіл після символу “>”, повернення каретки та переклад рядка, що додаються командою echo). На жаль, streams не дозволяє визначити множинні потоки даних у каталогах.

Навіщо можна застосовувати множинні потоки даних? Крім застосування, знайденого для них фірмою Apple, можна сказати про найпростіший засіб для приховування інформації, наприклад, для запам'ятовування дати встановлення програми shareware. На зорі технології OLE Microsoft передбачала використовувати потоки даних для зберігання інформації про впроваджені об'єкти, але мабуть забезпечити потоки даних на FAT виявилося складніше, ніж створити довгі іменафайлів та від цієї ідеї довелося відмовитися. Створення "файлу ресурсів" для скрипту зі зберіганням у ньому всіх написів, що виводяться різними мовами, також може бути цікавою можливість застосування потоків. Крім наведених, існує ще безліч цікавих застосувань для множинних потоків даних, щоб не оминати їх своєю увагою.

Жорсткі посилання. Користувачам різних клонів UNIX добре знайоме це поняття. На відміну від файлової системи FAT, в якій прийнято, що у кожного файлу може бути тільки одне ім'я, UNIX такого обмеження немає – кожен файл може мати кілька імен і його дані не можуть бути видалені, поки лічильник імен файлу не дорівнює 0. У UNIX існують також символьні посилання – аналог ярликів (shortcut) у Windows, але стежать за переміщенням об'єкта, який вони посилаються.

Windows NT обмежено відповідає стандарту POSIX (Portable Operating System Interface for Computing Environments). Один із прикладів обмеженості – підтримка жорстких посилань та відсутність підтримки символьних. Очевидно, було вирішено, що ярлики є гідним аналогом символьних посилань.

У NTFS жорсткі посилання організовані аналогічно множинним потокам даних: якщо файл має кілька потоків з даними, чому може бути кількох потоків з іменами? Декілька імен файлу можуть знаходитися в різних каталогах, але тільки в межах одного розділу.

Для виготовлення жорсткого посилання необхідна програма POSIX Windows NT. Така програма разом із вихідними текстами міститься на компакт-диску “Ресурси Windows NT”. За аналогією з UNIX ця програма називається ln. Синтаксис цієї команди:

C:>Ln file hardlink1

За допомогою цієї команди ми створюємо для файлу file друге ім'я або жорстке посилання hardlink1 і, змінюючи вміст файлу file, можна змінити вміст hardlink1, точніше це той самий файл, але з двома іменами. Аналогічно можна змінювати інші атрибути файлу. Кількість імен файлу не обмежена, але при копіюванні імені файлу посилання розривається і створюється ще один файл. Існує можливість створення посилання в іншому каталозі:

C:>Ln file ../temp/hardlink2

І тут необхідно вказувати не абсолютне, а відносне ім'я каталогу.

Застосування для жорстких посилань можна знайти не менше, ніж для множинних потоків даних. Наприклад, створювати жорсткі посилання для бібліотек dll, щоб убезпечити свою програму від випадкового видалення необхідного файлу. Інші можливі застосування жорстких посилань краще шукати в літературі, що відноситься до UNIX. І звичайно ж, застосування жорсткихпосилань можна комбінувати з описаними вище множинними потоками даних.

Підтримка альтернативних потоків даних (AltDS) була додана в NTFS для сумісності з файловою системою HFS Macintosh, яка використовувала потік ресурсів для зберігання іконок та іншої інформації про файл. Використання AltDS приховано від користувача та не доступне звичайними засобами. Провідник та інші програми працюють зі стандартним потоком та не можуть читати дані з альтернативних. За допомогою AltDS можна легко приховувати дані, які не можуть бути знайдені стандартними перевірками системи. Ця стаття дасть основну інформацію про роботу та визначення AltDS.

Створення AltDS

Створити AltDS дуже легко. Для цього скористаємося командним рядком. Спочатку створимо базовий файл, до якого будемо прикріплювати наші потоки.
C:\>echo Just a plan text file>sample.txt

C:\>type sample.txt
Just a plan text file


Далі ми скористаємося двокрапкою в якості оператора, щоб вказати на те, що будемо використовувати AltDS:
C:\\>echo You can't see me>sample.txt:secret.txt

Для перегляду вмісту можна використовувати такі команди:
C:\ more< sample.txt:secret.txt

або
C:\ notepad sample.txt:secret.txt

Якщо все працює добре то побачите текст: You can"t see me, а при відкритті з провідника даний текст видно не буде. Також AltDS можна прикріпити не тільки до файлу, але і до папки. або текст:
C:\>md stuff
C:\>cd stuff
C:\stuff>echo Hide stuff in stuff>:hide.txt
C:\stuff>dir
Volume in drive C не має label.
Volume Serial Number is 40CC-B506Directory of C:\stuff
09/28/2004 10:19 AM .
09/28/2004 10:19 AM

0 File(s) 0 bytes2 Dir(s) 12,253,208,576 bytes free
C:\stuff>notepad:hide.txt

Тепер ви знаєте, як блокнотом переглянути та відредагувати прикріплений AltDS, а також як прикріплювати його до файлів та папок.

Приховування та запуск програм

Приховати програми, використовуючи AltDS так само легко, як і тестові файли. Для початку знову створимо базовий файл:

Далі помістимо наш додаток у потік, для прикладу я використав notepad.exe:
C:\WINDOWS>type notepad.exe>test.txt:note.exe

Тепер переконаємося, що в нашому файлі все також текст:
C:\WINDOWS>type test.txt
Test

А тепер найцікавіше, запустимо наш захований додаток:
C:\WINDOWS>start .\test.txt:note.exe
C:\WINDOWS>

Так як ця стаття є не повним перекладом взятої статті, то оформлено як простий топік. Додаткові прийоми можна знайти за вказаним посиланням.

UPD:

Утиліти по роботі з AltDS (список взятий із статті за посиланням вище):

LADS - List Alternate Data Streams by Frank Heyne
www.heysoft.de/Frames/f_sw_la_en.htm

Streams.exe від SysInternals.

ІТ-директори витрачають чимало часу та ресурсів на проекти, пов'язані із системами аналітичної обробки інформації з продажу та інших стандартних бізнес-даних. При цьому для керівників створюються інформаційні панелі, що відображають показники результативності компанії та допомагають будувати прогнози на майбутнє. Такі системи приносять чималу користь бізнесу, але можливості, що відкриваються завдяки їм, – це лише мала частина того, що можна зробити з доступними організації даними, упевнений Крішна Натан, ІТ-директор компанії S&P Global (раніше McGraw Hill Financial), що займається веденням кредитних. рейтингів, а також надає консалтингові та аналітичні послуги для фондового ринку. Під керівництвом Натана спроектована та впроваджена нова загальнокорпоративна система обробки даних, втілюється в життя стратегія, спрямована на прискорення зростання бізнесу та створення нових пропозицій для замовників.

У деяких компаніях починають збирати додаткові дані – їх називають альтернативними, нетрадиційними чи ортогональними. Поки що це новий напрямок, але ІТ-директорам варто знайомитись із відповідними технологіями вже сьогодні. Адже незабаром альтернативні дані стануть обов'язковим інструментом багатьох компаній.

Однак не поспішайте наймати на роботу чергових спеціалістів. Давайте розберемося, про що, власне, йдеться.

Що таке «альтернативні дані»

Натан дає таке визначення альтернативних даних: це дані, які надходять з нетрадиційних джерел, і їх аналіз дозволяє отримати корисні відомості на додаток до тих, що ви отримуєте звичайним чином.

Допустимо, у вас Торгова мережаі ви збираєтеся відкрити новий магазин в іншому місті. Зазвичай подібне рішенняґрунтується на результативності ваших магазинів у конкретному місті та інших мегаполісах.

Джерелом альтернативних даних тут можуть стати знімки паркувань при супермаркетах, зроблені протягом кількох місяців, – рівні заповнюваності стоянок можна корелювати з обсягами продажу. А також інформація про пішохідний рух у тому районі, де планується відкрити магазин. Об'єднавши отримані відомості, можна дізнатися про щось нове, що допоможе вам у вашому бізнесі.

S&P Global також постачає аналітичні послуги для товарних бірж, і ІТ-директору доводиться постійно думати, як за допомогою альтернативних джерелданих запропонувати замовникам додаткові відомості, як об'єднувати різні відомості, щоб дати клієнтам інформацію, яку вони більше ніде отримати не змогли.

Скажімо, S&P Global має відомості про те, що нафтопереробний завод у Роттердамі може виробляти 100 тис. барелів нафтопродуктів на день. Але через дефіцит поставок переробляє приблизно 70 тис. барелів, тобто доступні вільні потужності ще на 30 тис. Що станеться після того, як у порт увійшов нафтовий танкер із 30 тис. барелів? «Якщо звіт про доступну потужність заводу – тижневої давності, то ми не знатимемо, що щойно відбулося розвантаження нафти, – пояснює Натан. – Тобто традиційні дані застаріли. І тут стане в нагоді таке джерело альтернативних даних, як супутникова зйомка. Якщо проаналізуємо знімки із супутника поряд з іншими джерелами, то отримаємо більш точну картину запасів та виробництва майже в реальному часі».

Альтернативні дані та ІТ-директор

Навіть якщо у вас немає готових сценаріїв застосування, ознайомтеся з новими технологіями. Займіться плануванням систем, які дозволять комбінувати багато джерел даних для аналізу. Навчіться керувати ланцюжком доставки даних, захищати його, враховувати права використання. І наймайте необхідний персонал – потрібні досвідчені вчені за даними, які вміють аналізувати їх та отримувати корисну інформацію.

Для швидкого запускупроекту в галузі альтернативних даних можна скористатися вже готовим рішенням. Так вчинили у S&P Global, коли Platts, дочірнє підприємство компанії, придбало cFlow – інструментарій для інтерпретації супутникової зйомки. CFlow пропонує засоби наочного подання даних, що дозволяють стежити за змінами торгових потоків за маршрутами прямування суден, надає відомості про обсяг та характер вантажу танкерів.

Переконуйте керівництво компанії в тому, що настав час інвестувати в альтернативні дані – у покупку наявних рішень або створення власних. Якісь із ваших проектів у галузі альтернативних даних принесуть плоди, але багато хто не спрацює. А якщо альтернативні дані принесуть дійсно цінні відомості, користуйтеся цим, щоб отримувати кошти на нові проекти.

- Martha Heller. What is 'alternative data' and how can you use it? CIO. JAN 3, 2017

 

 

Це цікаво: