Практика Shadowing: Firefox and Tor hit with 9.8 critical level exploit - Изучайте разговорный английский по видео

Создание урока...
1
Last week, we talked about a major exploit discovered in the Chromium-based Arc browser, and all the smart people in the comments were like, thank god I use Firefox.
2
Unfortunately, the turns have tabled, and now another 9.8 critical vulnerability has crashed into a second browser, this time Firefox.
3
And this time, it's been actively exploited in the wild.
4
Now, before you go in the comments and say, thank god I use Tor, it even affects everybody out there doing totally not illegal stuff on the Tor browser, which itself is Firefox-based.
5
This time, though, it wasn't a silly mistake involving a misconfigured Firebase security rule, but rather a used-after-free flaw on their implementation of the CSS animation timeline property.
6
They left a pointer dangling, which is far more difficult to detect and audit, and in this case could be used by bad guys to take full control of your browser with remote code execution.
7
If you're running one of these Firefox versions, you're probably already dead, but if not, you'll want to update immediately.
8
In today's video, you'll learn all about the interesting and terrifying world of use-after-free exploits.
9
It is October 15th, 2024, and you're watching the Code Report.
10
Before we get started, though, I have some other bad news for internet browser users, specifically those on Chrome using uBlock Origin, or any other ad blocker for that matter.
11
We all knew this day was coming, but shots were fired yesterday when this ominous message appeared on the plugin's install page, warning users that uBlock's execution date is drawing near.
12
Now, this is all part of a grand conspiracy to get you to watch ads and be happy, and Google is achieving that by updating the manifest for plugins from version 2 to version 3,
13
which eliminates the web request API where plugins can see all the incoming network requests
14
so they can block all the garbage from known ad servers.
15
I made a video on this a while ago if you want all the details, but now let's get back to Firefox.
16
Slovakian company ESET has been credited with discovering and reporting the vulnerability.
17
Where an attacker is able to achieve code execution by exploiting a use after free flaw in the CSS animation timeline.
18
I use the animation timeline all the time to create scroll animations on websites that nobody asked for, and never would have expected it to be an attack vector.
19
But to understand why this is so bad, we need to understand what use after free actually means.
20
Exploits like this have affected all the other browsers, including Chrome and Safari, and useAfterFree was even responsible for the iOS jailbreak of 2019.
21
The Firefox browser is free and open source, but you won't find it on GitHub.
22
Its code is actually self-hosted and uses Mercurial for version control.
23
It's primarily written in C++, although more and more of its code is now being written in Rust, a language that was created by a software engineer at Mozilla.
24
Firefox itself contains over 30 million lines of code, because building a browser is extremely complex.
25
At a high level, here's how a use-after-free flaw could be introduced.
26
In the C code, let's imagine we need to allocate some memory for a value.
27
To achieve that, we create a pointer and then use malloc to allocate memory for it.
28
From there we can assign a value to it and use it in our program to do something useful, like in the case of Firefox, render an animation.
29
At some later point, when we no longer need that memory, we'll want to deallocate it with free.
30
But now we have a problem called a dangling pointer.
31
The memory is free, but the pointer itself still exists and is now being used in our code with undefined behavior.
32
If an attacker can figure out how to get some malicious code into that memory, it can cause the program to crash, or even worse, remote code execution.
33
Now, this could be easily fixed by setting the pointer to null or a different object, but in the case of Firefox, the issue is likely a lot more complex and above my pay grade.
34
It's still being analyzed, so there's not a ton of detail, but Mozilla stated that they have had reports of the vulnerability being exploited in the wild.
35
The good news, though, is that it's completely fixed, and it doesn't appear anything catastrophic has happened.
36
In addition, if you're using the anonymous Tor browser, an attacker could take control of your browser, but probably not totally de-anonymize you, assuming you're on Tails OS,
37
which recently merged with the Tor browser as one project.
38
Now, another browser that was affected by all this is Zen, which is an awesome open source project based on Firefox.
39
They quickly update it to the fixed version, but it just goes to show how one little flaw can affect a lot of downstream projects.
40
But if your goal is to write robust, bulletproof code, you'll need to start with computer science fundamentals.
41
And you can start doing that today for free thanks to this video's sponsor, Brilliant.
42
Their quick, rewarding, interactive lessons will help you build a foundation for problem solving that every software engineer needs to have.
43
Brilliant is where you learn by doing, with thousands of interactive lessons in math, data analysis, programming, and AI.
44
When you make their Python course a habit with just a few minutes of effort each day, you'll quickly develop the skills needed to build world-changing software.
45
And you can do it anywhere, even from your phone.
46
To try everything Brilliant has to offer for free for 30 days, visit brilliant.org slash fireship or scan this QR code for 20% off their premium annual subscription.
47
This has been the Code Report, thanks for watching, and I will see you in the next one.

Лексика и советы по произношению к этому уроку

Этот урок разговорной практики уровня B2 построен на видео «Firefox and Tor hit with 9.8 critical level exploit». Чаще всего повторяются слова: code, browser, Firefox, pointer, animation. В этом видео 47 предложений и 991 слов для шедоуинга. Речь длится 4:27. Говорящий говорит быстро, около 223 слов в минуту, поэтому звуки часто сливаются и сокращаются. Только 80% слов входят в 3000 самых частых слов английского языка, поэтому лексика сложная.

Ключевая лексика этого видео

Самые сложные слова из видео (15), с произношением и значением:

СловоПроизношениеЗначение
exploit существительное/ˈɛksplɔɪt/по́двиг, сверше́ние
pointer существительное/ˈpɔɪn.təɹ/ука́зка
animation существительное/ˌæn.ɪˈmeɪ.ʃən/оживле́ние, одушевле́ние
flaw существительное/flɔ/тре́щина, щель
attacker существительное/əˈtækɚ/напада́ющий, атаку́ющий
vulnerability существительное/ˌvʌln(ə)ɹəˈbɪlɪti/уязви́мость, рани́мость
timeline существительное/ˈtaɪmˌlaɪn/временна́я шкала́, календа́рный гра́фик
allocate глагол/ˈæl.ə.keɪt/выделя́ть, вы́делить
dangle глагол/ˈdæŋ.ɡəl/висе́ть, болтаться
interactive прилагательное/ˌɪn.tɚˈæk.tɪv/интеракти́вный, взаимоде́йствующий
bulletproof прилагательное/ˈbʊlɪtpɹuf/пуленепробива́емый
jailbreak существительное/ˈd͡ʒeɪlˌbɹeɪk/побег
ominous прилагательное/ˈɑmɪnəs/предвеща́ющий
terrify глагол/ˈtɛɹɪfaɪ/ужаса́ть, ужасну́ть
undefined прилагательноенеопределённый

Фразовые глаголы, которые вы услышите

СловоЗначение
figure out глаголразбира́ться, разобра́ться

Грамматика в этом видео

Конструкции, которые говорящий использует чаще всего, с точными словами из видео:

КонструкцияВ видео
Пассивный залог be + причастие прошедшего времени — важно, что происходит, а не кто это делаетwere fired · has been credited · being written
Present Perfect have/has + причастие прошедшего времени — прошлое действие, важное сейчасhave tabled · has been credited · have affected
Придаточные определительные who / which + предложение — уточнение о человеке или предметеdangling, which is · Zen, which is

Произношение, на которое стоит обратить внимание

Говорящий использует 13 сокращённых и редуцированных форм, например you're, you'll, doesn't. Произносите их коротко, так, как слышите.

  • Звуки «sh» и «zh»: animation /ˌæn.ɪˈmeɪ.ʃən/, malicious /məˈlɪʃəs/, subscription /səbˈskɹɪpʃən/
  • Длинные слова — следите за ударением: animation /ˌæn.ɪˈmeɪ.ʃən/, vulnerability /ˌvʌln(ə)ɹəˈbɪlɪti/, interactive /ˌɪn.tɚˈæk.tɪv/, deallocate /diːˈæləkeɪt/, catastrophic /ˌkætəˈstɹɑfɪk/

Звуки, трудные для русскоязычных:

  • Звонкие согласные в конце слова — не оглушайте их: interactive /ˌɪn.tɚˈæk.tɪv/, merge /mɝd͡ʒ/, analyze /ˈæn.əˌlaɪz/, garbage /ˈɡɑɹ.bɪd͡ʒ/

Как заниматься с этим видео

  1. Прослушайте всё видео один раз молча и выпишите незнакомые слова.
  2. Начните со скорости 0,75×, повторяйте предложение за предложением и вернитесь к обычной скорости, когда станет легко.
  3. Запишите себя и сравните с оригиналом, обращая внимание на такие слова, как exploit, pointer, animation.

Что такое техника Shadowing?

Shadowing — это научно обоснованная техника изучения языка, изначально разработанная для подготовки профессиональных переводчиков и популяризированная полиглотом доктором Александром Аргуэльесом. Метод прост, но эффективен: вы слушаете аудио на английском от носителей языка и немедленно повторяете вслух — как тень, следующая за говорящим с задержкой в 1–2 секунды. В отличие от пассивного прослушивания или грамматических упражнений, Shadowing заставляет мозг и мышцы рта одновременно обрабатывать и воспроизводить реальные речевые паттерны. Исследования показывают, что это значительно улучшает точность произношения, интонацию, ритм, связную речь, понимание на слух и беглость речи — что делает его одним из самых эффективных методов для подготовки к IELTS Speaking и реального общения на английском.

Техника шедоуинга: читать полное пошаговое руководство →