ฝึกพูดภาษาอังกฤษด้วยเทคนิค 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% ของคำที่อยู่ใน 3,000 คำที่ใช้บ่อยที่สุดในภาษาอังกฤษ คำศัพท์จึงค่อนข้างยาก

คำศัพท์สำคัญในวิดีโอนี้

คำที่ยากที่สุด 9 คำในวิดีโอ พร้อมคำอ่านและความหมาย:

คำศัพท์คำอ่านความหมาย
pointer คำนาม/ˈpɔɪn.təɹ/ไม้ชี้
animation คำนาม/ˌæn.ɪˈmeɪ.ʃən/แอนิเมชัน
vulnerability คำนาม/ˌvʌln(ə)ɹəˈbɪlɪti/ช่องโหว่
bulletproof คำคุณศัพท์/ˈbʊlɪtpɹuf/กันกระสุน
analyze คำกริยา/ˈæn.əˌlaɪz/วิเคราะห์
scroll คำนาม/skɹoʊl/ม้วนกระดาษ
vector คำนาม/ˈvɛktɚ/เวกเตอร์
mathematics คำนาม/mæθ(.ə)ˈmæt.ɪks/คณิตศาสตร์
garbage คำนาม/ˈɡɑɹ.bɪd͡ʒ/กาก, ขยะ

ไวยากรณ์ในวิดีโอนี้

โครงสร้างที่ผู้พูดใช้บ่อยที่สุด พร้อมคำพูดจริงจากวิดีโอ:

โครงสร้างในวิดีโอ
Passive voice be + กริยาช่อง 3 — เน้นสิ่งที่เกิดขึ้น ไม่ใช่ผู้กระทำwere fired · has been credited · being written
Present perfect have/has + กริยาช่อง 3 — เหตุการณ์ในอดีตที่ยังเกี่ยวข้องกับปัจจุบันhave tabled · has been credited · have affected
Relative clauses 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/

เสียงที่คนไทยมักออกเสียงยาก:

  • เสียงท้ายคำ — ออกเสียงให้ครบ ไม่เปลี่ยนเป็นตัวสะกดแบบไทย: dangle /ˈdæŋ.ɡəl/, interactive /ˌɪn.tɚˈæk.tɪv/, bulletproof /ˈbʊlɪtpɹuf/, ominous /ˈɑmɪnəs/, malicious /məˈlɪʃəs/
  • /v/ — ไม่ใช่ /w/ ให้ฟันบนแตะริมฝีปากล่าง: vulnerability /ˌvʌln(ə)ɹəˈbɪlɪti/, interactive /ˌɪn.tɚˈæk.tɪv/, vector /ˈvɛktɚ/
  • /z/ — เสียงก้อง ไม่ใช่ /s/: browser /ˈbɹaʊ.zəɹ/, analyze /ˈæn.əˌlaɪz/

วิธีฝึกกับวิดีโอนี้

  1. ฟังวิดีโอให้จบหนึ่งรอบโดยยังไม่ต้องพูด แล้วจดคำที่ยังไม่รู้จัก
  2. เริ่มที่ความเร็ว 0.75× พูดตามทีละประโยค แล้วกลับไปใช้ความเร็วปกติเมื่อเริ่มคล่อง
  3. อัดเสียงตัวเองแล้วเทียบกับต้นฉบับ โดยสังเกตคำอย่าง pointer, animation, vulnerability เป็นพิเศษ

เทคนิค Shadowing คืออะไร?

Shadowing เป็นเทคนิคการเรียนรู้ภาษาที่ได้รับการรับรองทางวิทยาศาสตร์ พัฒนาขึ้นสำหรับการฝึกนักแปลมืออาชีพ วิธีการนี้เรียบง่ายแต่ทรงพลัง: คุณฟังเสียงภาษาอังกฤษจากเจ้าของภาษาและพูดตามทันที — เหมือนเงาที่ตามผู้พูดด้วยช่วงเวลาห่าง 1-2 วินาที การวิจัยแสดงว่าเทคนิคนี้ปรับปรุงความแม่นยำในการออกเสียง ทำนองเสียง จังหวะ การเชื่อมเสียง การฟังเข้าใจ และความคล่องแคล่วในการพูดได้อย่างมีนัยสำคัญ

เทคนิค shadowing: อ่านคู่มือฉบับเต็มทีละขั้นตอน →