Добавить новость
Январь 2010 Февраль 2010 Март 2010 Апрель 2010 Май 2010
Июнь 2010
Июль 2010 Август 2010
Сентябрь 2010
Октябрь 2010
Ноябрь 2010
Декабрь 2010
Январь 2011
Февраль 2011 Март 2011 Апрель 2011 Май 2011 Июнь 2011 Июль 2011 Август 2011
Сентябрь 2011
Октябрь 2011 Ноябрь 2011 Декабрь 2011 Январь 2012 Февраль 2012 Март 2012 Апрель 2012 Май 2012 Июнь 2012 Июль 2012 Август 2012 Сентябрь 2012 Октябрь 2012 Ноябрь 2012 Декабрь 2012 Январь 2013 Февраль 2013 Март 2013 Апрель 2013 Май 2013 Июнь 2013 Июль 2013 Август 2013 Сентябрь 2013 Октябрь 2013 Ноябрь 2013 Декабрь 2013 Январь 2014 Февраль 2014
Март 2014
Апрель 2014 Май 2014 Июнь 2014 Июль 2014 Август 2014 Сентябрь 2014 Октябрь 2014 Ноябрь 2014 Декабрь 2014 Январь 2015 Февраль 2015 Март 2015 Апрель 2015 Май 2015 Июнь 2015 Июль 2015 Август 2015 Сентябрь 2015 Октябрь 2015 Ноябрь 2015 Декабрь 2015 Январь 2016 Февраль 2016 Март 2016 Апрель 2016 Май 2016 Июнь 2016 Июль 2016 Август 2016 Сентябрь 2016 Октябрь 2016 Ноябрь 2016 Декабрь 2016 Январь 2017 Февраль 2017 Март 2017 Апрель 2017 Май 2017
Июнь 2017
Июль 2017
Август 2017 Сентябрь 2017 Октябрь 2017 Ноябрь 2017 Декабрь 2017 Январь 2018 Февраль 2018 Март 2018 Апрель 2018 Май 2018 Июнь 2018 Июль 2018 Август 2018 Сентябрь 2018 Октябрь 2018 Ноябрь 2018 Декабрь 2018 Январь 2019
Февраль 2019
Март 2019 Апрель 2019 Май 2019 Июнь 2019 Июль 2019 Август 2019 Сентябрь 2019 Октябрь 2019 Ноябрь 2019 Декабрь 2019 Январь 2020
Февраль 2020
Март 2020 Апрель 2020 Май 2020 Июнь 2020 Июль 2020 Август 2020 Сентябрь 2020 Октябрь 2020 Ноябрь 2020 Декабрь 2020 Январь 2021 Февраль 2021 Март 2021 Апрель 2021 Май 2021 Июнь 2021 Июль 2021 Август 2021 Сентябрь 2021 Октябрь 2021 Ноябрь 2021 Декабрь 2021 Январь 2022 Февраль 2022 Март 2022 Апрель 2022 Май 2022 Июнь 2022 Июль 2022 Август 2022 Сентябрь 2022 Октябрь 2022 Ноябрь 2022 Декабрь 2022 Январь 2023 Февраль 2023 Март 2023 Апрель 2023 Май 2023 Июнь 2023 Июль 2023 Август 2023 Сентябрь 2023 Октябрь 2023 Ноябрь 2023 Декабрь 2023 Январь 2024 Февраль 2024 Март 2024 Апрель 2024 Май 2024 Июнь 2024 Июль 2024 Август 2024 Сентябрь 2024 Октябрь 2024 Ноябрь 2024 Декабрь 2024 Январь 2025 Февраль 2025 Март 2025 Апрель 2025 Май 2025 Июнь 2025 Июль 2025 Август 2025 Сентябрь 2025 Октябрь 2025 Ноябрь 2025 Декабрь 2025 Январь 2026 Февраль 2026 Март 2026
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
31
Game News |

'The most boring protocol on the internet is also, quietly, one of the most abusable': Doom has been broken down into 1,964 DNS text records and can be run via a PowerShell script

Doom runs on just about everything. From 100 pounds of mouldy potatoes to a pregnancy test, creators have endeavoured to run everyone's favourite demon-blasting fest on all sorts of hardware—but cramming its code inside DNS text records is a new one on me.

That's what Doom Over DNS does, and it's a remarkable bit of lateral thinking from the mind of Adam Rice. Essentially, the entirety of shareware Doom has been split into 1,964 DNS text records that can be stored across a single Cloudflare zone, which in turn is reassembled by a PowerShell script making public DNS queries. Resulting in... well, Doom, as we've come to know and love it.

As this breakdown explains, the Domain Name System (DNS) turns domain names into IP addresses, acting a bit like a phonebook for the internet.

However, it also supports text records, with fields that are usually used for mundane entries like email authentication data. Each record can hold around 2,000 characters, and they're not validated, which means you can put anything you like inside them.

Apparently. This is all news to me, as I understand the internet as a series of tubes. Props if you got the reference without clicking the link.

With an initial goal of storing an encoded movie collection within that text data (I wonder how many records that would take?) the project was pivoted to first Base64-encode a picture of a duck (why not), with a metadata record that would allow a reassembly script to piece it back together.

Duck test successful, the scope of the project was adjusted. Sure, a small .jpg of a duck is easy enough, but a 1 GB .mp4 file? That'd take roughly 670,000 text records. What's needed is something smaller, something easily compressed... something like Doom.

(Image credit: id Software)

After using Claude to re-write some of the game code to run from a memory stream rather than on-disk system files (and cutting the audio to keep the file size down) Doom was then compressed into code chunks that would fit inside multiple text records, which were then contained within a single CloudFlare Pro DNS zone.

The script that runs Doom is a neat little 250 lines of standalone PowerShell code, which is capable of resolving all the DNS queries needed to grab Doom's data in 10-20 seconds. It then reassembles everything in memory, loads the assemblies, and launches the game with nothing written to disk.

(Image credit: Id Software)

"DNS is almost 45 years old and it was designed to map hostnames to IP addresses. It is not a file storage system. It was not designed to be a file storage system", says Rice.

"Nobody at the IETF was thinking about it being used as a file storage system when they wrote RFC 1035. Yet here we are. The most boring protocol on the internet is also, quietly, one of the most abusable."

Well, congratulations. Doom has once again been forced to run on something it should not be run on, and we've all learned something about how the internet works. Or how Doom works. Whatever. It ain't half cool though, ey?



Читайте также

Дорожная карта Dissidia Duellum Final Fantasy: новые герои и сезонный контент

How to solve the Sanctum of Absolution puzzle in Crimson Desert

Региональный тест Overwatch Rush скоро закончится — что известно?




Game24.pro — паблик игровых новостей в календарном формате на основе технологичной новостной информационно-поисковой системы с элементами искусственного интеллекта, гео-отбора и возможностью мгновенной публикации авторского контента в режиме Free Public. Game24.pro — ваши Game News сегодня и сейчас в Вашем городе.

Опубликовать свою новость, реплику, комментарий, анонс и т.д. можно мгновенно — здесь.