Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Бул макала Group-IB адистери бир нече жыл мурун өткөргөн абдан ийгиликтүү пентесттин негизинде жазылган: Болливудда тасмага ылайыкташтырылышы мүмкүн болгон окуя болгон. Эми, балким, окурмандын реакциясы: "Ой, дагы бир пиар макала, булар дагы эле көрсөтүлүп жатат, алар кандай жакшы, пентест сатып алууну унутпаңыз." Ооба, бир жагынан, ошондой. Бирок, бул макаланын пайда болушунун дагы бир катар себептери бар. Мен пентестер эмне менен алектенет, бул иш канчалык кызыктуу жана майда-чүйдөсүнө чейин болорун, долбоорлордо кандай күлкүлүү жагдайлар келип чыгышы мүмкүн экенин, эң негизгиси жандуу материалдарды реалдуу мисалдар менен көрсөткүм келди.

Дүйнөдөгү жөнөкөйлүктүн тең салмактуулугун калыбына келтирүү үчүн, бир аздан кийин жакшы болбой калган пентест жөнүндө жазабыз. Биз компаниядагы жакшы иштелип чыккан процесстер бул процесстер бар жана иш жүзүндө иштегендиктен, ал тургай жакшы даярдалган чабуулдардан кантип коргой аларын көрсөтөбүз.

Бул макалада кардар үчүн баары жалпысынан эң сонун болгон, жок дегенде Россия Федерациясындагы рыноктун 95% дан жакшыраак, биздин сезимдерибиз боюнча, бирок бир катар майда нюанстар бар болчу, алар окуялардын узун чынжырын түзгөн, алар биринчи иш боюнча узун отчетко алып келди , андан кийин бул макалага.

Ошентип, попкорнду камдап алалы жана детективдик окуяга кош келиңиз. Сөз - Павел Супрунюк, Group-IB компаниясынын «Аудит жана консалтинг» бөлүмүнүн техникалык менеджери.

1-бөлүк. Почкин доктору

2018 Кардар бар - жогорку технологиялуу IT компаниясы, ал өзү көптөгөн кардарларды тейлейт. Суроого жооп алгысы келет: эч кандай баштапкы билимсиз жана Интернет аркылуу иштеп, Active Directory доменинин администраторунун укуктарын алуу мүмкүнбү? Мен эч кандай социалдык инженерияга кызыкпайм (оо, бирок бекер), алар атайылап ишке тоскоол болгусу келбейт, бирок алар кокусунан болушу мүмкүн - мисалы, кызыктай иштеген серверди кайра жүктөшөт. Кошумча максат - тышкы периметрге каршы мүмкүн болушунча башка чабуул векторлорун аныктоо. Компания мындай сыноолорду үзгүлтүксүз өткөрүп турат, эми жаңы тесттин мөөнөтү келип жетти. Шарттары дээрлик типтүү, адекваттуу, түшүнүктүү. Келиңиз баштайлы.

Кардардын аты бар - ал негизги веб-сайты менен "Компания" болсун www.company.ru. Албетте, кардар башкача деп аталат, бирок бул макалада баары жеке эмес болот.
Мен тармактык чалгындоону жүргүзөм - кардарда кайсы даректер жана домендер катталганын билип, тармак диаграммасын тартыңыз, кызматтар бул даректерге кантип бөлүштүрүлөт. Мен натыйжаны алам: 4000ден ашык тирүү IP даректер. Мен бул тармактардагы домендерди карайм: бактыга жараша, басымдуу көпчүлүгү кардардын кардарлары үчүн арналган тармактар ​​жана биз аларга расмий түрдө кызыкпайбыз. Кардар да ушундай ойдо.

256 дареги бар бир тармак калды, ал үчүн ушул учурга чейин IP даректери боюнча домендерди жана субдомендерди бөлүштүрүү түшүнүгү бар, сканерленген порттор жөнүндө маалымат бар, демек, сиз кызыктуу кызматтарды карап көрө аласыз. Ошол эле учурда, сканерлердин бардык түрлөрү жеткиликтүү IP даректеринде жана веб-сайттарда өзүнчө ишке киргизилет.

Кызматтар көп. Адатта бул пентестер үчүн кубаныч жана тез жеңишти күтүү, анткени кызматтар канчалык көп болсо, чабуул үчүн талаа ошончолук чоң болот жана артефактты табуу ошончолук жеңил болот. Веб-сайттарды тез карап көрсөк, алардын көбү ири глобалдык компаниялардын белгилүү өнүмдөрүнүн веб-интерфейстери болуп саналат, алар бардык көрүнүштөр боюнча аларды кабыл албай турганын айтышат. Алар колдонуучунун атын жана сырсөзүн сурашат, экинчи факторду киргизүү үчүн талааны чайкашат, TLS кардар сертификатын сурашат же Microsoft ADFSге жөнөтүшөт. Айрымдарына Интернеттен кирүүгө болбойт. Кээ бирөөлөр үчүн, албетте, үч айлык үчүн атайын төлөнүүчү кардар болушу керек же кирүү үчүн так URL дарегин билишиңиз керек. Келгиле, белгилүү алсыздыктар үчүн программалык камсыздоонун версияларын “жарып өтүүгө”, веб-жолдордон жашырылган мазмунду жана LinkedIn сыяктуу үчүнчү тараптын кызматтарынан ачыкка чыгып кеткен аккаунттарды издөөгө, ошондой эле алардын жардамы менен сырсөздөрдү табууга аракет кылуу процессинде акырындык менен үмүтсүздүктүн дагы бир жумасын өткөрүп жиберели. өз алдынча жазылган веб-сайттардагы аялуу жерлерди казуу катары — айтмакчы, статистикага ылайык, бул бүгүнкү күндө тышкы чабуулдун эң келечектүү вектору. Мен кийинчерээк атылган кино мылтыгын дароо белгилеп кетем.

Ошентип, биз жүздөгөн кызматтардын ичинен эки сайтты таптык. Бул сайттардын жалпы бир нерсеси бар болчу: эгер сиз домен боюнча кылдат тармак чалгындоо иштерин жүргүзбөсөңүз, бирок ачык портторду издесеңиз же белгилүү IP диапазонун колдонуу менен аялуу сканерин максаттасаңыз, анда бул сайттар сканерлөөдөн качып, жөн эле болбойт. DNS атын билбестен көрүнүп турат. Балким, алар, жок эле дегенде, эртерээк өткөрүп жиберилген жана биздин автоматтык куралдар, алар түздөн-түз ресурска жөнөтүлгөн болсо да, алар менен эч кандай көйгөй тапкан эмес.

Айтмакчы, буга чейин ишке киргизилген сканерлер жалпысынан эмнени тапкан. Эске сала кетейин: кээ бир адамдар үчүн "пентест" "автоматташтырылган сканерлөө" менен барабар. Бирок бул долбоор боюнча сканерлер эч нерсе айткан эмес. Ооба, максимум Орто кемчилик менен көрсөтүлгөн (катуулугу боюнча 3тен 5): кээ бир кызматтарда начар TLS сертификаты же эскирген шифрлөө алгоритмдери жана көпчүлүк сайттарда Clickjacking. Бирок бул сени максатыңа жеткирбейт. Балким, бул жерде сканерлер пайдалуураак болмок, бирок мен сизге эскертип коеюн: кардар өзү мындай программаларды сатып алып, алар менен өзүн сынай алат, ал эми жаман натыйжаларга караганда, ал буга чейин текшерип койгон.

Келгиле, "аномалдуу" сайттарга кайрылалы. Биринчиси стандарттуу эмес даректеги жергиликтүү Wiki сыяктуу нерсе, бирок бул макалада ал wiki.company[.]ru болсун. Ал дароо эле логин менен сырсөздү сурады, бирок браузерде NTLM аркылуу. Колдонуучу үчүн бул колдонуучу атын жана паролду киргизүүнү суранган аскетикалык терезеге окшош. Жана бул жаман практика.

Кичинекей эскертүү. Периметрдик веб-сайттардагы NTLM бир нече себептерден улам начар. Биринчи себеп - Active Directory домендик аталышы ачылган. Биздин мисалда, ал да "тышкы" DNS аты сыяктуу company.ru болуп чыкты. Муну билип туруп, сиз кылдаттык менен зыяндуу нерсени даярдай аласыз, ал кандайдыр бир кумкоргондо эмес, уюмдун домендик машинасында гана аткарылат. Экинчиден, аутентификация түз домен контроллери аркылуу NTLM аркылуу өтөт (сюрприз, туурабы?), "ички" тармак саясатынын бардык өзгөчөлүктөрү менен, анын ичинде сырсөздү киргизүү аракеттеринин санынан ашкан аккаунттарды бөгөттөө. Эгерде чабуулчу логиндерди таап алса, ал аларга сырсөздөрдү киргизип көрөт. Эгер сиз аккаунттардын туура эмес сырсөздөрдү киргизүүсүнө бөгөт коюуга конфигурацияланган болсоңуз, ал иштейт жана эсеп бөгөттөлөт. Үчүнчүдөн, мындай аутентификацияга экинчи факторду кошуу мүмкүн эмес. Эгер окурмандардын бири дагы кантип билсе, мага айтып коюңуз, бул чындап эле кызыктуу. Төртүнчүдөн, хэш чабуулдарына каршы аялуу. ADFS мунун баарынан коргоо үчүн, башка нерселер менен бирге ойлоп табылган.

Microsoft өнүмдөрүнүн бир жаман касиети бар: сиз мындай NTLMди атайын жарыялабасаңыз да, ал демейки боюнча OWA жана Lyncде орнотулат, жок дегенде.

Айтмакчы, бул макаланын автору бир жолу кокусунан бир чоң банктын кызматкерлеринин 1000ге жакын эсебин ушул эле ыкма менен бир сааттын ичинде жаап салып, анан бир аз кубарып кеткен. Банктын IT кызматтары да кубарып кетти, бирок баары жакшы жана адекваттуу аяктады, атүгүл бул көйгөйдү биринчилерден болуп таап, тез жана чечкиндүү оңдогонубуз үчүн бизди макташты.

Экинчи сайтта "албетте, фамилия.company.ru кандайдыр бир" дареги бар болчу. Аны Google аркылуу таптым, 10-беттеги ушуга окшош. Дизайн XNUMX-жылдардын орто ченинде болгон жана кадыр-барктуу адам аны башкы баракчадан карап турган, мындай нерсе:

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Бул жерде мен "Ит жүрөгүнөн" кадрды алдым, бирок мага ишен, ал бүдөмүк окшош, атүгүл түстүү дизайн окшош тондордо болчу. Сайт аталсын preobrazhensky.company.ru.

Бул урологдун жеке сайты болчу. Мен урологдун веб-сайты жогорку технологиялык компаниянын субдоменинде эмне кылып жатканына кызыктым. Google'ду тез изилдеп көрсөк, бул дарыгер биздин кардарыбыздын юридикалык жактарынын биринин тең негиздөөчүсү болгон жана ал тургай уставдык капиталга 1000 рублга жакын салым кошкон. Сайт балким көп жылдар мурун түзүлгөн жана кардардын сервердик ресурстары хостинг катары колдонулган. Сайт көптөн бери актуалдуулугун жоготкон, бирок эмнегедир көпкө иштебей калган.

Алсыздыктарга келсек, веб-сайттын өзү коопсуз болгон. Алдыга карап, мен бул статикалык маалыматтын жыйындысы деп айтам - бөйрөк жана табарсык түрүндөгү иллюстрациялар менен жөнөкөй html баракчалар. Мындай сайтты “сындыруу” пайдасыз.

Бирок астындагы веб-сервер кызыктуураак болчу. HTTP Server башына караганда, ал IIS 6.0 болгон, башкача айтканда, ал операциялык система катары Windows 2003 колдонгон. Сканер мурда бул урологдун веб-сайты, ошол эле веб-сервердеги башка виртуалдык хосттордон айырмаланып, PROPFIND буйругуна жооп берип, WebDAV иштеп жатканын билдирген. Баса, сканер бул маалыматты Info белгиси менен кайтарып берди (сканердин отчетторунун тили менен айтканда, бул эң төмөнкү коркунуч) - мындай нерселер, адатта, жөн эле өткөрүп жиберилет. Бул айкалышта кызыктуу эффект берди, ал Google дагы бир казуудан кийин гана ачыкка чыкты: Shadow Brokers топтому менен байланышкан сейрек кездешүүчү буфердин толуп кетиши, тактап айтканда CVE-2017-7269, буга чейин эле даяр эксплуатацияга ээ болгон. Башкача айтканда, сизде Windows 2003 болсо жана WebDAV IISде иштеп жатса, кыйынчылык жаралат. 2003-жылы өндүрүштө Windows 2018 иштеп жатканына карабастан, өзүнчө бир көйгөй.

Эксплуатация Metasploitте аяктады жана дароо DNS сурамын башкарылуучу кызматка жөнөткөн жүк менен сыналды - Burp Collaborator адатта DNS сурамдарын кармоо үчүн колдонулат. Мени таң калтырганы, ал биринчи жолу иштеди: DNS нокауту алынды. Андан кийин, порт 80 аркылуу backconnect түзүү аракети болду (башкача айтканда, серверден чабуулчуга болгон тармактык байланыш, жабырлануучунун хостунда cmd.exe кирүү мүмкүнчүлүгү бар), бирок андан кийин фиаско болду. Байланыш болбой, үчүнчү жолу сайтты колдонуу аракетинен кийин, бардык кызыктуу сүрөттөр менен бирге биротоло жок болду.

Адатта, андан кийин "кардар, ойгон, биз баарын таштадык" стилиндеги кат келет. Бирок бизге сайттын бизнес-процесстерге эч кандай тиешеси жок экенин жана ал жерде бүт сервер сыяктуу эч кандай себепсиз иштеп жатканын жана бул ресурсту каалагандай колдоно аларыбызды айтышты.
Болжол менен бир күндөн кийин сайт күтүлбөгөн жерден өз алдынча иштей баштады. IIS 6.0 боюнча WebDAVден отургуч куруп, мен демейки жөндөө ар бир 30 саат сайын IIS жумушчу процесстерин кайра баштоо экенин таптым. Башкача айтканда, контролдоо shellcodeдон чыкканда, IIS жумушчу процесси аяктады, андан кийин ал өзүн бир нече жолу өчүрүп, андан кийин 30 саат эс алууга кетти.

tcp менен кайра байланыш биринчи жолу ишке ашпай калгандыктан, мен бул көйгөйдү жабык порт менен байланыштырдым. Башкача айтканда, ал чыгуучу байланыштардын сыртка өтүшүнө жол бербеген кандайдыр бир брандмауэрдин болушун болжолдогон. Мен көптөгөн tcp жана udp порттору аркылуу издеген shellcodes иштете баштадым, эч кандай эффект болгон жок. Metasploit'тен http(лар) аркылуу тескери туташуу жүктөрү иштеген жок - meterpreter/reverse_http(s). Күтүлбөгөн жерден, ошол эле порт 80 менен байланыш түзүлдү, бирок ошол замат токтоп калды. Мен муну дагы эле элестүү IPSтин аракети менен байланыштырдым, ал ченегичтердин кыймылын жактырбайт. 80 портуна таза tcp туташуу өтпөгөнүн, бирок http байланышы өткөндүгүн эске алып, мен http проксиси системада кандайдыр бир жол менен конфигурацияланган деген жыйынтыкка келдим.

Мен дагы DNS аркылуу meterpreter аракет кылдым (рахмат d00kie Сиздин күч-аракетиңиз үчүн, көптөгөн долбоорлорду сактап калды), эң биринчи ийгилигини эске салып, бирок ал стендде да иштеген жок - shellcode бул аялуу үчүн өтө көлөмдүү болгон.

Чындыгында, мындай көрүндү: 3 мүнөттүн ичинде 4-5 чабуул жасоо, андан кийин 30 саат күтүү. Ошентип, үч жума катары менен. Убакытты текке кетирбөө үчүн эстеткич да койдум. Кошумчалай кетсек, сыноо жана өндүрүш чөйрөлөрүнүн жүрүм-турумунда айырмачылыктар бар болчу: бул аялуу үчүн эки окшош эксплойт бар болчу, бири Metasploitтен, экинчиси Shadow Brokers версиясынан өзгөртүлгөн Интернеттен. Ошентип, бир гана Metasploit согушта сыналган, ал эми экинчиси гана отургучта сыналган, бул мүчүлүштүктөрдү оңдоону ого бетер кыйындаткан жана мээни кыйнаган.

Акыр-аягы, http аркылуу берилген серверден exe файлын жүктөп алып, аны максаттуу системада ишке киргизген shellcode натыйжалуу болду. Shellcode ылайыктуу үчүн кичинекей болчу, бирок, жок эле дегенде, ал иштеген. Серверге TCP трафиги такыр жакпагандыктан жана http(лар) meterpreter бар-жогун текшергендиктен, мен эң ылдам жол бул shellcode аркылуу DNS-meterpreter камтылган exe файлын жүктөп алуу деп чечтим.

Бул жерде дагы бир көйгөй пайда болду: exe файлын жүктөөдө жана аракет көрсөткөндөй, кайсынысы болбосун, жүктөө үзгүлтүккө учурады. Дагы бир жолу, менин серверим менен урологдун ортосундагы кандайдыр бир коопсуздук аппараты ичиндеги exe менен http трафигин жактырган жок. "Ыкчам" чечим кабык кодун өзгөртүү болуп көрүндү, ал http трафигин тез арада бүдөмүктөйт, андыктан абстракттуу бинардык маалыматтар exe ордуна өткөрүлүп берилет. Акыр-аягы, чабуул ийгиликтүү болду, башкаруу жука DNS каналы аркылуу кабыл алынды:

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Мен эч нерсе кыла албай турган эң негизги IIS иштөө укуктарым бар экени дароо айкын болду. Бул Metasploit консолунда кандай көрүндү:

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Бардык пентест методологиялары сизге мүмкүнчүлүк алууда укуктарды жогорулатууну сунуш кылат. Мен муну көбүнчө локалдык түрдө кылбайм, анткени эң биринчи кирүү жөн гана тармакка кирүү чекити катары каралат жана ошол эле тармактагы башка машинаны бузуп алуу, адатта, учурдагы хосттогу артыкчылыктарды жогорулатууга караганда оңой жана тезирээк. Бирок бул жерде андай эмес, анткени DNS каналы абдан тар жана трафиктин тазаланышына жол бербейт.

Бул Windows 2003 сервери атактуу MS17-010 кемчилиги үчүн оңдолбогон деп ойлосок, мен localhostтогу meterpreter DNS туннели аркылуу 445/TCP портуна трафикти туннель кылам (ооба, бул да мүмкүн) жана мурда жүктөлгөн exe файлын иштетүүгө аракет кылам. аялуу. Кол салуу иштейт, мен экинчи туташууну алам, бирок СИСТЕМА укуктары менен.

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек

Кызыгы, алар дагы эле серверди MS17-010дон коргоого аракет кылышкан - анын тышкы интерфейсте аялуу тармак кызматтары өчүрүлгөн. Бул тармак аркылуу чабуулдардан коргойт, бирок жергиликтүү хосттон жасалган чабуул иштеди, анткени сиз SMB'ди localhost'та тез эле өчүрө албайсыз.

Андан кийин, жаңы кызыктуу маалыматтар ачылат:

  1. SYSTEM укуктарына ээ болуу менен сиз TCP аркылуу оңой байланыш түзө аласыз. Албетте, түздөн-түз TCP өчүрүү чектелген IIS колдонуучу үчүн катуу көйгөй болуп саналат. Спойлер: IIS колдонуучу трафиги кандайдыр бир жол менен жергиликтүү ISA проксиге эки багытта оролгон. Кантип так иштейт, мен кайра чыгара элекмин.
  2. Мен белгилүү бир "DMZде" турам (жана бул Active Directory домени эмес, WORKGROUP) - бул логикалык угулат. Бирок күтүлгөн жеке (“боз”) IP даректин ордуна, менде мурда кол салган IP дарегим так ошондой эле “ак” IP дарегим бар. Бул компания IPv4 даректөө дүйнөсүндө абдан эски болгондуктан, 128-жылдагы Cisco колдонмолорунда сүрөттөлгөндөй схема боюнча NATсыз 2005 “ак” дарек үчүн DMZ зонасын кармап турууга мүмкүнчүлүгү бар экенин билдирет.

Сервер эски болгондуктан, Mimikatz түздөн-түз эс тутумдан иштөөгө кепилдик берет:

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Мен жергиликтүү администратордун сырсөзүн, TCP аркылуу RDP трафигин туннелдеп, ыңгайлуу иш тактасына кирем. Сервер менен каалаганымды кыла алгандыктан, антивирусту алып салдым жана серверге Интернеттен TCP 80 жана 443 порттору аркылуу гана кирүүгө болоорун, ал эми 443 бош эмес экенин көрдүм. Мен 443 боюнча OpenVPN серверин орнотуп, VPN трафиги үчүн NAT функцияларын кошуп, OpenVPN аркылуу чексиз түрдө DMZ тармагына түз кире алам. Белгилей кетчү нерсе, ISA кээ бир өчүрүлбөгөн IPS функцияларына ээ, менин трафикти порт сканерлөө менен бөгөттөгөн, ал үчүн аны жөнөкөй жана шайкеш RRAS менен алмаштыруу керек болчу. Ошентип, пентестерлер кээде дагы эле ар кандай нерселерди башкарууга туура келет.

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Кунт коюп окурман: "Экинчи сайт жөнүндө эмне айтууга болот - NTLM аутентификациясы бар вики, ал жөнүндө көп жазылган?" Бул тууралуу кийинчерээк.

2-бөлүк. Дагы эле шифрлебей жатасызбы? Анда биз сизге ушул жерден келе жатабыз

Ошентип, DMZ тармак сегментине кирүү мүмкүнчүлүгү бар. Сиз домен администраторуна барышыңыз керек. DMZ сегментиндеги кызматтардын коопсуздугун автоматтык түрдө текшерүү акылга келген биринчи нерсе, айрыкча алардын көбү изилдөө үчүн ачык болгондуктан. Кирүү сыноо учурундагы типтүү сүрөт: тышкы периметр ички кызматтарга караганда жакшыраак корголгон жана чоң инфраструктуранын ичинде кандайдыр бир мүмкүнчүлүккө ээ болгондо, бул домен иштей баштагандыктан гана доменде кеңейтилген укуктарды алуу оңой. куралдар үчүн жеткиликтүү, экинчиден, бир нече миң хосттору бар инфраструктурада ар дайым бир нече олуттуу көйгөйлөр болот.

Мен сканерлерди DMZ аркылуу OpenVPN туннели аркылуу заряддап, күтөм. Мен отчетту ачам - дагы деле олуттуу эч нерсе жок, кыязы, кимдир бирөө менден мурун ушундай ыкмадан өткөн. Кийинки кадам DMZ тармагындагы хосттор кандайча баарлашарын карап чыгуу болуп саналат. Бул үчүн, адегенде кадимки Wiresharkты ишке киргизиңиз жана берүү сурамдарын, биринчи кезекте ARPди угуңуз. ARP пакеттери күнү бою чогултулган. Бул сегментте бир нече шлюздар колдонулат экен. Бул кийинчерээк пайдалуу болот. ARP суроо-талаптары жана жооптору жана порт сканерлөө маалыматтары боюнча маалыматтарды айкалыштыруу менен мен веб жана почта сыяктуу мурда белгилүү болгон кызматтардан тышкары жергиликтүү тармактын ичинен колдонуучу трафигинин чыгуу чекиттерин таптым.

Учурда менде башка системаларга кирүү мүмкүнчүлүгү жок болгондуктан жана корпоративдик кызматтар үчүн бир да аккаунтум жок болгондуктан, ARP Spoofing аркылуу трафиктен жок дегенде кандайдыр бир эсепти алып салуу чечими кабыл алынды.

Каин&Абел урологдун серверинде ишке киргизилген. Белгиленген трафик агымдарын эске алуу менен, ортодогу адам чабуулу үчүн эң келечектүү жуптар тандалып алынган, андан кийин серверди кайра жүктөө үчүн таймер менен 5-10 мүнөткө кыска мөөнөттүү ишке киргизүү аркылуу айрым тармактык трафик алынган. тоңуп калган учурда. Тамашадагыдай эки жаңылык болду:

  1. Жакшы: көптөгөн ишеним грамоталары кармалып, чабуул бүтүндөй иштеди.
  2. Жаман жагы: бардык эсептик маалыматтар кардардын өз кардарларынан болгон. Колдоо кызматтарын көрсөтүүдө кардарлардын адистери трафиктин шифрлөөсү дайыма конфигурацияланбаган кардарлардын кызматтарына туташкан.

Натыйжада, мен долбоордун контекстинде пайдасыз болгон, бирок кол салуу коркунучунун демонстрациясы катары, албетте, кызыктуу болгон көптөгөн ишеним грамоталарына ээ болдум. Ири компаниялардын чек ара роутерлери telnet менен, бардык маалыматтар менен ички CRMге жөнөтүлгөн мүчүлүштүктөрдү оңдоо порттору, локалдык тармактагы Windows XPден RDP түз жетүү жана башка карангылык. Ушундай болуп чыкты MITER матрицасына ылайык жеткирүү чынжырынын компромисси.

Мен дагы трафиктен каттарды чогултуу үчүн күлкүлүү мүмкүнчүлүк таптым, ушул сыяктуу. Бул биздин кардардан анын кардарынын SMTP портуна кайра шифрлөөсүз келген даяр каттын мисалы. Белгилүү бир Андрей өзүнүн фамилиясынан документтерди кайра жөнөтүүнү суранат жана ал булуттуу дискке логин, пароль жана бир жооп катында шилтеме менен жүктөлөт:

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Бул бардык кызматтарды шифрлөө үчүн дагы бир эскертүү. Сиздин маалыматыңызды ким жана качан окуп, колдоно турганы белгисиз - провайдер, башка компаниянын системалык администратору же мындай пентестер. Мен көп адамдар шифрленбеген трафикти жөн эле кармап ала тургандыгы жөнүндө унчукпайм.

Көрүнүп турган ийгиликке карабастан, бул бизди максатка жакындата алган жок. Албетте, көпкө отуруп, баалуу маалыматтарды издөөгө мүмкүн болчу, бирок ал ошол жерде пайда боло тургандыгы чындык эмес, ал эми чабуулдун өзү тармактын бүтүндүгү жагынан өтө кооптуу.

Кызматтарга дагы бир жолу казылгандан кийин, акылга кызыктуу идея келди. Responder деп аталган утилита бар (бул ат менен колдонуунун мисалдарын табуу оңой), ал берүү өтүнүчтөрүн "уулантуу" аркылуу SMB, HTTP, LDAP ж.б. ар кандай жолдор менен, андан кийин аныктыгын текшерүү үчүн туташкандардын бардыгынан сурайт жана аутентификация NTLM аркылуу жана жабырлануучуга ачык режимде өтүшү үчүн аны орнотот. Көбүнчө чабуулчу NetNTLMv2 кол алышууларын ушундай жол менен чогултат жана алардан сөздүктүн жардамы менен колдонуучу доменинин сырсөздөрүн тез калыбына келтирет. Бул жерде мен окшош нерсени кааладым, бирок колдонуучулар "дубалдын артында" отурушту, тагыраагы, алар брандмауэр менен бөлүнүп, Blue Coat прокси кластери аркылуу WEBге кирди.

Эсиңизде болсун, мен Active Directory домендик аталышы "тышкы" доменге дал келгенин, башкача айтканда, company.ru болгонун белгилеген элем? Ошентип, Windows, тагыраак айтканда, Internet Explorer (жана Edge жана Chrome), колдонуучуга сайт кандайдыр бир "Интранет зонасында" жайгашкан деп эсептесе, NTLM аркылуу HTTP'де ачык-айкын аутентификациялоого мүмкүндүк берет. "Интранеттин" белгилеринин бири - "боз" IP дарекке же кыска DNS аталышына, башкача айтканда чекиттерсиз кирүү. Алардын "ак" IP жана DNS аталышы менен preobrazhensky.company.ru сервери болгондуктан жана домен машиналары атын жөнөкөйлөтүлгөн киргизүү үчүн DHCP аркылуу, адатта, Active Directory домен суффисин алышат, алар дарек тилкесине URL жазуусу гана керек болчу. преображенский, Ошентип, алар бузулган урологдун серверине туура жолду табышы үчүн, бул азыр "Интранет" деп аталганын унутпайт. Башкача айтканда, ошол эле учурда мага колдонуучунун NTLM-кол алышуусун анын билбестен берип жатат. Болгону, кардар браузерлерин бул серверге кайрылуунун шашылыш зарылдыгы жөнүндө ойлонууга мажбурлоо гана калды.

Кереметтүү Intercepter-NG утилитасы жардамга келди (рахмат Interceptor). Бул сизге трафикти тез арада өзгөртүүгө мүмкүндүк берди жана Windows 2003'те сонун иштеди. Ал тургай, трафик агымында JavaScript файлдарын гана өзгөртүү үчүн өзүнчө функционалдуу болгон. Кандайдыр бир массалык Cross-Site Scripting пландаштырылган.

Blue Coat проксилери, алар аркылуу колдонуучулар глобалдык WEBге кире алышат, статикалык мазмунду мезгил-мезгили менен кэштеп турушат. Трафикти тосуу менен, алар күнү-түнү иштешип, эң жогорку сааттарда мазмунду көрсөтүүнү тездетүү үчүн көп колдонулган статикти тынымсыз суранып жатышканы айкын болду. Кошумчалай кетсек, BlueCoat аны чыныгы колдонуучудан так айырмалап турган конкреттүү User-Agent болгон.

Javascript даярдалды, ал Intercepter-NG аркылуу, Blue Coat үчүн JS файлдары менен ар бир жооп үчүн түнү бир саат бою ишке ашырылды. Сценарий төмөндөгүлөрдү жасады:

  • Колдонуучу-агент тарабынан учурдагы браузер аныкталган. Бул Internet Explorer, Edge же Chrome болсо, ал иштей берген.
  • Мен баракчанын DOM түзүлмөйүнчө күттүм.
  • Форманын src атрибуту менен DOMга көрүнбөгөн сүрөт киргизилген преображенский:8080/NNNNNNNN.png, мында NNN BlueCoat аны кэштебеши үчүн ыктыярдуу сандар.
  • Инъекция аяктаганын көрсөтүү үчүн глобалдык желектин өзгөрмөсүн коюңуз жана мындан ары сүрөттөрдү киргизүүнүн кереги жок.

Браузер бул сүрөттү жүктөөгө аракет кылды; бузулган сервердин 8080 портунда TCP туннели аны менин ноутбукума күтүп турган, ал жерде ошол эле Responder иштеп жаткан, браузерден NTLM аркылуу кирүүсүн талап кылган.

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Responder журналдарына караганда, адамдар эртең менен жумушка келип, жумушчу станцияларын күйгүзүштү, андан кийин массалык түрдө жана байкалбастан урологдун серверине бара башташты, NTLM кол алышууларын "суутка" унуткан жок. Кол алышуулар күнү бою нөшөрлөп жаап, сырсөздөрдү калыбына келтирүү үчүн ачык ийгиликтүү чабуул үчүн материалды айкын топтоду. Responder журналдары ушундай көрүндү:

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керекКолдонуучулардын урологдун серверине массалык жашыруун баруусу

Сиз бул окуянын баары “баары жакшы болчу, бирок андан кийин жаңжал болду, андан кийин жеңүү болду, анан баары ийгиликке жетти” деген принципке негизделгенин байкасаңыз керек. Ошентип, бул жерде ызы-чуу болду. Элүү уникалдуу кол алышуунун бири дагы ачыкка чыккан жок. Ал эми бул өлүк процессору бар ноутбукта да, бул NTLMv2 кол алышуу секундасына бир нече жүз миллион аракет ылдамдыгы менен иштетилерин эске алат.

Мен сырсөздү мутациялоо ыкмалары, видеокарта, калың сөздүк менен куралданып, күтүүгө туура келди. Узак убакыттан кийин "Q11111111....1111111q" формасындагы сырсөздөрү бар бир нече аккаунттар ачылды, бул бардык колдонуучулар бир жолу ар кандай символдордон турган өтө узун сырсөздү ойлоп табууга аргасыз болушкан. татаал болуу. Бирок сиз тажрыйбалуу колдонуучуну алдай албайсыз жана ушуну менен ал өзүнүн эстеп калышын жеңилдетти. Жалпысынан 5ке жакын аккаунттар бузулуп, алардын бирөө гана кызматтарга баалуу укуктарга ээ болгон.

3-бөлүк. Роскомнадзор жооп кайтарат

Ошентип, биринчи домен эсептери алынды. Эгер сиз көптөн бери окугандан кийин уктап кете элек болсоңуз, анда мен аныктыгын текшерүүнүн экинчи факторун талап кылбаган кызмат жөнүндө айтканымды эстеп каласыз: бул NTLM аутентификациясы бар вики. Албетте, биринчи кезекте ал жакка кирүү керек болчу. Ички билим базасын казуу тез эле натыйжаларды алып келди:

  • Компаниянын жергиликтүү тармакка кирүү мүмкүнчүлүгү бар домендик эсептерди колдонуу менен аутентификациясы бар WiFi тармагы бар. Учурдагы маалыматтар топтому менен бул чабуулдун жумушчу вектору, бирок сиз бутуңуз менен кеңсеге барып, кардардын кеңсесинин аймагында жайгашкан болушуңуз керек.
  • Мен инструкцияны таптым, ага ылайык... эгер колдонуучу локалдык тармактын ичинде болсо жана өзүнүн доменинин логин менен сырсөзүн ишенимдүү эстеп жүрсө, “экинчи фактордук” аутентификация түзмөгүн өз алдынча каттоого мүмкүндүк берген кызмат бар болчу. Бул учурда, "ичинде" жана "тышкы" бул кызматтын портунун колдонуучуга жеткиликтүүлүгү менен аныкталган. Порт интернеттен жеткиликтүү эмес, бирок DMZ аркылуу жеткиликтүү болгон.

Албетте, телефонумдагы арыз түрүндө бузулган аккаунтка “экинчи фактор” дароо кошулду. Иш-аракет үчүн "жактоо"/"жактырбоо" баскычтары менен телефонго түртүү өтүнүчүн катуу жөнөтө турган же андан ары көз карандысыз кирүү үчүн экранда OTP кодун үнсүз көрсөтө турган программа бар болчу. Анын үстүнө, биринчи ыкма көрсөтмөлөр боюнча жалгыз туура деп эсептелген, бирок OTP ыкмасынан айырмаланып, ал иштеген жок.

"Экинчи фактор" бузулганда, мен Outlook Web Access почтасына жана Citrix Netcaler Gatewayге алыстан кире алдым. Outlook почтасында күтүлбөгөн нерсе болду:

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Бул сейрек кадрдан Роскомнадзор пентестерлерге кантип жардам бергенин көрө аласыз

Бул Telegramдын атактуу "ролл" бөгөттөөсүнөн кийинки алгачкы айлар, миңдеген даректери бар бүтүндөй тармактар ​​кирүү мүмкүнчүлүгүнөн жок болуп кеткен. Эмне үчүн түртүү дароо иштебей калганы жана эмне үчүн менин "жабырлануучум" коңгуроо каккан жок, анткени алар анын аккаунтун ачык сааттарда колдоно башташканы белгилүү болду.

Citrix Netscaler менен тааныш болгон ар бир адам, адатта, колдонуучуга сүрөт интерфейсин гана жеткире тургандай ишке ашырылып, ага үчүнчү тараптын тиркемелерин ишке киргизүү жана маалыматтарды өткөрүп берүү куралдарын бербөөгө аракет кылып, аракеттерди бардык жол менен чектеген деп ойлойт. стандарттык башкаруу кабыктары аркылуу. Менин "жабырлануучум", кесибине байланыштуу, болгону 1С алган:

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
1C интерфейсин бир аз кыдырып чыккандан кийин, ал жерде тышкы иштетүү модулдары бар экенин көрдүм. Аларды интерфейстен жүктөөгө болот жана алар укуктарга жана орнотууларга жараша кардарда же серверде аткарылат.

Мен 1С программист досторумдан сапты кабыл алып, аны аткара турган процессти түзүүнү сурандым. 1С тилинде процессти баштоо ушуга окшош (Интернеттен алынган). 1С тилинин синтаксиси орус тилдүүлөрдү стихиялуулугу менен таң калтырат дегенге кошуласызбы?

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек

Иштетүү эң сонун аткарылды, пентестерлер "кабыг" деп атаган нерсе болуп чыкты - Internet Explorer ал аркылуу ишке киргизилген.

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Буга чейин почта аркылуу аймакка жолдомолорду тапшырууга мүмкүндүк берүүчү системанын дареги табылган. Wi-Fi чабуулунун векторун колдонууга туура келип калса, мен уруксат тапшырдым.

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Интернетте кардардын кеңсесинде дагы деле даамдуу бекер тамактануу бар экени тууралуу кептер бар, бирок мен дагы эле чабуулду алыстан иштеп чыгууну туура көрдүм, ал тынчыраак.

AppLocker Citrix иштеткен тиркеме серверинде жандырылды, бирок аны айланып өтүштү. Ошол эле Meterpreter DNS аркылуу жүктөлүп, ишке киргизилди, анткени http(s) версиялары туташууну каалашкан жок жана мен ал убакта ички прокси дарегин билчү эмесмин. Баса, ушул учурдан тартып тышкы пентест толугу менен ички бирине айланды.

4-бөлүк. Колдонуучулардын админ укуктары начар, макулбу?

Домен колдонуучу сеансын башкарууда пентестердин биринчи милдети - домендеги укуктар жөнүндө бардык маалыматты чогултуу. BloodHound утилитасы бар, ал колдонуучулар, компьютерлер, коопсуздук топтору тууралуу маалыматты автоматтык түрдө домен контролеринен LDAP протоколу аркылуу жана SMB аркылуу - кайсы колдонуучу жакында кайда киргени жана локалдык администратор ким экендиги тууралуу маалыматты жүктөп алууга мүмкүндүк берет.

Домен администраторунун укуктарын тартып алуунун типтүү ыкмасы монотондуу аракеттердин цикли катары жөнөкөйлөтүлгөн көрүнөт:

  • Биз мурунтан эле басып алынган домен эсептеринин негизинде жергиликтүү администратор укуктары бар домендик компьютерлерге барабыз.
  • Биз Mimikatzти ишке киргизип, кэштелген сырсөздөрдү, Kerberos билеттерин жана бул системага жакында кирген домен эсептеринин NTLM хэштерин алабыз. Же lsass.exe процессинин эс тутумундагы сүрөттү алып салабыз жана биз тарапта да ушундай кылабыз. Бул демейки жөндөөлөрү бар 2012R2/Windows 8.1ден кичүү Windows менен жакшы иштейт.
  • Биз бузулган аккаунттардын кайсы жерде жергиликтүү администратордун укуктары бар экенин аныктайбыз. Биринчи пунктту кайталайбыз. Кайсы бир этапта биз бүт домен үчүн администратордук укуктарды алабыз.

1С программисттери бул жерде жазгандай, "Циклдын аягы;".

Ошентип, биздин колдонуучу Windows 7 менен бир эле хосттун локалдык администратору болуп чыкты, анын аталышында «VDI» же «Виртуалдык иш столунун инфраструктурасы», жеке виртуалдык машиналары бар. Кыязы, VDI сервисинин дизайнери VDI колдонуучунун жеке операциялык системасы болгондуктан, колдонуучу программалык чөйрөнү каалагандай өзгөртсө дагы, хост дагы эле "кайра жүктөлүшү мүмкүн" дегенди билдирген. Мен ошондой эле жалпысынан идея жакшы деп ойлодум, мен бул жеке VDI хостуна барып, ал жерге уя жасадым:

  • Мен ал жерде OpenVPN кардарын орноттум, ал интернет аркылуу менин сервериме туннель жасады. Кардар домендин аутентификациясы менен ошол эле Blue Coat аркылуу өтүүгө аргасыз болушу керек болчу, бирок OpenVPN муну, алар айткандай, "кутудан тышкары" жасады.
  • VDIге OpenSSH орнотулду. Ооба, чын эле, SSH жок Windows 7 деген эмне?

Бул жандуу көрүнгөн. Мунун баары Citrix жана 1C аркылуу жасалышы керек экенин эскерте кетейин:

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Коңшу компьютерлерге кирүү мүмкүнчүлүгүн илгерилетүү ыкмаларынын бири – жергиликтүү администратордун сырсөздөрүн дал келүү үчүн текшерүү. Бул жерде ийгилик дароо күттү: демейки жергиликтүү администратордун NTLM хэшине (ал күтүлбөгөн жерден Администратор деп аталды) кошуна VDI хостторуна хэш чабуулу аркылуу жакындады, алардын ичинен бир нече жүздөгөн. Албетте, чабуул аларга дароо тийди.

Бул жерде VDI администраторлору эки жолу бутуна атып кетишкен:

  • Биринчи жолу VDI машиналары LAPSтин астына алынбаганда, VDIге массалык түрдө жайгаштырылган сүрөттөн ошол эле жергиликтүү администратордун сырсөзүн сактап калган.
  • Демейки администратор - бул хэш чабуулдарына дуушар болгон жападан жалгыз жергиликтүү каттоо эсеби. Ошол эле сырсөз менен да, татаал кокус сырсөз менен экинчи локалдык администратор эсебин түзүү жана демейки сырсөздү бөгөттөө аркылуу массалык компромисске жол бербөөгө болот.

Эмне үчүн ошол Windowsдо SSH кызматы? Абдан жөнөкөй: азыр OpenSSH сервери колдонуучунун ишине тоскоолдук кылбастан ыңгайлуу интерактивдүү буйрук кабыгын гана камсыз кылбастан, ошондой эле VDI боюнча socks5 проксисин да берди. Бул байпак аркылуу мен SMB аркылуу туташтым жана ушул жүздөгөн VDI машиналарынан кэштелген эсептерди чогултуп, андан кийин BloodHound графиктеринде аларды колдонуу менен домен администраторуна жол издедим. Менин карамагымда жүздөгөн хосттор менен мен бул жолду бат эле таптым. Домен администраторунун укуктары алынды.

Мына ушундай издөөнү көрсөткөн Интернеттен сүрөт. Туташуулар администратордун ким экенин жана ким кайда киргенин көрсөтөт.

Бир жолу пентест, же Урологдун жана Роскомнадзордун жардамы менен баарын кантип бузуу керек
Баса, долбоордун башталышынан берки шартты эстеңиз - "социалдык инженерияны колдонбоңуз". Ошентип, мен дагы эле баналдык фишингди колдонууга мүмкүн болсо, өзгөчө эффекттери бар Болливуддун бардыгы канчалык кыйылып калат деп ойлонууну сунуштайм. Бирок жеке мен үчүн мунун баарын жасоо абдан кызыктуу болду. Муну окуу сизге жакты деп үмүттөнөм. Албетте, ар бир долбоор ушунчалык кызыктуу көрүнбөйт, бирок бүтүндөй алганда иш абдан татаал жана анын токтоп калышына жол бербейт.

Балким, кимдир бирөө суроо пайда болот: кантип коргоо керек? Ал тургай, бул макалада Windows администраторлору билбеген көптөгөн ыкмалар сүрөттөлөт. Бирок, мен аларга маалыматтык коопсуздук чараларынын жана принциптеринин көз карашынан кароону сунуш кылам:

  • эскирген программалык камсыздоону колдонбоңуз (башында Windows 2003 эсиңиздеби?)
  • керексиз системаларды күйгүзбөңүз (эмне үчүн урологдун сайты бар эле?)
  • Колдонуучунун сырсөздөрүн өзүңүз текшериңиз (антпесе, жоокерлер... пентестер муну жасайт)
  • ар кандай аккаунттар үчүн бирдей сырсөздөр жок (VDI компромисси)
  • жана башка

Албетте, муну ишке ашыруу абдан кыйын, бирок кийинки макалада бул толук мүмкүн экенин иш жүзүндө көрсөтөбүз.

Source: www.habr.com

Комментарий кошуу