1
00:00:00,000 --> 00:00:14,700
Всем привет! Меня зовут Илья Кэйс Исаковский. И сегодня я буду рассказать доклад про баги в интернет-экслоре, как вы уже могли заметить.

2
00:00:15,500 --> 00:00:17,960
Я решил его назвать интернет-экслор не забыт.

3
00:00:19,440 --> 00:00:24,780
Вкратце о себе. Я клиент сайта Phil. Очень люблю клиент сайта баги.

4
00:00:24,780 --> 00:00:29,460
XSS Slav, всякие там Allerd-1, Allerd-Document-буки, это все мое.

5
00:00:30,300 --> 00:00:34,640
Я не комплинирую, поэтому баги будут очень странными.

6
00:00:35,240 --> 00:00:38,500
Возможно, даже в какой-то момент покажется, что я натягиваю с собой на глобус,

7
00:00:38,580 --> 00:00:42,400
но на самом деле это дикий клиент-сайт, назовем его так.

8
00:00:44,620 --> 00:00:45,200
О багах.

9
00:00:45,720 --> 00:00:47,140
Ну, начнем по порядку.

10
00:00:47,140 --> 00:00:52,200
Баги будут порядки возрастания от самых стрёмных и некрасивых,

11
00:00:52,200 --> 00:01:02,080
которые показывают всякие непонятные вещи, до сложно обнаруживаемых с точки зрения пользователей.

12
00:01:02,080 --> 00:01:04,920
То есть что-то там происходит, но он не поймешь, что это факт проэкспортировать.

13
00:01:04,920 --> 00:01:12,300
Будет много 10 клик РЦЕ, будет РЦЕ через клик джекинг, это главная тема доклада.

14
00:01:12,300 --> 00:01:18,960
Будет Universal XSS, что после этого время редкость, но техника, которая привела к Universal XSS, супер древняя.

15
00:01:18,960 --> 00:01:29,960
И, что немаловажно, не все баги исправленные, этот доклад можно использовать как гайд для взлома desktop всяких приложений на винде.

16
00:01:29,960 --> 00:01:36,960
Microsoft разрешил публиковать неисправленные аудитории, поэтому все нормально все прилично.

17
00:01:36,960 --> 00:01:45,960
Небольшая предыстория. Года 4 назад я сильно-сильно стал взрываться в desktop приложения, себе почтовые клиенты, всякие.

18
00:01:45,960 --> 00:01:51,960
Ну, в общем, все, что на дистопе на винде. И куда можно пропихнуть как-то XSS или JavaScript.

19
00:01:51,960 --> 00:01:57,960
И в одной из почт у меня, я не могу назвать ее, потому что они там не исправили, короче, как обычно.

20
00:01:57,960 --> 00:02:06,960
В одной из почт я там искал баки и записывал их в заметки. В одной из почт я нашел бак, который мне показался сложно эксплуатированным.

21
00:02:06,960 --> 00:02:13,960
Вообще, моя цель была, это не просто там alert 1 сделать, как бы говоря, а добраться до файлов или до запуска процесса, что-то совсем необычное.

22
00:02:13,960 --> 00:02:22,960
И в одной из почт у меня не получалось ни один из методов выполнить наподобие window open или location, чтобы сферединировать главное окно.

23
00:02:22,960 --> 00:02:32,960
Но встроенный showmodel диалог, который у меня заработал, и более того он мне позволил открыть ссылку со схемой файл, что совершенно необычно для современной рекаузы.

24
00:02:32,960 --> 00:02:40,960
Второй шаг, маленький кусочек кода. Самая главная часть это то, что мы вызываем через window open две URL.

25
00:02:40,960 --> 00:02:45,700
урелки. Первая вообще какая-то поломанная, вторая, то есть минус понятно. И что происходит? Когда

26
00:02:45,700 --> 00:02:50,860
вызываешь первую урелку, Internet Explorer говорит «не, какая-то она сломанная, я не могу ее открыть,

27
00:02:50,860 --> 00:02:56,200
и тебе нужно нажать кнопочку «Ок» и согласиться, что это действительно сломанная урелка». А и после

28
00:02:56,200 --> 00:03:01,120
этого, когда ты нажимаешь «Ок» вот эта урелка, на которую вообще он не должен ходить, становится

29
00:03:01,120 --> 00:03:07,300
доступной, и он может начинать ходить в локальных файл. При этом, если открыть урелки быстро одну за

30
00:03:07,300 --> 00:03:10,800
другой вот эта вот поп-оп-оп-шка сломанная URL не всплывает,

31
00:03:10,800 --> 00:03:14,300
полностью автоматизируется процессом.

32
00:03:14,300 --> 00:03:19,300
Что мы получаем в этих банках?

33
00:03:19,300 --> 00:03:21,800
Мы можем ходить, грубо говоря, с интернета в локальные

34
00:03:21,800 --> 00:03:22,800
файлы.

35
00:03:22,800 --> 00:03:24,800
А что вам это в целом даст?

36
00:03:24,800 --> 00:03:26,800
Даст нам много чего интересного.

37
00:03:26,800 --> 00:03:33,300
В интернет-эксплоре внедрено очень много штук из винды,

38
00:03:33,300 --> 00:03:38,620
Как это сказать? Не из инфраструктуры Виндии, а экосистемы Виндии, вот так называемые.

39
00:03:38,620 --> 00:03:44,300
И для многих, наверное, знакомо такое столкновение security-зоны.

40
00:03:44,300 --> 00:03:47,540
В Индии 5 security-зон, насколько я помню.

41
00:03:47,540 --> 00:03:50,620
Первая — это мой компьютер, вторая — сайты в интернете,

42
00:03:50,620 --> 00:03:55,500
третья — trusted-зона — это когда ты сам добавляешь доверенные сайты,

43
00:03:55,500 --> 00:04:00,300
потом untrusted — это тоже ты сам добавляешь, и, по-моему, просто сайты в интернете.

44
00:04:00,300 --> 00:04:20,760
Помимо этого я обнаружил то, что средняя линия в табличке, localhost и также еще и SMB-шара, это как будто какая-то вообще отдельная security зона, которая ни туда ни туда не относится, потому что она вроде может больше, чем сайт в интернете, но не может столько же, сколько локальных файлов.

45
00:04:20,760 --> 00:04:25,760
Что конкретно вообще могут локальные файлы?

46
00:04:25,760 --> 00:04:27,760
Вернемся к предыдущей.

47
00:04:27,760 --> 00:04:30,760
Сайты в интернете могут запускать такую штучку ActiveX.

48
00:04:30,760 --> 00:04:37,760
Это как JavaScript, но не на максималках, а что-то, наверное, как плагины в JavaScript.

49
00:04:37,760 --> 00:04:43,760
То есть через JavaScript появляется опишечка небольшая и ты можешь обращаться к библиотеке.

50
00:04:43,760 --> 00:04:49,760
И сайтов в интернете очень мало доступных всяких ActiveX объектов.

51
00:04:49,760 --> 00:04:57,140
сайтов на localhost намного больше их доступно и у локальных файлов, когда ты из локального файла запускаешь

52
00:04:57,140 --> 00:05:03,540
какую-то страничку, там доступно максимально много, даже самые небезопасные. И вот как это выглядит.

53
00:05:03,980 --> 00:05:09,760
Это уже вторая часть, то есть до этого я рассказывал, что нашел баг в почтовок клиента, теперь я нашел баг.

54
00:05:10,620 --> 00:05:15,260
А, еще не нашел. В общем, я буду открыть локальный файл, но мне его нужно как-то еще сначала положить

55
00:05:15,260 --> 00:05:16,460
либо положить в него контент.

56
00:05:16,860 --> 00:05:19,020
Так как я рассказывал про Internet Explorer,

57
00:05:19,160 --> 00:05:21,720
самое логичное было попробовать заставить его сохранить,

58
00:05:21,800 --> 00:05:23,500
просто папочка, которая уложилась в какой-то файл.

59
00:05:23,900 --> 00:05:26,900
Но, к сожалению, Internet Explorer автоматически это сделать не умеет.

60
00:05:27,320 --> 00:05:29,000
Он просит подтверждения.

61
00:05:30,100 --> 00:05:31,520
Поэтому этот момент мы пропускаем.

62
00:05:33,740 --> 00:05:35,980
И вот вторая часть бага, когда у меня все сложилось.

63
00:05:35,980 --> 00:05:40,500
Я ломал уже не почтовый клиент, а редактор таблиц, типа Excel-инский.

64
00:05:40,500 --> 00:05:45,500
Воткнул туда JavaScript и у меня всплыл вот такой Windows Security Warning.

65
00:05:45,500 --> 00:05:50,500
Это говорит о том, что действительно ArchiveX объект запустился, он небезопасный,

66
00:05:50,500 --> 00:05:54,500
и для его инициализации пользователь должен согласиться, подтвердить.

67
00:05:58,500 --> 00:06:00,500
Каким образом я этого добился?

68
00:06:00,500 --> 00:06:05,500
Оказывается, Internet Explorer не умеет сам сетать файлы, ему нужно нажимать на кнопочки,

69
00:06:05,500 --> 00:06:09,760
кнопочки, но он может открывать окошко Microsoft Edge через

70
00:06:09,760 --> 00:06:12,820
схему Microsoft Edge двоеточие и дальше просто ссылку на

71
00:06:12,820 --> 00:06:13,820
нужный сайт.

72
00:06:13,820 --> 00:06:16,300
А Microsoft Edge уже в свою очередь может спокойно сохранить

73
00:06:16,300 --> 00:06:18,300
файлы в локальную папочку.

74
00:06:18,300 --> 00:06:21,040
И мы складываем в одно из вторых, получаем полную

75
00:06:21,040 --> 00:06:27,500
цепочку, кладем файл и его запускаем.

76
00:06:27,500 --> 00:06:30,260
Немножко тонкостей про вот эту штуку с сохранением

77
00:06:30,260 --> 00:06:31,260
файлов.

78
00:06:31,260 --> 00:06:34,600
Первый раз, когда я сделал все вместе, цепочку сложил,

79
00:06:34,600 --> 00:06:40,300
я использовал файл localhost. И у меня все окей, все сработало, все спустилось, вот это вот окошечко

80
00:06:40,300 --> 00:06:48,160
VSH в ствол. Когда я уже делал отчет, я делал более реалистичные условия, прописал себе host

81
00:06:48,160 --> 00:06:54,780
attacker.com, заменил на localhost, и при этом у меня уже не спустился небезопасный активный собъект.

82
00:06:55,280 --> 00:07:00,460
Когда я начал павляться, я обнаружил то, что если скачивать файл с localhost, на него не ставится

83
00:07:00,460 --> 00:07:05,460
меточка Mark of the Web, как правило считается, как будто его создали локально, а не откуда искачивали.

84
00:07:07,460 --> 00:07:12,460
Ну и даже не пак, а цепочка номер один. 10 клипк РЦЕ со страшными бобапами.

85
00:07:13,460 --> 00:07:18,460
Логика такая. У нас есть сайт attacker.com, куда пришел пользователь.

86
00:07:18,460 --> 00:07:25,460
Этот сайт открывает либо заранее увезимое приложение, там какой-нибудь u-torent,

87
00:07:25,460 --> 00:07:30,460
U-Torrent, который недавно обнаружили XSS и пытается там с помощью XSS нагрузить и нагрузить.

88
00:07:31,200 --> 00:07:38,640
Либо вот эти два момента можно сложить в один, если ты нашел XSS в каком-то почтовом клиенте,

89
00:07:38,640 --> 00:07:42,940
уже может быть либо localhost, либо сразу файл, как вот здесь.

90
00:07:43,360 --> 00:07:47,700
И немного шаги упрощаются, мы уже сразу попадаем в нужный контекст.

91
00:07:48,160 --> 00:07:52,360
Что здесь? У нас attacker.com открывает XSS на локальном косте,

92
00:07:52,360 --> 00:07:54,960
В следующем случае, XSS на локальном косте открывает

93
00:07:54,960 --> 00:07:59,360
age, сохраняет файл и потом возвращается и redirected

94
00:07:59,360 --> 00:08:02,360
Internet Explorer на этот сохраненный файл.

95
00:08:02,360 --> 00:08:06,360
Вот так это выглядит все вместе.

96
00:08:06,360 --> 00:08:10,360
Открылся age, сохранился файл, redirected, и сейчас

97
00:08:10,360 --> 00:08:11,360
будут всплывающие окошки.

98
00:08:11,360 --> 00:08:14,360
В Internet Explorer два всплывающих окошка, нижняя и верхняя.

99
00:08:14,360 --> 00:08:17,360
Нижняя – это чтобы включить в целом, жалостки, это за

100
00:08:17,360 --> 00:08:19,360
локальный файл, а второй – это уже чтобы запустить

101
00:08:19,360 --> 00:08:20,360
небезопасные блок.

102
00:08:20,360 --> 00:08:25,640
Нижнее окошко всплывающее можно забайпасить, я прям уверен на 95%, вот второе уже в ряд.

103
00:08:28,600 --> 00:08:34,640
Бак номер два. Обузим запуск сторонних процессов.

104
00:08:35,040 --> 00:08:39,460
Как оказалось, я точно не могу утверждать, так как я уже говорил, я не умею компилировать.

105
00:08:40,020 --> 00:08:48,660
Я вот у вас интересуюсь, есть ли у Grand Explorer песочница, и если есть, она почему-то позволяет спокойно запускать сторонние процессы, я ей вообще наблюдаю.

106
00:08:48,660 --> 00:09:09,540
И способ запуска процессов абсолютно тупой. Вот он. Кто HTMate знает, мы просто открываем не локальный файл, а файл с локал-тоста. Вместо этого, чтобы открыться в окне Internet Explorer, он сохраняется во временную папку, запускается процесс not-pad.exe и подтягивает этот файл, открывая-то при себя.

107
00:09:09,540 --> 00:09:20,120
Когда я обнаружил, это чисто случайно, просто там CSS файлик я пытался открыть, когда я обнаружил, что меня спустился в процесс, я написал Pfizer, который просто все экстеншены из Винды у меня перебрал.

108
00:09:20,580 --> 00:09:23,560
Я получил такую небольшую табличку, сзади сидит, плохо видно.

109
00:09:24,420 --> 00:09:25,860
Ну там дальше будет выжимка.

110
00:09:26,320 --> 00:09:27,780
Самое интересное.

111
00:09:28,280 --> 00:09:36,280
Самое важное, что мне больше всего зацепилось, у нас есть группа файлов, которые отвечают за плейлисты.

112
00:09:36,280 --> 00:09:40,000
и они запускают процесс Windows Media Player, который тоже поможет.

113
00:09:41,500 --> 00:09:45,060
С localhost, как я уже показывал, можно запустить просто редиректом,

114
00:09:45,920 --> 00:09:47,800
открытым, тест-вейн-микс.

115
00:09:49,140 --> 00:09:53,080
Но при этом с любого сайта мы можем с помощью ActiveX объекта

116
00:09:53,080 --> 00:09:58,860
запустить библиотеку Windows Media Player и скормить ей также ссылочку на плейлист,

117
00:09:58,860 --> 00:10:01,760
и это будет работать уже не только на localhost, а вообще на любом сайте.

118
00:10:01,760 --> 00:10:20,660
Чем нам интересны плейлисты? А тем, что, так как они обрабатываются уже другой гиблиотекой, у них нет ограничений того, что они могут ходить на ссылочки файл, и мы можем при воспроизведении плейлиста сходить на S&B-шару и ликнуть, чем это и вам пользователи.

119
00:10:20,660 --> 00:10:30,660
Продолжим. Помимо Windows MetaPlayer, там еще было 4 интересных расширения.

120
00:10:30,660 --> 00:10:36,660
XAML, VSTO, Application и XBAR. Они позволяют дотянуться и пощупать немножко dotnet класс.

121
00:10:36,660 --> 00:10:44,660
Самый менее, самый более защищенный, менее небезопасный, наверное, XAML.

122
00:10:44,660 --> 00:10:48,660
Выглядит он вот так. Это просто .xml файлик, который открывается в Internet Explorer.

123
00:10:48,660 --> 00:10:57,480
Я тут не успел разметить, но вкратце у нас тут через

124
00:10:57,480 --> 00:11:02,180
NextSpace инициализируется System Rundime, дальше мы обращаемся

125
00:11:02,180 --> 00:11:07,840
к классу string и вызываем у него всякий concat, index of и

126
00:11:07,840 --> 00:11:08,840
всякое такое.

127
00:11:08,840 --> 00:11:12,060
И вот как это выглядит на domain.explore.

128
00:11:12,060 --> 00:11:14,060
Мы просто открываем, к сожалению, не видно, к самому

129
00:11:14,060 --> 00:11:15,060
файлу.

130
00:11:15,060 --> 00:11:20,060
Первое — это длина, потом concat и потом индекс такого-то символа.

131
00:11:22,560 --> 00:11:26,560
Естественно, я попробовал запускать всякие лип-запасные вещи.

132
00:11:26,560 --> 00:11:30,060
Единственное, что у меня получилось — это просто поп-ап вызвать.

133
00:11:30,060 --> 00:11:36,560
Когда я попробовал DNS-запрос отправить или сделать, грубо говоря, какой-то лик айп-шника хотя бы,

134
00:11:36,560 --> 00:11:42,060
у меня вывалилась system.net permission ошибка, когда я попробовал прочитать файлы

135
00:11:42,060 --> 00:11:45,000
и запускать какие-то процессы вне директории.

136
00:11:45,080 --> 00:11:47,500
Процессы вообще не запускать, не позволяем на файлы,

137
00:11:47,820 --> 00:11:50,620
читается только в корневой директории.

138
00:11:50,700 --> 00:11:53,340
Если выходишь из нее, то, опять же, ошибка permission.

139
00:11:55,180 --> 00:11:57,600
Следующее расширение файлов – VSTO.

140
00:11:58,280 --> 00:12:00,580
Это плагины для офиса.

141
00:12:01,680 --> 00:12:03,360
Самый главный кусочек кода выглядит так.

142
00:12:03,360 --> 00:12:07,980
Там открываешь, как это называется, среду разработки, вставляешь,

143
00:12:08,060 --> 00:12:11,620
там что-то все собирает, и в итоге получается какая-то гигантское полотно.

144
00:12:12,060 --> 00:12:22,060
из непонятных мне XML элементов, которые подписаны в Digital Signature и ссылаются вот здесь вот на манифест и на DLL.

145
00:12:22,060 --> 00:12:30,060
Excel, Addon, DLL. Что будет, если мы откроем такой файлик в Internet Explorer?

146
00:12:30,060 --> 00:12:36,060
Если мы скачиваем файл из интернета и запускаем, обычно у нас вот такое окошко выскакивает.

147
00:12:36,060 --> 00:12:40,060
Это как раз говорит о том, что у файла есть Mac OS Web и его расширение небезопасное.

148
00:12:40,060 --> 00:12:46,060
Но у этой группы файлов такого оповещения нет, у него есть свои собственные встроенные оповещения.

149
00:12:46,060 --> 00:12:54,060
Вот как это выглядит. Запускаем WSTO через RINDEXPLOR. Вот такое оповещение, я сейчас покажу конкретно на что он ругается.

150
00:12:54,060 --> 00:13:00,060
Publisher, какой-то машинакцесс, это видимо то, что я код выполняю. Вот я нажал установить, close можно не называть.

151
00:13:00,060 --> 00:13:06,060
Теперь чтобы наш код запустился, так как мы установили это как плагин к офису, нам нужно открыть просто Excel.

152
00:13:06,060 --> 00:13:11,060
Все, при запуске Excel заполняется код.

153
00:13:11,060 --> 00:13:15,060
Еще раз покажу, тут есть в ходе события стартапа.

154
00:13:15,060 --> 00:13:19,060
Я просто туда дописал, то, что запускай калекулятор при стартапе.

155
00:13:19,060 --> 00:13:22,060
Так, теперь следующее решение, Application.

156
00:13:22,060 --> 00:13:25,060
Это уже Call Online приложение.

157
00:13:25,060 --> 00:13:29,060
Плюс-минус код похожий.

158
00:13:29,060 --> 00:13:32,060
Вот так выглядит, когда его запускаешь.

159
00:13:32,060 --> 00:13:35,060
Вообще, я его запускаю двумя кликом, но можно просто редиректом запускать.

160
00:13:35,060 --> 00:13:39,060
Это так для наглядности.

161
00:13:39,060 --> 00:13:46,060
Ошибки плюс-минус те же самые, но теперь нам не нужно ничего запускать, но сразу запустится после того, как нажимаешь согласится.

162
00:13:48,060 --> 00:13:51,060
Теперь третье.

163
00:13:51,060 --> 00:13:52,060
X-Bug.

164
00:13:52,060 --> 00:13:56,060
Это уже внутри браузерное приложение.

165
00:13:56,060 --> 00:14:00,060
И почему-то здесь в ошибке уже, по-моему, installation у меня доверенность.

166
00:14:00,060 --> 00:14:02,060
Или что-то такое.

167
00:14:02,060 --> 00:14:04,060
Самое главное — бонус.

168
00:14:04,060 --> 00:14:08,060
Всё, а не всё, Xplug Application можно запускать из Microsoft Azure,

169
00:14:08,060 --> 00:14:11,060
не только из древнего нового галлюзатора Linux 4.

170
00:14:11,060 --> 00:14:14,060
Но сейчас он проиграет.

171
00:14:14,060 --> 00:14:17,060
Единственный момент — то, что теперь нам нужно не два клика,

172
00:14:17,060 --> 00:14:21,060
чтобы согласиться по этому обучению, а ещё сверху вот тут вот всплывает.

173
00:14:21,060 --> 00:14:27,060
Оп, вот здесь нужно первый клик сделать, а потом ещё второй по обычному обучению.

174
00:14:27,060 --> 00:14:34,060
Universal.tc через web-архивные.

175
00:14:34,060 --> 00:14:40,380
Для многих, наверное, такой будет знаком формат, как

176
00:14:40,380 --> 00:14:43,240
mhtml, mht.

177
00:14:43,240 --> 00:14:47,060
Если открыть в браузе Ctrl S, такое существование клавиш,

178
00:14:47,060 --> 00:14:50,500
можно выбрать сохранить не как много файлов, сохранить

179
00:14:50,500 --> 00:14:51,500
одним файлом.

180
00:14:51,500 --> 00:14:53,500
Это как раз вот сохранится с таким форматом.

181
00:14:53,500 --> 00:14:57,480
И как работает вообще этот веб-архив?

182
00:14:57,760 --> 00:15:02,140
Так как мы репрезентуем в одном файле много разных файлов,

183
00:15:02,140 --> 00:15:07,200
мы обязаны как-то указать, где до этого находился этот файл.

184
00:15:07,460 --> 00:15:10,720
Как раз за это отвечает у нас контент-локейшн заголовок.

185
00:15:10,960 --> 00:15:14,580
Он показывает, где файл лежал до того, как мы скачали этот архив.

186
00:15:15,440 --> 00:15:21,960
Помимо этого есть еще RFC, где мы можем передать заголовок контент-ид со значением.

187
00:15:21,960 --> 00:15:31,400
и этот заголовок будет использован для того, чтобы какой-то кусочек загрузить в основной файл с помощью URL-ки CID двоеточек.

188
00:15:31,400 --> 00:15:36,320
То есть вот мы передаем Content ID, сейчас покажу на примере, и тест в угловых скобках.

189
00:15:36,540 --> 00:15:40,780
И мы потом используем просто CID двоеточие тест и загружаем файл с вот этим Content ID.

190
00:15:42,500 --> 00:15:49,060
Итак, в целом вот полностью эксплойт, который приводит к выполнению JustLit на одном сайте.

191
00:15:49,060 --> 00:15:54,880
Но что мы должны здесь увидеть? Вот эта стрелочка у нас показывает, как Content ID у нас отображается.

192
00:15:55,500 --> 00:15:57,960
Вот эта стрелочка показывает, как мы открываем этот Content ID.

193
00:15:59,180 --> 00:16:04,700
Content Location у нас перезаписывает. Делает так, что как будто бы файл мы скачали с MSN.com.

194
00:16:05,220 --> 00:16:08,940
И потом через относительные пути там ходят и пытаются уже выполнять скрипты.

195
00:16:11,740 --> 00:16:14,700
Как это выглядит? Точно так же в целом, как и первый баг.

196
00:16:14,700 --> 00:16:21,520
Только теперь нам нужно кликнуть еще раз, потому что Edge не может автоматически скачать MHD, он считает это очень безопасным.

197
00:16:21,800 --> 00:16:23,200
Я думаю, тоже как-то можно обыкнуть.

198
00:16:24,200 --> 00:16:28,840
В общем, файл скачался, автоматически садиректировался, у нас cookie.смс.н.дотком показывает.

199
00:16:33,960 --> 00:16:38,560
Четвертый баг, не баг и фичи. Все, что я называю не баг и фичи, это значит, это неисправлено.

200
00:16:38,680 --> 00:16:39,940
То, что баг, это значит исправлено.

201
00:16:39,940 --> 00:16:45,940
Четвертый баг – Abuzium листинг-папок в Индии.

202
00:16:45,940 --> 00:16:46,940
Как это выглядит?

203
00:16:46,940 --> 00:16:52,940
Вот я вывел три окошка с айфреймами, они вывелили название файлов, папок и все дела.

204
00:16:52,940 --> 00:16:59,940
По сути, вот этот функционал полностью эмулирует функционал проводника Explorer XZ.

205
00:16:59,940 --> 00:17:04,940
И также работает нажатие правой кнопки мыши, скопировать, переименовать.

206
00:17:04,940 --> 00:17:06,940
Также работает запуск двойным кликом.

207
00:17:06,940 --> 00:17:10,940
кликом. И что самое главное, мы можем эти фреймы делать

208
00:17:10,940 --> 00:17:13,940
маленькими, делать невидимыми, укладывать друг друга, и

209
00:17:13,940 --> 00:17:16,940
это приводит как раз к крикджекинге. К крикджекинг

210
00:17:16,940 --> 00:17:20,940
атаке интересного. Что у нас получается? Все точно

211
00:17:20,940 --> 00:17:26,940
так же. attacker.com открывает localhost.xss. localhost.xss сохраняет

212
00:17:26,940 --> 00:17:29,940
zip-архив теперь уже. В zip-архиве у нас лежит html-файл, который

213
00:17:29,940 --> 00:17:32,940
мы используем как подсюш, чтобы она открыла нужное

214
00:17:32,940 --> 00:17:36,940
И рядом еще с HTML файлом у нас лежит Exesnik.

215
00:17:36,940 --> 00:17:38,540
Так как мы его качаем с localhost,

216
00:17:38,540 --> 00:17:42,940
MarpleZweb не ставится и мы можем из этого zip-архива автоматически запустить Exesnik.

217
00:17:42,940 --> 00:17:46,940
Ну не автоматически, а вайденник. Вот так это выглядит.

218
00:17:48,940 --> 00:17:51,440
У нас дробуется HTML, дробуется zip-архив.

219
00:17:51,440 --> 00:17:54,940
Две HTML. Нам нужно цепочку сделать, чтобы красиво это было.

220
00:17:54,940 --> 00:17:58,940
Средиректива. И теперь у нас всегда под курсором бегает квадратик.

221
00:17:58,940 --> 00:18:00,940
Вот видно на черное ножи.

222
00:18:00,940 --> 00:18:07,940
Если два раза кликнуть по квадратику, у нас без каких-либо оповещений, без вот этих вот соглашений, просто сразу же запускается будет куда-то.

223
00:18:07,940 --> 00:18:13,940
Я поковырял немножко это место и попытался его апгрейдить.

224
00:18:13,940 --> 00:18:18,940
Как я это сделал? Я просто открыл исходный код страницы и увидел то, что обычно вот здесь вот в вайфрейме.

225
00:18:18,940 --> 00:18:23,940
Исходный код страницы, который ты открыл, а у меня здесь вообще ActiveX объект какой-то загрузился.

226
00:18:23,940 --> 00:18:29,940
Я попробовал редактировать эту дону. Видно там ProGT Shell Explorer 2 и Class IT тоже я указал отдельно.

227
00:18:29,940 --> 00:18:38,500
Я попробовал провалиться внутрь этого объекта, нажал это «Редактировать», и он у меня вывалил список всех своих параметров.

228
00:18:39,220 --> 00:18:45,300
Самый главный, за который у меня зацепился взгляд, это сингл-клик, который как бы намекает, что мы можем теперь не двумя кликами запускать.

229
00:18:46,260 --> 00:18:54,340
Как это выглядит? Выглядит все в целом точно так же. Нам опять же нужно два клика, потому что первый клик нужно сделать сюда, к сожалению.

230
00:18:54,580 --> 00:18:57,660
Но, как я говорил, скорее всего, это можно обойти. Вот так это выглядит.

231
00:18:59,940 --> 00:19:06,940
Также скачивается пара HTML и zip-рхит

232
00:19:14,940 --> 00:19:19,940
У меня этот виртуалка заглючило видео, мы долго видео записывали

233
00:19:19,940 --> 00:19:31,700
Ну и вот, и нам нужно согласиться сначала здесь, я уже говорил, что это скорее всего можно обойти, и потом еще сделать этим клип куда-нибудь.

234
00:19:33,520 --> 00:19:34,380
Все, пара закручивает.

235
00:19:39,000 --> 00:19:42,720
Следующий пример, но уже совсем необычный.

236
00:19:43,060 --> 00:19:46,680
Помимо запуска с помощью для иных клипов, мы можем перетаскивать файлы друг на друга.

237
00:19:46,680 --> 00:19:56,440
И в этом случае нам уже не нужен localhost как доставка файла, потому что мы можем обходить marclv.

238
00:19:56,440 --> 00:20:06,040
Как это работает? Мы можем создать zip-архив с LNK файлом, ну и LNK файл, это я покажу настройки, которые я использовал.

239
00:20:06,040 --> 00:20:11,040
Указать ему просто запуск командной строки с аргументом gal.gz.

240
00:20:11,040 --> 00:20:18,040
И обычно, если такой файл скачан из интернета, по нажатию на него всплывет это оповещение Маркозова.

241
00:20:18,040 --> 00:20:22,040
Вы действительно хотите запустить файл из интернета, которому мы не доверяем?

242
00:20:22,040 --> 00:20:28,040
Мы же вот это оповещение можем обойти тем самым, что мы будем запускать не двойным кликом,

243
00:20:28,040 --> 00:20:32,040
а перетаскивая любой, совершенно любой файл на вот этот вот ярлык.

244
00:20:32,040 --> 00:20:42,540
А я видео очень ставил, пардон. Только самое завершающее видео.

245
00:20:42,540 --> 00:20:51,040
В общем, первый был так, что мы перетаскиваем просто на NLK, и это из-за того, что мы используем необычный способ запуска, обходит Markov ZV проверку.

246
00:20:51,040 --> 00:20:56,040
Второй способ обойти Markov ZV проверку — это уже не при запуске, а при копировании файлов.

247
00:20:56,040 --> 00:21:02,840
И как я вообще это обнаружил? Изначально я тестировал не все по архивам, а SMB-шар поднял просто и оттуда файлы.

248
00:21:02,840 --> 00:21:05,240
Пытался скопировать, перетащить или что-то такое сделать.

249
00:21:05,240 --> 00:21:11,140
Я обнаружил несколько расширений файлов, которые зарегистрированы в людей как цель для Драгонтропа.

250
00:21:11,140 --> 00:21:13,140
То есть на них нужно перетаскивать что-то.

251
00:21:13,140 --> 00:21:18,740
Первая точка map email. Открывается Outlook и этот файл улетает во вложение в новом письме.

252
00:21:18,740 --> 00:21:20,740
Можно еще нажать, потом отправить.

253
00:21:20,740 --> 00:21:31,120
Особо не интересно. MyDogs.desk.in более-менее интересно, потому что они создают ярлык на перетаскиваемый файл в документах, либо на рабочем столе.

254
00:21:31,120 --> 00:21:35,240
И последнее архивируют файл просто через стройку.

255
00:21:35,240 --> 00:21:40,800
Самое интересное, что мне больше всего заинтересовало, это создать файл на десктопе, потому что это все время перед лицом у пользователя.

256
00:21:40,800 --> 00:21:44,980
В данном случае я опять же делаю все через zip-архив.

257
00:21:44,980 --> 00:21:50,660
И сейчас будет видно как раз то, что вот этот способ нестим рабочий и MarkoZV устанавливается.

258
00:21:50,660 --> 00:21:55,040
Я сейчас объясню, как это делать, чтобы MarkoZV не устанавливался.

259
00:21:55,040 --> 00:21:58,000
Опять же, это можно абсолютно игнорировать, перетаскиваем.

260
00:21:58,000 --> 00:22:01,840
У нас появляется на локальном койте, на рабочем столе ялычок.

261
00:22:01,840 --> 00:22:07,600
Мы по нему пикайка, вот это вот оповещение MarkoZV. Как его обойти?

262
00:22:07,600 --> 00:22:12,160
На этапе вот этого, нам не нужно скачивать теперь zip-архив.

263
00:22:12,160 --> 00:22:15,280
Мы можем открыть smb-sharl, и получается как?

264
00:22:15,280 --> 00:22:18,040
Когда ты качаешь zip-архив, все файлы, вложенные в нем,

265
00:22:18,040 --> 00:22:19,780
наследуют Mark of the Web автоматически.

266
00:22:19,780 --> 00:22:23,260
Когда у тебя файл лежит на шаре, ты по нему кликнул два раза,

267
00:22:23,260 --> 00:22:24,880
он сначала не имеет никакой Mark of the Web.

268
00:22:24,880 --> 00:22:27,820
Ты по нему кликнул, он куда-то улетел во временную папку в винде,

269
00:22:27,820 --> 00:22:31,160
тогда в тот момент установился Mark of the Web и уже запустился.

270
00:22:32,000 --> 00:22:33,960
Если скопировать, то же самое.

271
00:22:33,960 --> 00:22:37,660
Файл улетает, папку куда-то его хотел положить на рабочий стол,

272
00:22:37,660 --> 00:22:40,960
устанавливается Mark of the Web, в этом примере не совсем.

273
00:22:40,960 --> 00:22:43,960
И такое же должно оповещение всплывать.

274
00:22:43,960 --> 00:22:52,560
Однако, если мы берем LNK файл, то есть уже ELLIF, перетаскиваем на DeskLink с SMB-шары,

275
00:22:52,560 --> 00:22:58,060
то из-за того, что у нас необычный способ копирования, он не завершается установкой Mark of the Web.

276
00:22:58,060 --> 00:23:04,560
И поэтому вот это вот оповещение дезапасов, действительно хотите запустить в файл, не показывается в данном случае.

277
00:23:04,560 --> 00:23:10,240
Ну вот как раз я описываю это текст.

278
00:23:10,240 --> 00:23:14,240
На этом все.

279
00:23:14,240 --> 00:23:17,320
Я уверен, что я немножко сумбурно рассказал и какие-то

280
00:23:17,320 --> 00:23:19,320
вопросы могут появиться, поэтому welcome.

281
00:23:19,320 --> 00:23:20,320
А, все?

282
00:23:20,320 --> 00:23:21,320
Вопросы?

283
00:23:21,320 --> 00:23:22,320
Ну, давайте.

284
00:23:22,320 --> 00:23:23,320
А, все?

285
00:23:23,320 --> 00:23:24,320
Вопросы?

286
00:23:24,320 --> 00:23:25,320
Ну, давайте.

287
00:23:25,320 --> 00:23:26,320
А, все?

288
00:23:26,320 --> 00:23:27,320
Вопросы?

289
00:23:27,320 --> 00:23:28,320
Ну, давайте.

290
00:23:28,320 --> 00:23:34,320
А, ну, кисть, когда эксентировали и каусе, а, все,

291
00:23:34,320 --> 00:23:47,040
В итоге там было RCE, но которое требовало, опять же, чтобы на localhost была приложена.

292
00:23:47,040 --> 00:23:49,360
Там сложно было бы эксплуатировать.

293
00:23:49,360 --> 00:23:57,280
Да, там суть в чем. Доставлялось все через Excel файли.

294
00:23:57,280 --> 00:23:59,760
Я в него дописывал HTML код в определенное место.

295
00:23:59,760 --> 00:24:04,520
Когда его открывал через редактор, этот HTML-код добавлялся в страницу, рендерился и запускал уже скрипты.

296
00:24:04,520 --> 00:24:06,580
А, почему он все это появился?

297
00:24:06,580 --> 00:24:11,720
Ну, то есть, Excel-файл как способ доставки, а баг был необычным просмотрщиком Excel-файлом.

298
00:24:11,880 --> 00:24:16,400
Он там, типа, сначала превращал Excel в HTML, потом выводил с помощью Prauders, поэтому там были баки.

299
00:24:17,020 --> 00:24:21,660
Я знаю, что открываете, что там Excel-файл, а что это уже не любой Excel-файл?

300
00:24:23,620 --> 00:24:27,040
Ну, в самом Excel, скорее всего, таких багов не будет уже.

301
00:24:27,040 --> 00:24:36,600
Это уже давным-давно были. Это больше... Опять же, вернемся в начало. Вот этот весь доклад — это как способ ломать всякие desktop-приложения.

302
00:24:36,960 --> 00:24:42,300
А вот, я, кстати, забыл важную мысль. Internet Explorer выбили в 2022 году. Тоже, для кого не секрет.

303
00:24:42,580 --> 00:24:48,500
Но все так же используется в desktop-приложениях в виде веб-браузер-контрол, компонента .NET и VBS.

304
00:24:49,060 --> 00:24:52,680
Тот же самый там BINRAP, который я года 3-4 назад ломал и писал про это.

305
00:24:52,680 --> 00:24:56,480
использует как раз веб-браузер control, одну из трех запусков.

306
00:24:56,800 --> 00:24:59,720
То есть ты запускаешь просто архивчик или запускаешь экзешник, вот он считает.

307
00:25:00,040 --> 00:25:05,280
Три раза прошло, если у тебя не оплачена лицуха, он говорит, давай-ка ты оплачешь лицуху и показывай тебе баннер.

308
00:25:05,280 --> 00:25:10,760
Как раз вот этот баннер, он грузит веб-браузер control со своего сайта и показывает оштеваем баннер.

309
00:25:15,680 --> 00:25:20,280
Мне кажется, следов мало остается.

310
00:25:22,680 --> 00:25:27,680
У тебя, по чуть-чуть, в доклад, нашла борьба с Markvon Zweb.

311
00:25:27,680 --> 00:25:31,680
Борьба за клики, борьба с Markvon Zweb.

312
00:25:31,680 --> 00:25:36,680
Есть достаточно известная техника. Мы скачиваем подписанное приложение.

313
00:25:36,680 --> 00:25:39,680
И рядом, на котором DLF, подбираем DLKJ.

314
00:25:39,680 --> 00:25:41,680
Ну, DLKJ.

315
00:25:41,680 --> 00:25:44,680
Да, мы в майпасе Markvon Zweb.

316
00:25:44,680 --> 00:25:48,680
Надо посмотреть будет, попробовать, прочим это тоже.

317
00:25:48,680 --> 00:25:51,680
Погубли просто OneDrive DLKJ.

318
00:25:51,680 --> 00:25:53,680
А, спасибо.

319
00:25:55,680 --> 00:25:57,680
Говори громче, не слышу.

320
00:25:58,680 --> 00:26:01,680
Сейчас, в ближайшее время, мы выложим на слон стачью полностью.

321
00:26:01,680 --> 00:26:03,680
Покетом болт.

322
00:26:05,680 --> 00:26:08,680
Что, все? Не могу бежать на берегу?

323
00:26:08,680 --> 00:26:10,680
Спасибо, что послушали.

324
00:26:10,680 --> 00:26:12,680
Хорошо, спасибо.

