Greetings, and welcome to this introduction to critical media studies. This is an important and interesting area of exploration, especially in a moment of human history when media is so pervasive in our everyday lives. There is something that I should be clear about right up front, though, at the start of this journey. Critical media studies is not about the media. It's not even really about communication, weird, right? I know, I mean, the word media is right there in the phrase, and I'm a communication professor, so yeah, those are both valid points. We will definitely dive deep into an exploration of the media, and it absolutely falls squarely in the academic discipline of communication. I would still maintain that's not what critical media studies is about, though. That it's core critical media studies is about learning how to think, and that analytics agency Zenith Media projects that media consumption, meaning mobile internet, desktop internet, radio, television, magazines, and newspapers for adults in the United States in 2021 would average 666 minutes per day. That's 11.1 hours per day. Let that number sink in for just a moment. Yes, there's some multitasking in there where you're watching TV and browsing TikTok at the same time, but still, now let me ask you the most important question of this discussion. How much critical thought do you actually apply to the 11.1 hours of media per day that you consume? Think about the last song you heard. What was it about? Was that what it's objectively about or just what that's about to you? Who's the artist?  Where are they from? What is their story? What circumstances led to them writing that song? What does it represent for them? Do they have a dominant perspective that would have influenced the creation of that particular song? What does it represent to you? How does your own personal life experience inform your interpretation of the song? How is the broader interpretation, acceptance and popularity of that song affected by the social, economic and historical context surrounding its release? Did any of those questions come up for you as you listened to that song? Could you answer them now? These are the types of things that form the foundation of critical media studies. Critical media studies is actually an umbrella term for a variety of theoretical perspectives used to examine media artifacts of all forms and style. These critical lenses include things like cultural analysis, rhetorical analysis, Marxist analysis, psychoanalytic analysis, feminist analysis, ecological analysis, and many more. We will get into these and other critical theories in separate videos. We'll also take a more in-depth look at what we mean by criticism in the context of critical media studies. For now though, let's take a look at the media aspect of critical media studies. We need to start by defining media. What does that word mean? Well, media is very simply a plural form of the word medium, referring to the channel or means of communicating. You see here a basic model of the transactional model of communication with all the different elements represented. Medium is another word for channel, meaning how we are communicating. Media just means multiple forms of channels or multiple ways in which we are communicating. If we refine it a little bit more, we can, in contemporary culture, we often use the term mass media. So let's take a moment to define that as well. Mass media is simply a means of communication intended to reach or influence people widely, meaning we're trying to reach the broadest possible audience that we can through any of these multiple channels or multiple mediums that we can access. Today that could mean television, radio, the internet, through a megaphone or a snapshot, Instagram, whatever we're trying to use, mass media comes in lots of different shapes and forms. And so we broadly categorize mass media in a couple of different ways. So it started with, initially, we had print media. The invention of the printing press allowed us to mass produce these things and get them into lots of hands and increase literacy, did all these things, but it all started with the print media, meaning books and leaflets and then eventually newspapers and things like that. So we have print media that we use. Then that developed, as technology developed, into motion pictures and sound recording. So movies and music and ways to communicate through mass media in that way beyond just print media. And then we ventured into broadcast media. And so you had things like the television, radio and broadcast companies that were sending these different messages and programming things. And so we had broadcast media. Now we're into an era where we just kind of broadly and loosely defined new things as new media. New media and new media just kind of generally means anything that uses a microprocessor. So your phones, your tablets, your computers would all be new media. And we can see that there's lots of spillover between these categories. And we'll discuss that type of thing eventually, but we see, you know, you get your broadcast media a lot of times through something now that would be new media. So there's lots of crossover in that regard. And we use different tools using new media that would have lots of spillover between these different categories. So they're not able to be as neatly categorized as just simply saying it's this or that. But we, you know, see this development through history and it's a way for us to kind of conceptualize these things. The term that we need to define for the purposes of what we're going to be studying in these discussions is post-modernity, post-modernity. And post-modernity is different than post-modernism. So we got to distinguish a little bit between those things, but post-modernity essentially is the historical era starting in the 1960s in which the primary economic production model of Western societies shifted from commodity-based manufacturing to information-based services.  But essentially what we're saying here is that starting in the 1960s, our primary economic model shifted. And so shifted to this format. We make less stuff in favor of selling ideas, expertise, and convenience. If you look back pre-1960, America in the Industrial Revolution period was all about making stuff. We made cars. We made tractors. We made, you know, all these products. We manufactured things. We were a manufacturing society. Then in the 1960s, we hit post-modernity, which means now we make less stuff. We don't manufacture as much stuff in the United States as we used to. We've outsourced all that in favor of selling ideas, expertise, and convenience. Think about the phone that you inevitably have in your pocket or on your desk or wherever it's at or you're watching this on it right now. Your smartphone was, you know, conceptualized here in the United States. We kind of came up with the idea of putting all these different functions together in one thing and kind of made it happen. But your smartphone almost certainly was not made and manufactured here in the United States. We don't make stuff like that here anymore. We outsource it. We come up with the idea. We outsource it. And then we build upon it, right? We sell ideas, expertise, and convenience through things like apps. We develop apps here in the United States now. We don't make the phone. We come up with ideas or ways you can use the phone, hopefully, to your benefit. Maybe not. Sometimes to your detriment. But anyway, we come up with the ideas that you can use on those things. We don't make the things ourselves. And that's an important distinction that has taken place, again, since about the 1960s here in the United States and a lot of other Westernized cultures. So what does that matter? The media has, of course, a big role to play in the development of post-modernity, first of all, but also is affected and impacted by post-modernity and the way that we work as a culture and the way that we kind of do things. So we need to take a look at how that media has impacted this and how it has been impacted by post-modernity. So the media in our current era of post-modernity, first of all, is impacted by convergence. We have a convergence. Again, we have that spillover. We have lots of things. Your paper may be available to you by somebody throwing it onto your doorstep in an actual paper form, but it's probably also available in digital form online. It may only be available in digital form online at this point. The way the way press is going, it's possible that that's the only way you can get it. So we have the convergence and spillover between those different categories of media. We also have convergence in the sense of media conglomeration, for example. So just think about ESPN, for example. ESPN is a big organization. They have a very specific thing that they do, but they're also connected. They have sister stations like ABC, right? Because they're owned by the same company as ABC. So you see a lot of crossover. You see ESPN Monday Night Football on ABC, right? Or Sunday Night Football on ABC or whatever it is. And so you see a lot of crossover and borrowing of things between companies that are owned now through that kind of convergence. And of course, they're all owned by Disney. So you see ESPN events happening at Disney. And Disney, of course, doesn't just do media. They have theme parks and all kinds of stuff. So you have this huge convergence of companies reaching out into different areas, but also converging under kind of one umbrella as an impacted media in a massive way through convergence since post-modernity. We also see a massive shift toward mobility. When I was a kid, if you wanted to watch a TV show, you basically had to plant yourself in front of your TV at a specific time on a specific night. And if you didn't do that, you weren't going to see it, right? It wasn't going to be available to you. Now we expect to have the ability to watch what we want, where we want, how we want on our phones, on our tablets, on our computers. And to have it, if I don't want to watch it when it's on Thursdays at eight, I want to watch it when I want to, right? So we have the mobility of that media across platforms and across times. And we expect to be able to take it with us and have it in our pocket and then pull it out whenever we want, right? We have that mobility of media that we did not have before post-modernity. And it's been affected by that. We also have significant audience fragmentation. When you only have three TV channels, which is what we had grown up on a good day in my house, we had three TV channels. If the weather was just right, we could get that third one over our antenna. And so everybody was kind of watching the same thing. And you didn't have much choice and you were watching one of those channels, probably, right? If you were watching TV, and that was pretty much our media intake. But now we have significant audience fragmentation with people watching specifically what they want geared to their interests. And divided up audiences into very specific components, right? So just in a broad level, for example, you used to have the nightly news. And you watched one of those three nightly news shows, probably, if you were going to watch the news on one of those three major networks. And it was kind of all the same, had different anchors, but it was kind of all covering the same thing and doing the same kind of thing. But, and all had kind of a neutral outlook. And that's all there was. The advent of cable and things like that really allowed us to fragment an audience. Now we have a 24 hour news cycle. It's not an hour on every weeknight. Now it's 24 hours a day. There are multiple news channels, right? Now we're up to, I don't know how many, six, seven, eight, that are full time, 24 hour news channels, right? And the three major ones, so we've seen what they've done. The three major ones have fragmented their audience so they can appeal to a specific audience and draw that particular audience in. So Fox News, for example, focuses on really conservative audience. On the opposite end of things, MSNBC focuses on really liberal viewers. They tend to appeal to them more. CNN's kind of in the middle. They veer to the left just a little bit, but they're kind of moving back to the middle. They try and be straddle at middle and be kind of a neutral thing. But we have these audiences that are fragmented.  And if you tell me what news channel you watch, that tells me a lot about you, right? And I can, based on knowing something about you, I can probably guess what news channel you watch and reverse. The same is true for all media. You don't just have broad magazines anymore. You don't just have a life magazine that kind of tried to appeal to everybody. You have specific magazines for specific audiences. Very detailed. We get a lot of craft and like home and garden magazines at our home because my wife enjoys those things, so she gets those magazines. And we don't get magazines that cover just everything, right? We get specific magazines that are geared toward a specific audience around here, right? So fragmentation has happened amongst media, too. Again, benefits and also consequences as a result. But that's the reality of where we're at in post-modernity. We have a globalization effect as well in post-modernity. Companies are reaching across the globe. You're no longer confined to just your local news and local area and reaching your local audience. You can reach anybody anywhere and you can get products to them. And that's the biggest thing. You can sell products anywhere. So that means you need to be able to reach people anywhere. There's huge globalization in the sense of media as well. And simulation has taken on new meaning. We want experiences that tell us what it's like to be there. We want to, you know, when we watch something, we want to be able to fly in a fighter jet if that's what we're watching. We want it to feel like that. We want it to know what it's like to be on the planes of Africa with all the different animals, right? And so we can do that. We can use media to experience those things without actually going there and having to do those things. That's what we mean by simulation. So we expect media more and more to provide that simulation experience for us. Okay. So now we've covered kind of what we're looking at in terms of, you know, critical media studies, what's the foundation for that? And what is the media aspect? So now that we have a basic understanding of the media portion of critical media studies, be sure to check out the next video in this series, which is going to break down what it means to be critical of media and the components of critical media studies in that regard. And I certainly hope to see you there. I hope that this has answered some of your questions about what is critical media studies and how does media factor into that and went for lots more exciting information as we continue our journey studying critical media studies.


One goal of language learning, language teaching and linguistic research is to provide precise and explicit information about the sound system of any language. For this purpose, we need some sort of generalized notation. This unit discusses the necessity of such a notation of such an international alphabet that looks at possible design principles. We will first of all ask the question, couldn't we use the writing systems of the languages of the world and will then focus on particular systems of a phonetic notation? In looking at the writing systems around, the first question you might ask here, couldn't we take the alphabet of the language in focus in order to transcribe its sound system? Well, in looking at the writing systems of the languages of the world, we easily see that this is not a suitable option. There are, for example, languages that do not have a writing system at all. About 85% of the languages of the world do not have writing systems. How shall we describe the sound structure of such a language? Well, let's look at an example. Well, here's an example of a language, of a Nidra Kongo language spoken in Nigeria. The language is called Oko, and it hasn't got a writing system at all. Now, for academic purposes, the Roman alphabet is used in such cases. However, the pronunciation is often not clear. Now, let's look at one example here. When the woman saw the man, this is what I can read in applying the alphabetic system here. However, if we look at the phonetics, you see the quality of the vowels is completely different. So, an alphabetic notation for languages without a writing system is not really suitable at all. This becomes even more obvious if you look at the pronunciation of some cases and see how much you are influenced by your own language, by the language you speak and your own writing system. Let's look at my hometown, for example. My hometown here in Germany is Hannover. Now, the way I pronounce it is the German pronunciation. In English, you would say Hanover, and in Russian, people would say Ganover. Now, how can we reflect that by means of the orthographical system of German, English or Russian? Well, we can't. Nevertheless, we could argue since the remaining 15% of the languages that have a writing system constitute about 60% of the world's population, we might think that, well, we perhaps do not need an extra phonetic alphabet because their languages have writing systems. Yet, not all of these writing systems are phonographic. For example, in languages such as Chinese, the non-alphabetic orthography generally does not give any direct information about pronunciation. Well, let's look at an example here from Chinese, where you see this is the Chinese orthographic representation of the very big book. Let's listen to two variants. Now here, you see the first variant which is standard Chinese spoken in Shandong province and this is what it sounds like. Again. Let's now compare that with a Chinese dialect. Now here we have a dialect spoken in the Suzhou area and this is what it sounds like. Now, you can clearly see that the writing system which is the same in both cases doesn't help. This orthographical representation does not at all reflect the pronunciation of Chinese and its dialects. Okay, so this is then the next argument that even that languages, that many languages have a non-phonographic writing system. But then there are languages with the phonographic writing systems. But even there in languages such as Finnish or Italian, there may be sporadic mismatches between the sound of the spelling of words since there are almost always phonetic characteristics of, for example, continuous speech that are not reflected in the orthography. Let's look at Finnish where the correspondence between the orthography and phonetics is almost ideal. Here you see the welcoming message of one of our speakers of Finnish on the virtual linguistics campus contained in the language index. Let's listen first. And as you can see, the information in line one, the orthographical information is almost identical with the information in line three, the phonetic transcription. However, one thing is missing even in the orthographical notation, namely the information about stress. This situation is even worse in present-day English. Now, in present-day English you have problems. For example, if you look at particular character combinations, let's look at the character combination OW. Now, this combination can be represented in two ways. On the one hand, we may have something like this in RPO. On the other hand, we may have something like OW. Examples are show or low versus how and now. There's nothing in the orthography that tells us how to pronounce the character combination OW. In present-day English, this situation is especially difficult because the sound changes that affected the English language through its history are not reflected in the spelling. Let's listen to an example. Now, just listen to the following poem and look at the rhyming patterns at the end of each line. Well, in summary, if you look at such a text where you have words like tear and tear, where the orthography does not reflect spelling, there is no doubt, and I think you all agree, about the necessity of a phonetic notation. But what shall it look like? Well, many languages have phonographic systems, phonographic writing systems, but some of them seem to be too exotic to be applied to other languages. So let's wipe this off now and look at some phonographic systems. Here, for example, you see Georgian. Now, in Georgian, you have an alphabetic notation. This, in fact, means the big book, and it is pronounced Well, this is an alphabetic notation. Or here, you have an alphabet used in a Berber language, spoken in North Africa, And again, you have here the big book, and the pronunciation is I hope I got it right. I'm not a speaker of Tamasicht. So, since these are very exotic, we can assume that today the backbone of an international phonetic alphabet is probably the Roman alphabet, because most languages with a phonographic writing system use it anyway. However, in the past, in developing such a transcription system, there were alternatives. Let's look at them. Here are some examples of some notations that have been invented that are alphabetic in principle, but are not based on the Roman or any other existing alphabet. The first one here is from the 17th century. It's called the iconic notation by John Wilkins. Francis Ludwig, again, also in the 17th century, developed a system which was called the universal alphabet. Or look at Alexander Melville Bell's system of visible speech in the 19th century. And again, another one would be Henry Sweets' organic alphabet. Now these four systems are alphabetic systems. They use non-arbitrary symbols, so the symbols somehow resemble either orthographical characters or pronunciation issues. Completely arbitrary was Robinson's system developed in the 17th century. Now this gives a lateral view of the palette. Well, from the lines from A to B, for example, and the root of the tongue, which is C. And from the roots, several lines were drawn representing five different tongue configurations. In addition to these symbols or to these notations, we have something which Jesper's developed, which looks like a chemical formula. And they have been discussed as well. However, you see these transcription systems are relatively useless as compared with our alphabetic notations, which in fact go back to Henry Sweets. This is Henry Sweets, one of the founding members of the International Phonetic Association. And Henry Sweets suggested in his handbook of phonetics which was published late in the 19th century, two systems. The first system is called the broad-romic system. And the second one is called the narrow-romic system. Now as you can see, broad-romic was introduced to indicate only those distinctions of sound which actually correspond to the distinctions of meaning in language. So this is some of the predecessors of what today we would call a phonemic transcription, an early realization of the phonemic principle. And the narrow-romic was meant to be a more scientific notation aiming at indicating even slight differences in articulation. You see, if you look at the first party, he doesn't seem to feel, and here he doesn't seem to feel, and here in the second part you see simply more details, vowel length, more information about stress and connected speech aspects than in the broad-romic transcription. Both notations were applied to English and used letters that were merely those of the Roman alphabet. However, they were sometimes capitalized, but never written as capital letters and sometimes they were twisted around, they were turned or raised. Today, the principles used in phonetic transcriptions are defined by the International Phonetic Association, IPA, International Phonetic Association. These principles, their principles, which we will discuss elsewhere, can now be applied to the development of a general phonetic alphabet from which each language can pick the respective subset of symbols. For example, English, present-day English, the RP dialect, has 44 phonemes, 20 vowels and 24 consonants, and many more allophones. But how can we represent this sound system more adequately? Well, this question will be discussed in the unit, the phonetic transcription of present-day English.


Your happiness brings misery to the narcissist. Your happiness makes them miserable. They can't stand to see you happy. They can't stand to see you live in your life. It makes them feel very uncomfortable. It triggers them to reflect on their own unhappiness. It makes them feel small and inadequate. But they were already miserable. Even before you came around, they just used people and things to help to distract them from their misery. Misery loves company. They are involved in a lot of escapism and addictions. Anything to help them escape from reality. To help them escape from all of their problems and difficulties. And their feelings of inadequacy. But when they see you and you're happy and live in your life. It makes it even worse because then they have to look at you and witness the very thing that they've been striving to achieve their entire lives. Narcissists spend so much of their time, energy and money just trying to find happiness. They buy expensive things they don't even need. They drink alcohol and do drugs. They sleep around. All in an attempt to find the one thing that they're looking for. The one thing that is so effortless for you to obtain. And that is your happiness. When the narcissist sees that you are happy. It makes them envious and jealous. They want to take your happiness away from you. Because they feel like your happiness is taking something away from them. And it is. Your happiness is taking away their delusion of happiness. All this time they trick themselves into thinking that money, power, wealth and success is all you need to be happy. But that happiness was never real. True happiness comes from within. And when they have to witness your happiness. It reminds them of that. It reminds them that the very thing that they've been chasing after exists within you. It makes them want to stamp out your happiness. Because your happiness reminds them that they are not really happy. It reminds them that what they have isn't real.  To bring you down to their level. Because they can't stand to see you happy. They can't stand to see you live in your life. They will try to hurt you. They will try to put you down. They will try to sabotage what you've got going on. But they will also try to blame you for the abuse. They will try to make you feel like it's your fault. They will try to make you feel like you deserve it. They will try to take you off your natural course. They will try to distract you from your natural state of being. Your natural state of happiness and contentment. Just like they try to distract themselves from their unhappiness. They don't want you to feel that way anymore. They want to pull you into their world now. Misery loves company. People who are suffering are comforted by the knowledge that other people are also unhappy. But they understand that you could be happy on your own without them. They are fully aware of that.    Because they can't find fulfillment in their lives. They look at it like... If they can't be happy, why should you? So they go out of their way to tear you down. It's like they're on a mission. It's like they've discovered this newfound purpose in life. Where they have to stamp out everything that you are. Everything that you are reflecting back to them. Because your happiness reflects back to them that they are not happy. And that's what they are trying to eliminate. That's what they are trying to keep under control. Your happiness may bring misery to the narcissist. But that has nothing to do with you. That's something they need to confront within themselves. And if they choose to not do that. That's on them. But it is not your responsibility. You are only responsible for your own happiness. It is not your duty to save other people. They are grown adults. So they should be responsible for themselves. Instead of dependent on someone else for their happiness. Continue to be happy. Continue to live your life. It may make them miserable. They may try to stop you. But it's either that. Or you end up just like them. You end up living a life that isn't fulfilling. You came here to be great.  Life is meant to be enjoyed. Not endured. So live your life. And do what makes you happy. Let the narcissist watch you. If that's what they choose to do. Let them drive themselves insane. They may try to tear you down. But you have to remember that's coming from them. It's not something you need to identify with. Identify with your own thoughts and emotions.  You don't have to tone yourself down. You don't have to reduce yourself to their level. To make them comfortable. They choose to be around you. They choose to watch you. So if your happiness makes them miserable. That's on them. That's something they have to deal with. It is not your responsibility. But I also recommend that you avoid these narcissists. Don't spend too much time around them. If a person is on a lower vibration level. If a person is on a lower vibrational frequency than you are. All they can do is bring you down to their level. They cannot lift you up. A person has to be on the same frequency. Or on a higher frequency. To raise your spirits. Pay attention to how you feel. When you are around the narcissist. If you suddenly feel miserable for no reason. Be aware of that. And try to spend more time away from them. Try to spend more time with yourself. You have the ability to go within. You have the ability to reflect on yourself. And that's where the power is. That's where your true happiness lies. So all you really need. Is some space to feel happy. All you really need. Is some time to yourself. While all the narcissist needs is you. They have to attach themselves to you.  They have to elevate themselves at your expense. Which is why they're always the ones that are pursuing you. Because they just want a part of you. They want some of your goodness. They want a souvenir. They want something that they can keep as a reminder of you. They're always chasing after you. Because you have what they want. You're happy. And you can generate those emotions from within. Which is something that they will never be able to do. Thank you for watching. I hope this video has a note with you. Please like, comment, share and subscribe. If you would like to donate. My PayPal link is in the video description. Coaching inquiries. You can email me at coaching.narksurvivor.co.uk. Thank you for watching and I'll talk to you soon.


So, we've talked about Marjorie Green on the program before. For those of you who don't remember, this is a congressional candidate running in Georgia's 14th congressional district, and she recently won her primary. She was running against a still extreme, albeit less cuckoo Republican. He lost, and this individual is almost certainly going to be going to Congress. Not just because this is a deeply red district, so if you win the Republican primary, you basically get that seat, but her Democratic opponent just dropped out not too long ago. And if you're not familiar with who Marjorie Green is and what she represents, let me refresh your memory or introduce you to her. And I'm sorry if you were living in ignorant bliss, but this is what she's all about. I'm Marjorie Green, and I approve this ad. America is the greatest country in the world. We need conservatives in Washington that will keep it that way. I'm running to stop gun control. Open borders, the Green New Deal, and socialism.  I'll fight even harder to stop them. I'm Marjorie Green, Republican for Congress. Save America, stop socialism. President Trump declared ANTIFA a domestic terrorist organization. I have a message for ANTIFA terrorists.   I'm Marjorie Green, and I approve this message. Yeah, it's indistinguishable from satire. Like 10, 20 years ago, if you would have showed me a skit from like Saturday Night Live or The Onion, where they're trying to make fun of Republicans and be overly hyperbolic, I think that they'd do something like that. But now, like what I would have previously thought would have been satirical, it's so loony is now their reality. And this is an individual who isn't just going to be going to Congress. She's a rising star in the Republican Party. She is a rising star in the Republican Party. This is a member of QAnon, a conspiracy theory group, and that's not me attacking her. She openly embraces the label herself. On top of that, Donald Trump tweeted about her. People are really looking to her as a future leader in the Republican Party. And I mean, given how far to the right this party has shifted, you know, embracing people like her, it's not that surprising.   So I mean, this is like a new low even for the Republican Party, but yet I'm afraid this will be the new normal. But anyways, the reason why we're talking about Marjorie Green is because she will be going to Congress and she is already preemptively attacking one of her colleagues, Alexandria, Ocasio-Cortez, and for whatever reason, she decided to take a shot at AOC because she thinks that AOC is not intelligent. So she tweeted out, as a blonde woman, I would like to take a moment to thank Congresswoman AOC. She has single-handedly, I think she means handedly, put an end to all dumb blonde jokes, blondes everywhere, appreciate your service and your sacrifice. Now, this is weird, like it came out of nowhere. This is your future colleague who you're attacking for no reason.  But I mean, she attacked AOC out of the blue, and she was so proud of this, she pinned this tweet to her Twitter feed.  But this person, I mean, she's just a Trump sycophant. If you go to her website, she doesn't really have any policy proposals. But she says, I back Trump 100%. So if Trump loses the selection, then what do you stand for? You just going to go there and keep the seat warm? Like people like this, I don't know why you run for Congress if you literally don't stand for anything.    And you're criticizing somebody else's intelligence level. Now after she threatened to extrajudicially murder Black Lives Matter protesters, well, since she was inciting violence, Facebook took down her post and she then took to social media and cried about how she was being censored and her First Amendment rights are being violated. If you think that a private company deleting one of your videos where you're inciting violence is you losing your First Amendment, right?   But regardless, AOC basically had the best response.  So she said, don't worry, Miss Green. I completely understand why you need to swing plus miss at my intellect to make yourself feel better. You seem to have some trouble spelling your own insults correctly next time. But try single-handedly. It'll work better. Good luck writing legislation. That was good. That was really, really good. I mean, look, if you're going to say, I don't agree with this policy that you're proposing, OK, you can have that disagreement and debate about it.  Again, it's so weird that you would do this. This is bizarre, right? And I'm not one to stress about the need to uphold decorum.  I don't care about that. But this is this is bizarre. This is immature.  Huh? Let me pin this tweet to my Twitter feed. It's bizarre and weird.  And you say single-handedly instead of single-handedly. Now, generally speaking, I don't care if somebody makes a typo, usually you can put two and two together fill in the blanks, figure out what they're trying to say.  Like if you're going to say somebody else is stupid, at least get the tweet right. So I'm I'm loving this tweet from AOC. But of course, Marjorie Green responded to that saying, AOC, please, no one cares about typos while you were growing up in socialist boot camp. I don't even know what that means. I was creating thousands of jobs, 250 million in revenue in 11 different states.  And I'm going to put it through the paper shredder. OK, so now she's changing the subject because she made a fool out of herself.  So now she's just saying, oh, well, nobody cares about typos.  But you're kind of disproving your own tweet.   But you implied that you do.  Like, why are you going to Congress? Like, you don't stand for anything. You don't know a single policy that you want. You're just with Trump 100 percent. Like, what does that even mean? And you say that she went through socials bootcamp. I don't know what that means. What does that mean that she went through college, that she has a degree? I don't know what that means. If anyone goes to college, does that mean that we've gone through socials bootcamp? I don't understand what that means. And she says that the Green New Deal is Marxist. The Green New Deal is Marxist. Do you know what that means? Do you know what Marxism means? How is a Green New Deal going to destroy millions of jobs when the entire point of the Green New Deal is to subsidize and invest in renewable technology instead of fossil fuels like wind, solar, hydro, these are all the future like this technology is what we should be investing in because climate change is a reality. So what AOC is doing with the Green New Deal is saying, hey, rather than, you know, letting China or some other country be the number one manufacturer of this technology that will be the future. Why don't we actually do that here so we can create jobs and also stop climate change in the process?  And on top of that, I think it's Marxist because anything that I don't like is Marxist. I mean, do you even understand the terms that you're throwing around? Like you call people Marxists, Communists. When the people who you're attacking oftentimes, these are neoliberals. They're free market capitalists. The Democratic Party is not a socialist party, but she accuses them of being socialists and whatnot. And her entire thing is to go to Congress to stop socialism. That's another part of her agenda, stop socialism, save America. Except do you even know what socialism is? Like I just don't understand how someone like this, who is not a serious person, can run a successful congressional campaign and get elected to Congress. And still not even try to play the part.  And Marjorie Green is an embarrassment. But she is one of those Republicans who has no shame. Like she's in her weird little conspiracy cult slash bubble.  But if she looks like a clown to the overwhelming majority of the country, she doesn't care. So it's it's embarrassing, but this is what we're working with. Like the Republican Party is going to continue to produce figures like Marjorie Taylor Green because they're shifting to the right. Like 10 years ago, they were trying to really explicitly go after people like this. And now they're going to represent a solid portion of your party. So, you know, even if other Republicans are condemning her and saying she's even a little bit extreme for us, this is what happens. When you appeal to these types of people, this is what you get. And now she's going to go to Congress. So, yeah, I'm really glad that she chose to interact with AOC. If you're going to take a shot, don't miss. And in this instance, she missed and she face planted.


OK, so welcome to my talk. My name is Angèle Bertini. I'm the author. I'm doing reverse engineer visual documentation. And the title of this talk comes from my work in the POC GTFO publication as the funky file format polyglot. So that's where the title of the talk comes from, OK? So this talk is about files. And what are the usual file categories?  But in general, typically, people are just interested in exploiting with file formats. And typically, valid files are considered boring. But I still think the important point is that the limits between, can you see the top colors? No? There's valid written here. The colors are weird, no? It's supposed to be red here, OK? Weird colors. So the problem is that the frontier between valid files and corrupted is not clearly defined, and I play with it. So just let's take an example. And here is a valid file, so just to show the kind of valid files that I like to try, it's not exploiting everything, but it's maybe not a standard file. So this is a JPEG picture that might ring a bell. And it's also a Java file, because why not? That's not really complex, but you can play further. If you apply AES on this picture, it's a JPEG picture, then you get a PNG picture. So it was encryption with AES. If you decrypt it with triple S, then you get a PDF. If you encrypt the same file once again, but with a different key with AES again, you get a flash video. I could go on and on and on getting crazy with the proof of concept. I thought I could do a whole talk with a single file, but maybe that won't be a real talk. So at least I hope that by now you're convinced that I'm just a normal guy, and I'd just like to play with binary. Although I like to explain and represent binaries, and maybe you've seen my posters in the building. So this is a picture of them at the top floor. So it's printed thanks to Kurt. And so I play with binary, and I also like to represent posters visually for everybody. And all these posters are free to download at pic.corcomico.com. And if you want to order a print on a pillow, iPhone case, or whatever, it's print.corcomico.com. OK, so oops. No, it doesn't work anymore. What's wrong? Yeah, so let's not go too deep in the technical details, and let's go a bit back to the fundamentals, and let's talk about cars. So how do you identify a car? How would be the possible ways to identify a car? And of course, we can apply the same model to file somehow. Is it by head? Is it by the body shape? Is it by the sound? Well, you can see that identifying a file could be done by different way the same way, in a similar way. In practice, here is an early file type identifier from French technology. So basically, you look at the head. I had fun drawing guillotine myself. So basically, typically, the file type is identified by a signature called magic that is fixed and enforced out of set zeros. Some have a meaning, some don't have. Most file formats have a magic signature of set zero. Some don't, like some archive formats, particularly the ZIP, which is also used in many other formats, like APK, JAR, and others. Some compressors actually enforce signature out of set zero. And PDF, which I like to abuse, theoretically has to start out of set zero, but in practice, only within the first K of the file. So that's how I could abuse it. We'll see that later. I could abuse PDF files a lot. Important point for ZIP is that ZIP is not that ZIP enforces a signature anywhere. It's actually ZIPs are written backward from the end. This is for old school reasons. When you are writing a ZIP file on the fly on multiple floppies, it will write the last information on the last disk, and it would minimize the floppy swaps. So basically, ZIP actually enforces that the start of the signature, I mean, the first structure to be checked is near the end of the file. The thing is, it's actually not respected all the time. And I did a talk on ZIP schizophrenia. If you want more details, you can check it later. A few formats are bound to hardware. And usually, when you have a memory range to be executed by a special chip, then they don't want a header there. So basically, TAR, ISO, MBR, even TGA, they start directly with the data. And optionally, they have a header that is later in the memory space. So those formats have an excuse because they are bound to some hardware not to have a magic at offset 0. But in general, a good magic signature should be enforced at the offset 0 and unique. And if you create a new file format, please respect this rule because otherwise, it can lead to a few abuse that we'll see now. So if you think how a standard tool, a standard parsing tools act, it just checks the magic, then it chooses a path and it will never return and try something else. It found the signature, oh, I chose this path. It must be this file type and it will ignore any other file type that could be included in the same file. So another common yet important property that is useful for abuses, you see a cow. There is something coming next, but you definitely see a cow. So it's like, because you can see a complete cow, then there is a cow, then there's something coming next. It's still a cow, it's still a valid cow, right? It means whatever you put after, it was origin, you see the full cow, so you think it's a cow and something else. And file formats typically define a terminator that says, this is the end of my file format and once the terminator is, you met the terminator, there's nothing left to parse. So with this abuse of file formats not under forced at offset zero and some files format allowing something that comes next, then you can just tag them up like the animals of Bremen and you can end up doing a file that has several file types. So this is an example of a jar jar being polyglot. So a being is a special game oriented video format and I chose a random picture to display by the video. So you just create your bink and then you append a jar file which are just zip and as we saw zip doesn't enforce starting at offset zero. So that's why a jar jar being polyglot is possible. Now another kind of file polyglots is when you have a host and a parasite.  So the outer leave space for the inner. Okay, a more realistic example, here is our cow with the various data chunks and if your cow swallows a micro SD then it's still a valid cow even if it contains foreign data that is tolerated by the stomach. So as an example, I did this file which was, so it was HTML, Java, Windows executable and a PDF in the same file. So it's interesting because you actually HTML launching a Java, dropping a P or a PDF exploiting and dropping a P are two valid infections chains and those two infections chains are present in the same file. And because I built entirely the file myself here you have that the PDF part of the document is actually inside the Java. So it's not just stacking stuff together but you put some one format inside the other. You have some real life example in the wild, oh sorry, another example that's actually used for pentesting. Basically it's a valid picture, here you see the black line which is the picture and it's also a valid JavaScript. You abuse the header so that it starts a JavaScript command and you close the command and then you put your JavaScript so it's a valid JavaScript and picture. You can break a lot of stuff with that. It's also available in BMP flavor for your pentesting purposes. So as I said, this kind of host parasite exploitation tricks already exist in the wild. It was represented in some famous movies and it's just that the inner part used some unallocated space left or made possible inside the outer file format. So as I said, I worked on the POC GTFO. If you're not familiar with this very nice publication it's really interesting to read but also the file itself. So the issue two was bootable, booting a Berliner-Spargel OS. It's also a zip and a valid PDF. The issue three I got a bit crazy. It was a valid radio message and a JPEG and if you encrypt it you get a PNG and a zip. Issue four was a valid TrueCrypt container, a PDF and a zip. And I just created this and two days after TrueCrypt is discontinuated. Issue five was ISO, PDF and a flash. So that's the ISO booting, a Tetris game which was explained in the article and you have the flash which was re-crawling the audience. And issue six is the latest issue that was out last month is also a tar, a PDF and a zip. And this is one of the examples. If you open with a lot of PDF readers they just see, oh, it starts with a tar and like the outer end picture, the reader says it's a tar, I open it as a tar and they never see the PDF. You imagine that with a security tool and maybe you got to win or lose depending on your side. So, oh yeah, a few interesting other polyglots. So Java, JavaScript, so it's two sources of JavaScript. You are using the source parser of the Java compiler, I mean compiler, yeah. So that's, it's a Java and JavaScript in the same source file. Or you can do the same at binary level so that you can tell your friends that Java is equal to JavaScript and yes, now it's proved. Okay, so not polyglots anymore but still worth playing with because they always have funny results. If you do extreme files like way too small or way too big they tend to bypass filter. So an analogy, that's actually a hoax. So the farmer got denied permit to build a horse shelter so he just built a giant table to protect his horse and he doesn't need a permit. So that's actually a hoax but you can feel it's almost real, right? And if you do it the other way, if you make a valid PDF files for Adobe Reader so that's a complete file. That is usually too small for software to consider it can be valid. Then they just reject it and they will not parse it as a PDF. So you can bypass scanners and security feature protections by creating a file that is too small to be likely uncorrupted, valid. Or you can do the opposite. You can do a huge file. So here with the 64K of section P it was crashing directly all the debug and other tools because it just, if they were trying to allocate everything even worse, the whole, every section was fully executed. Even though they are physically empty they were taking a lot of, all of them some space in memory and they were all executed and it takes actually a few seconds on the modern computer to run even though it does nothing but a lot of nothing. So you crash not only, not only it's slow to execute directly, natively, but also you crash a lot of analysis tools with similar files. So now we showed how to combine file types but we can also abuse the parsing. How do you parse a cow? This is how a user sees a cow. So how do people parse cows? Well, you all know, you all have an image of cows parsing. This is how a dev could parse a cow. But it turns out that not everybody agrees and this is how another dev sees a cow. So this is French beef cut of a cow, the official beef cuts of a cow and these are the Brazilian ones. So you see, it's the same data and different parser, different interpretation for different implementation of cow parsing.  So as you see, the same cow can be seen in completely different ways. I mean, okay, the head is still the head, luckily, but still the parts are different because the standards are different. So if you abuse that, you can, for example, create a PDF that has three different trailers. The trailer is defining the root element of a PDF. So this is the same file and with three different viewers, it gives you the three random pictures. And because two readers are not, so Chrome and new PDF readers are not respecting the standard, like Adobe, then they see a different root document and they see a completely different document to be parsed. So basically one file, but three different documents and the other readers don't see the other document, the two other two documents at all. It's not a trick in a conditional if by detecting the reader version or anything. Or another one, a bit different here, but it's actually abusing a feature, but you have the PDF that shows something and when it's time to print, it shows something completely different. And here it's not lack of respecting the standard, it's actually a part of the standard but unknown to most people because, yeah, it's a security, oh, no, obfuscation by, what does it say? Not security by obscurity, but yeah, basically the standard is too complex with a lot of unused, not so useful for everybody or not security-oriented features, I'd say. Or this is a presentation I did last year. So this was my presentation, it was my first binary inception, so that was the same file was the PDF viewer and the PDF slide. So basically the file was viewing itself and at the time, the people who were watching the slides but they were actually already watching the demo because it was the file running on itself. And it was also a Java file and a JavaScript with Mario, okay, because why not? And the same file, if you run it into different viewers, you have, it was also schizophrenic so you would have a different document with open with a different viewer. So a bit combining everything in one proof of concept and this time it was not written by hand, it was like really generated and that's now what we do for POC GTFO. It's a make file that combines everything. It's not me crafting manually the file until the end and also we care about compatibility. That's the problem. Okay, so another problem for security in general is that you have unexpected parses and that's not mine, but that's Elka, I don't know how to say Elk came tough, who basically found the exploitation via the strings command, so that's a CVE and basically you would expect that strings, the command line tool, yeah, doesn't parse anything but just looks for string but no, it's actually calling parses and it was exploitable and it's a CVE and now he also did that with less. So the problem is that not only you have different parses but also you have parses in an expected place. So don't run strings on a known file, don't run less on unknown file, don't do anything basically because you never know, especially if the file comes from me, who opened my slides? Okay, just a little parenthesis on metadata but you know people like to attribute, oh, there's a Chinese string here, oh, it must be China or North Korea, yeah, why not? Yeah, so cows and metadata because you cannot see the head easily, then you just brand the cattle with a branding and the problem is this branding irons can also be faked or patched into another symbol, like you extend the sign on the cow to look like something else and the conclusion is that attribution is hard and the big important thing for us who I don't really care about because but still we did a proof of concept of a real branding iron but we didn't have a cow to just check about metadata modification live but just for the POC GTFO's sake, we did, I asked Moonin to actually forge a branding iron just for the sake of the presentation, that's me. I'm a normal guy. Okay, now let's change a bit from file types and let's move a bit to crypto stuff and the important thing is that usually when you encrypt file, you think that the result is encrypted in the terms of it looks random. So the operation of encrypting a file is usually thought as being random but it's wrong as you saw in the introduction and the result of encryption can be valid. So I'll try to introduce that quickly without all the advanced details. I did another presentation on that before. So basically let's take two fake, I mean, yeah, fake file formats and so we have a data file format and we have a text file format and the properties that are important is that data has an end terminator and what comes after this end terminator is ignored. So that data is tolerating appended data and text also tolerates a comment like I'll just take the normal comments. So you can, as soon as the source format tolerates appended data and the target format tolerates has a way to have a host, parasite, polyglot data, then you can apply that. So basically if you encrypt with AES you get something random in general. You cannot control what you have in input and what you have in output because that's, yeah, encryption. AES is still not broken to my standard here at this. But the thing is AES is a block cipher, it just works with block and if you work with the file then it needs to work with the mode of preparation. Usually what people think know about this is that if you use the bad ECB mode then you can still see the penguin and you know that this is bad encryption. So if you use a mode of encryption that just takes every block and encrypt them independently then identical block will give the same results so it's not good encryption basically. So one of the mode, the CBC mode is actually using an extra parameter, the initialization vector that you initially XOR with the first plain text block. So basically this is an extra parameter and then after encryption by AES with a given key then you get the first cipher block. The thing is this operation is you can do it backward, you can decrypt and XOR also you can decrypt. So basically if you define the first plain text block and the first cipher block then you can and the key is defined once for all, then you can craft initialization vector that will actually make this block and encrypt into this block. So now we control, we can control one block of outputs and then the rest we can don't control that anymore. Okay, but at least now we can craft an initialization vector so that the first block is something that makes it valid and we still have control of something. Okay, now what about the random rest? What comes next? We don't control it anymore because it's a result of AES, we don't control any parameters anymore. We cannot do, we cannot manipulate that. So basically we'll just, here we use the command feature of the text format of the target format so that our initialization vector starts a command. So this will be ignored. Okay, now we have chosen initialization vector so that this encrypt text start a command. So the magic signature start a command and this is ignored. Now if we take this file and we actually close the command we just append data and the original data, then this file is correct and it's equivalent to the initial file we wanted to have as a result of our encryption. Now the thing is if we actually just decrypt with the same initialization vector, we get back the initial blocks because these blocks here we're just depending on the first blocks not on the next blocks. So we get back the original data file and we have something random that we don't control but it's after the end term terminator. So this is ignored and this is still a valid data file as we wanted and this is the text file which has the content that we want. It's not exactly the original file but for a parsing perspective it's exactly the same file. It's just using a command and something garbage. So that's basically the trick of what was called encryption and that's what I used in different ways with PDF flash videos in the introduction. So now because AES, CBC only works on what comes from the previous block then this will indeed encrypt correctly as what we wanted. So now we can encrypt this file with AES into this file because we control the initialization vector but it's perfectly normal AES and AES, CBC is seen as secure. So it's not a problem. It's not that AES is broken. It's not that CBC is bad like ECB. It's just standard, normal. It's a part of the specs all along because the file format tolerates extra data and appended data. So that's the layout of the files before and after encryption and all of you. And you can even try it at home with just OpenSSL for example if you want to entertain your kids or your friends you don't need much. And you should try. It's very good. Go to bed. No, okay, I'll let you try. Okay, another kind of polyglots that is a bit artistic but it's interesting because sometimes advanced file processors just look for the body because they saw a head, they saw a JPEG header and they said, oh, here is my JPEG data. Now let's keep forward. And this is a JPEG zip and a PDF and the PDF shows the image, the JPEG is the image and the zip contains the image but the image is present only once. So basically you put three headers and you make them point to the same data. So if by any chance an advanced tool was just checking the bodies then it will just see one file type and it will ignore the others. So this is a layout. I'm not sure it's really visible now but basically you have the layout of the file and JPEG PDF and zip. So JPEG starts first because it enforces the magic at zero. Then PDF and zip and the image data is only seen once. You still need to abuse the formats a bit. So for example, you have a part of the PDF structure into the zip commands because it was not made to be done so initially. Tough problems. So okay, different one. This is a picture of cat or proof of concept and it's a BMP that is not compressed. BMP has a funny characteristic that enables to define the bit mask of each color. And if you map it to a 32 bits then you can have bits of free space. So you have for each, so you have for each double word, you have 16 bits that you can control. What can you do with that? Well, you can put some sound so that you can play the picture. Seriously. And so now you can, I won't make the demo because that would explode your ears. I mean, well, I could but you would not like me for that. But okay, you have sounds. Initially we put some actual music into the BMP that was playable. It's not secondography because you can play it directly from a sound player. It's just raw PCM. But we went better, we went further. So if you consider the BMP as raw PCM and you encode a picture in the sound so that it's viewable via socks as a spectrogram then you can have another picture in the picture when playing by sound. So never forget to, so never forget to open your favorite picture in the sound player. And you have all the gels here. And Philip, actually he did further and he did with three channels encoding each RGB picture. And he could represent, that's the actual spectrogram view of the sound data that is integrated in this picture. So we've represented with both lines. So this is image and this is sound. Okay, another kind of artistic file. So this time you have two heads with the same type for the same body. And of course, it's not secondography once again because the data doesn't need any extra extraction. It's usable directly. And but it's interesting. So this one I do it live. So this is RGB picture. And does it work? Yes. Ooh, it's a bit small. So where is it? Whoa. This is this picture. So it's a PNG picture. And this is RGB picture. So let's show it again. So basically the data is made of triplets of bytes and for red, green and blue colors. Okay. The trick with that picture is that we, wow, does it work? Yes, it works. We added a palette, a random palette. And basically the trick is that when you have a picture data for a palette, then each byte is an index in the palette. So the idea is that you adjust each RGB value, red, green, blue, so that it actually maps to a different color in the palette so that it's a valid RGB, but it's also a valid picture. Yeah, I probably won't do it live. And so basically you have a second picture that is stored in the same data via the palette. And in this case, this is the picture and this is a barcode inception because you have a QR code and a data matrix code inside. So depending on your reader, then you will see one or the other. The danger is also if you scan directly or if you just swipe, because if you swipe, it will see the smaller one first. So just, you can see it, you can see the data matrix here. It works better with a white line so you can notice it if you are trained. But if you didn't know, then maybe check twice. I mean, feel free to scan it. Yeah, you can trust me. No worries. Okay, I also worked with famous cryptographers and they created a collision of a modified version of Shawan. So this is the full Shawan, all the rounds, but it's just that Shawan has five constants, internal constant, and you just modify four of them so that it looks secure like Shawan, but we actually can control something and get a collision. Okay, the collision rules are complex and it gives you this. Okay, so you have these two blocks that collide, like, oh, really impressive. And the rules are a bit complex. At most, three consecutive bytes without a difference and every day world, only the middle two bytes have no differences. Okay. And this takes, like, between 15 and 30 hours to compute on 80 cores. So, whoa, this is a modified Shawan collision, but it's not exactly super impressive, right? So, okay, so my task was to abuse that with a valid file format. And JPEG has the nice availability to have several, so it has a very short signature, and then it has several markers, E0, E1, and E2, that are all valid, and then we just abuse the length so that we can combine two pictures, and then we, these are the question marks we don't control them. But at least we can put something at the end. The other good thing is that the length is not too long, it's just on the world, not a double world. So you can, at the end of this length that was generated by the cluster, so we don't control, you can put back the start of the next image. The result is a bit more visual, two random pictures. So that's, they actually collide with the modified Shawan. And this will just work with the most JPEG size, I think, with any JPEG, and that was just before the final, so yeah. Just a coincidence. And of course, because the problem is that the back door only gives you one collision block, not as many collisions as you wish, it's also interesting to actually turn this collision into a multi-type, a polyglot collision, so that we could actually make not only a collision with various file types, but also with, so we have the collision, but also with various file types so that the back dooring is more efficient potentially. It doesn't mean Shawan is broken, but it was certainly an interesting experience from a file format perspective. Okay, this one is a real demo. You know probably the Pony Award, and Pony Awards has different categories, and one of the categories, the best song, which I'm not sure is pawning a lot of things exactly. So Melissa won the Pony Award. That's, will it run, can you open, no, yeah. Yes, can you open, no, can you open? Yeah, so I made a PDF with her picture with the pony and the lyrics, okay? But Melissa, so a bad idea, also can, yeah, well, I'm not sure if I should disclose. Can I see, yeah. What happened, I hope I have sound. Oops, where are you? So this is a Nintendo music as a polyglot in the PDF. So you have the music, the lyrics. Oops, why did it stop, I don't know. Now you have a good proof of concept. You have the picture, the sound, the lyrics and the sound. I don't know why it plays so fast. So obviously, never forget to open your PDF in your favorite console emulator. Actually, I went further, and maybe you remember that, this picture, if you're old enough. I mean, I'm young, but yeah. And in a similar way, I use, this is, as you can expect once again, this is a PDF document, and the PDF document is a valid Super Nintendo and Mega Drive ROM with their funding logos up there. Okay, so I still have plenty of time, do I? Yeah, what? Well, I don't know, well, let's, oh yeah, do I do the bonus first? I mean, I still have a lot of time, right? Yeah, oh yeah, so another one, I'll go back to this. Oh yeah, well, I'll do the conclusion. I can do the conclusion on the bonus again. Yeah, okay. So the conclusion, don't forget what you learned today. Open your PDF in a hex editor. Your pictures in a sound player or a console emulator. Just apply any cipher in case, and double check what you printed. So a more serious advice for today. For a security reason, don't do anything. And for a research reason, try everything. And especially if you say that you got something, stop the marketing, and just stop blaming people, oh, they got owned, because usually people blaming the other, they got owned, are usually people who just want to sell their security solution.  That's really annoying, I think. As you can see, I like open, oh yeah, all the proof of concept of this deck are public and everything.  A bit more seriously, so for the file formats, there are many abuses of the specs in many ways as you can see, but the specs itself are often wrong or misleading. The thing is, there is no one who steps in and says, okay, now we want to have like a secure zip, PDF zip secure, we just leave the people who originally created the spec, maybe update them and then we follow them blindly. And there is, we have, how do you say, reaction of the InfoSec community when there is an exploitation, but because the specs suck, there is nothing like I could say, okay, now let's enforce, I don't know, something like zip secure or something that would be more restricted to security and not keep it in control of the company that is just marketing their professional product, but it's still not really secure, you know? A bit like public reviewing, exactly like for cryptocyphers, format specs don't have this and the specs usually are really misleading. And there are very few public parsers and even fewer dissectors, like parsers that really understand what the file format is about, not just the structure and the double word and everything. And now it's, if you make it, it goes in the wrong way as usually, mankind. And for example, standard tools like Office Adobe Reader, they had a secondary parsing mode where they say, oh, this file is detected, it looks like it's corrected, maybe I could recover it. And you can see that they have a secondary mode that is even more lax than the official one. And just, it really puts back together, oh, now it's valid, okay, I'll execute it and suddenly you have something that shouldn't be valid at all. This is just recovered, thankfully. It's good for user, but for security, it's not. Or sometimes it's actually very annoying, like for example, WinRar has a different parsing mode when it's viewing the file and when it's extracting. So yeah, what you see is not what you print, what you list is not what you extract and everything. Yeah, very difficult. And if, once again, this was a kind of overall talk on the possibilities, but for the technical details, check my previous talks because I went into inscription with details, true crypt and everything, or my articles in PoC GTFO. Thanks a lot to everybody. And I have some bonus, but maybe first, oh yeah, so that's it. So do you have any questions? So if you've got any questions, please line up at the microphones. And yeah, let's start with the microphone too. From your experience, do you think it is possible to write a file parser that will properly decode something as seemingly easy as a GIF file? Because Google a couple of years ago decided they couldn't do it and they decided, like for Gmail, when they wanted display pictures, images, they wanted to sanitize the byte stream and finally they decided they couldn't do it so they changed their model so it runs in a different security context. So do you think it's possible to write a parser that is clean, can produce a cleaned up version of a file? People are trying that. I'm not trying personally. I would first like the specs to be a bit more reasonable. But no, I don't know about the formally possibility of this and everything. But what I see is that when they say this buffer should be null, the parsers are never saying, oh, if there is any non null byte here, let's return, if I'm in secure mode and say, no, this should be null, so let's be a bit German and strict. And, but yeah. Okay, then microphone one please. So what would your concise advice be for someone say designing a new binary file format? I mean, it seems to me it's start with a simple header, make sure you check how, you know, that there's no garbage at the end and then that's that. Well, first it depends if your file format is like made of pointers, like it's made to be executed by an OS or if it's like a structure, sequence of structure like images. But yeah, for those OS formats, you should, it's difficult to enforce that because the loader evolves. And yeah, then people have their own interpretation with the compiler, but at least I was thinking when enforcing the actual content, it's more with data file format. And yeah, OS, at least the thing is with the OS, usually you have one standard loader that no one knows fully, but it's like really defining the standard because it's not like everybody likes to write his own elf loader for no reason. Sounds like we need a how-to, thanks. Okay, microphone free. Hi, well, first of all, thanks for the talk and also thanks for your work in POCR or GTFO. I have one question. First of all, where can I download this presentation? And secondly, how many programs should I try it with? I let you find out. Okay, yeah, there are a few extra spoilers in POCR GTFO, but I have my secret. Next one is microphone one. Yeah, you mentioned that in the PDF spec, there are basically two separate parsers kind of, one for viewing and one for printing, but that sounds like a really bad idea. Do you know why that is? Is it for historical reasons or? No, it's not actually the same. In this case, it's not kind of two parsers, it's just you, it's for what you, the requirements of the screen or the requirements of the printer. So it's actually you enable or disable some content here and it's not a discrepancy, it's a part of the specs. So the printing schizophrenia is actually the only one that is official. Yeah, it's layers and you make one layer appear by default for printing and the other for viewing and it's because people are not used to enable or disable layers, then you can abuse that. But to be, I accidentally found a few days ago with a manually edited PDF, a different schizophrenia from Chrome printing and our Linux where suddenly a parameter was ignored and you could have that, but I didn't have the time to experiment that further. And this time it was true schizophrenia, like what was on the screen was different and it wasn't a feature. I mean, it's for a feature for me, but thank you. Microphone free. Yeah, thanks again for the talk and I have a question. How did you find out about all the possibilities about the different parsers? How did you find out what you can exploit? Did you just read the specs and see, okay, I can comment there and I can append there and it stays still valid and then I can combine these two formats or did you just, it's the exhaustive testing. So it's a part of my workflow when I'm doing a poster. I'm reading the specs a bit, but just enough so that I can create a file manually, but to be able to explain it in a clear way and make it small, I need to be sure that I know why each byte is there, just in case I could remove those bytes and make the file smaller so that it fits on the poster. And then in the end, I actually created most of this file manually. So I have good, I have total control of the files. That's why I could mix the Java and PDF all together because they are all written in Assembly EX86. And then I can easily experiment, say, what happens if I change the pointer here, if I suddenly add a buffer and I get a blue screen or different result or everything? So it's not definitely exploitation research, but it's because I study, because I want to make sure what each byte is for, for the clarity, for the final result of the clarity of the poster. Then, consequently, I can manipulate every structure of the file freely and this happens sometimes, but many of those were discovered by accident, like open it in different viewer and you get a crash or something. Okay. But it's not active fuzzing exploitation. And I just read part of the specs that I need to for my limited understanding. And I don't go through the whole specs myself. Okay, thanks. Okay, then we've got a question from the internet. Yeah, this question is actually two questions or kind of a combined question. Somebody wants to know what are, are there any like counter measures and if they are and how could you detect that somebody did like this advanced binary magic? What are the counter measures and, sorry? And if you can detect if somebody did this stuff to a file? Well, you can still check if there is something after the appended data. You can still see, it's a problem that you can, you could check if a buffer is big and it would not use, it's not referenced anywhere in the source. I'm thinking about FX Blitzablighter work on Flash. And as far as I, so it was a sanitizer for Flash files. It was really rewriting the Flash files in a clean way. And as far as I know, no one was really interested. So he, even though it was a fully working tool. So yeah, people just want to open the files anyway. So this work should be done really at the specs level and not as an extra tool. So there are counter measures, but when they are well done, then people don't use them. Okay, microphone two.  Not really. I heard of funny results with the virus security tools, but I'm not trying actively. And yeah, I expect surprises, especially if you see my previous talk that was focused on file schizophrenia, where you have a zip file that was parsed in four different ways, different depending on the tools. But I don't try that actively, lack of time. Okay, thanks. Then we've got another question from the internet. Yeah, the question is, do you think we need to return to raw and plain text, ASCII and ASCII art for textual representation? No, absolutely not, but it's just that if you think about it when you have a specs and it says, this is reserved and should be zero, how many parsers are actually saying there's something wrong because it's not zero? Maybe I'm old fashioned, but definitely as soon as there is such a field, then I can write some whatever in there. And as long as I can allocate a buffer, I can put whatever in there. So no, not going back, but at least not being afraid to enforce a few things like you have for like a safe crypto algorithm where people have public reviews before things are going public, I think. Okay, I have any more questions? No, just a few bonus that I had. Okay, so bonus stage. Yeah, the abstract of that talk was initially ASCII only because an abstract needs to be ASCII only and a PDF TAR polyglot with some ASCII art. So that's probably why people were afraid to actually check my abstract in the first place, but the FAR plan removed all the new lines, so I went back to a standard abstract. But that's the file name of the TAR archive, of the TAR, yeah, okay. Solar Designer did a great keynote a few months ago and this keynote was, the title was, Is InfoSec a Game? And the keynote was a game for which he used an old engine and he used some very nice graphics that can ring a bell, including a dollar one. And so the whole keynote was a game that he played through and he made all the interactions. You have, I don't know if you see the go-to, fail, peak, poke, exploit, patch, so it's really, but it's a bit difficult for people to just enjoy. His game, because they would have to run it into Dustbox and everything and go through the game without knowing really what to do, not everybody has the time. So he created screenshots of all the game and I just wrote it by hand, the PDF that contains all the screenshots in the original resolution with bundle, the actual game so that you can run the game from the PDF, because why not? So that's a good way to distribute it as a single file with everything without any huddle. Yeah, just Quine. Quine, people usually see artistic and valid files as Quine. I don't do that much, but just in case. So Quine is just a file that prints its old source. So basically, this is a PE file that prints is on source, but once again, I don't use Linkers. I create a whole header structure myself. Then you can do that, yeah, Quines are very sexy, so using a compiler chip to my standard or Linker. So you have Quine relays and basically you have a elf that creates the source of a PE and a PE when you create the source of an elf. But I'm really a little player here because there's a Japanese guy who did that with 50 languages. Oh yeah, a few other and description proof of concept, the initial one. So you encrypt this into this and so on. So I had fun with random pictures once again. Then you can also combine. So this is a polyglot with a hash collision and schizophrenic because if you think about it, it's always possible. It's more artistic and that's about it for today. Thanks for your attention.


Join us as we venture across the great Indian technology outback. We visit the country's premier research labs and find out about the latest innovations. All of them have a global impact, all of them designed by Indian scientists. In Bangalore, a nanotechnologist has for the very first time generated electricity by placing carbon nanotubes in the blowing breeze. You can now use these nanotubes as a voltage source, which means that when the liquid flows, you generate voltage and current. It could be a new, never-known-before source of alternative energy. In Mumbai, a chemical engineer is fascination for soil and water and how the two can be used to create a green technology that treats Mumbai's sewage. It could change the face of sanitary engineering. We are looking forward to setting up more and more such plants in different parts of the country as well as in different parts of the globe. And we are looking at our big users, which are the corporations of the cities of the world, as our major customers. Down south in Chennai, the world's first $100 personal computer. It could transform the way we use computers forever. What we really need is to use internet to transform villages. We have kind of summed it up and sort of saying that we would like to see that the per capita rural GDP doubles in 8 to 10 years. That's a kind of dream with which we are focusing. Imagine a typical Indian middle class earning about 8 to 10,000 rupees, a single income family, and the computer is something they've never owned till now. They've only seen the rich kids using it at their homes. And this is where I think no one at PC manages to build a strong emotional connect. So now they feel a sense of pride owning the whole thing. And there is a certain status symbol that comes in along with owning the no one at PC. And I think this is going to be the single biggest success factor as we go along. And finally, in the country's capital, New Delhi, a team of researchers has developed a unique water-based compound that can revolutionise the treatment of brain tumours. It could be one of India's biggest techno-medical breakthroughs in recent times. There are three important points we thought we should actually look for. One is its biocompatibility. That means it should not have any kind of toxic reactions of the body for the body and other systems. Second is that it's biodegradability. That means it has to be degraded inside the body over a time period. And third is its affordability because that is also very important if you want to use it in a country like ours.


Hi everyone, welcome to theCUBE here in Palo Alto, California. I'm John Furrier, your host here talking about the journey to cloud native with a friend of theCUBE, Peter Frey, field CTO and head of field engineering from platform nine. Peter, great to see you again. Thanks for coming on. Yeah, I'm happy to be here looking forward to our conversation today. You know, we love when we get into KubeCon zone. It's all about developer productivity, scaling up infrastructure DevOps, infrastructure as code, continuing to power away. Evaluate many companies in the enterprise on mainstream with Kubernetes. They're kicking the tire, someone jumping into the deep end and evaluating how it impacts their organizations. This is a really big trend and it's a sea change from the era of virtualization. It's happening. So can you share your thoughts on what you're seeing right now?  You guys are running a lot of infrastructure for Kubernetes with big deployments. What are you seeing? Yeah, every one of our customers, every one of the prospects that I talked to out there in the industry, they're all evaluating Kubernetes, trying to figure out what Kubernetes is going to mean to them and their business and how they're going to adopt it. And as they're on that journey, they're realizing that Kubernetes is just not a tool, but it's an entire ecosystem of tools that they need to implement, right? They're on this journey from maybe VMs to a containerized workload. Maybe Greenfield apps are going to be all containerized, but they still have virtualized workloads. Virtualized workloads, they're not going away, right? And so, Kubernetes with the Kuber project allows you to run virtual machines inside the Kubernetes cluster. So you can run that app that's running in the VM that's been available for the last, running for 10 years. And the developer quit five years ago, but they're not going to take time to refactor that right now. So they just want to run it close to the virtualized infrastructure or the containerized infrastructure. So we allow platform nine supports Kuber allowing you to run that kind of workload side by side with your containerized workloads. Peter, I want to dig into this virtual machine workloads, migration to containers. It's a huge topic. A lot of people are talking about it and doing it. Can you tell us more about how some of the enterprises are moving the VM workloads to containers to save costs or make efficiency happen on the infrastructure? And how can you run VMs and containers side by side? What's the benefits of doing that? Yeah. So running virtual machines in containers side by side is absolutely 100% possible. You inside of Kubernetes, there's a project called Qvert that allows you to take virtual machines. You can even import them directly from your VMware environment or your existing infrastructure and pull them into a Kubernetes cluster and then run them natively inside a Kubernetes cluster. People were doing that today with several of our customers. They are, you know, they're doing it for many reasons, right? One of them was, one of our customers just recently moved some Palo Alto network firewalls. They got managed to increase their throughput on the virtual machines, 3X from two gig to six gig throughput. Pretty amazing results. And we were able to migrate that in just a matter of minutes. And it was very impressive. So you get cost savings too. It's not just infrastructure and efficiency. You get to save money. Yeah, yeah. Because now you're running on a single solution, you're maybe not paying for another virtualized environment. You can do it all in a single solution. It also saves money on your infrastructure team, the people that are maintaining the Kubernetes clusters and that sort of stuff, because now you're just one environment instead of two. We had Amelia on the Cube earlier talking about skills gaps. It's always hard to hire people. So that's another factor that drives us all this. And this is really kind of key as companies shift to the modern infrastructure. It's really about leveraging the VMs and containers and Kubernetes together, but the scale will come from the containers and Kubernetes as we're seeing. Can you share, Peter, the patterns and observations that you've seen as you guys have been doing this, you've stumbled the process. She's probably used cases where it's like, do that, but don't do that. That breaks and that will break over there. I mean, is there things that you see that are hotspots or key areas to optimize around when you talk about evaluating and deploying the Kubernetes at scale? Yeah, I think what Kubernetes does is it makes you think different now as a technologist, as a leader and everything that you do at Kubernetes. The way you deploy an app to Kubernetes, the way you maintain that app, the way you upgrade that app, the way that the application is troubleshoot, the way you troubleshoot that and the Kubernetes cluster, it's all kind of wrapped together inside of the single ecosystem, right? And our customers, what they're finding is that talent resource is hard to find and it's really expensive when they find it, right? And I'll give you an example. One of our customers, I won't mention any names, but literally was working on a Friday night. He was developing a CI CD pipeline, kind of a normal DevOps activity, right? And he built this pipeline and he's like, I'm done for the day. So I keep CTL, delete namespace, give the namespace and then he included this thing called dash dash all on the command line. And he's on this production cluster. And what happened was because it included dash dash all, deleted every namespace. Because when you delete a namespace, it deletes all the pods and services in Kubernetes and he literally wiped out that entire Kubernetes cluster in a keystroke, right? Platform nine, because we had backups of their environment, we're able to restore that in less than two hours. The company was fine. Like they failed over to a backup solution and their business still ran, but late on a Friday night, this guy's calling us saying, can you help us? And that's a talent resource because he was a young engineer with Kubernetes. He wasn't familiar with the command line and he fell into one of the possible traps that are out there. And so there are many different ways that Kubernetes can explode and have challenges. At CD can blow up, we could worker nodes can go off lines and each one of these needs to be shot in a different way. So there's, yeah. It's, this is like, you know, the old school classic ops equation. You want to monitor everything you want to have, things instrumented, you know, as it gets more complex, it's harder. So can you share some of the things that you guys are doing with customers deployments? We've heard that you have some large deployments around your customer base. What are some of those complexities that you guys take away from the customers to manage that you do on your side, but lets them still get the benefits of kind of feeling like they're rolling their own and deploying and being more productive. What are some of the things that you guys take care of specifically? Yeah, so Amelia mentioned earlier that we have some customers that are very large distributed edge type customers where they have, you know, multiple Kubernetes clusters deployed regionally around the United States and around the world. And so when you start looking at managing at scale, right, that magnifies the, all the problems that you're going to have to have, right? So you need to have a way of remote managing everything, right, accessing those boxes, be able to fix them, monitoring everything so you get alerts and alarms. And then not only do you have to have alerts and alarms, but you got to have standard operating procedures, right? You need to know what you're going to do when this thing happens, right? So you can quickly resolve the issue and bring back service or restore those, you know, mission critical applications as quickly as possible. You guys have always on assurance. We've mentioned that before in the past. So with some SLAs, you guys have been having success with retail, which I think is a great edge case. As the internet edge comes on, data provisioning, managing appliances, these are critical tasks. You guys have a great example. Is this something that you can share and your point of view on this? Because I think this is an area people are starting to see now extend out from the cloud native, on-premise cloud native cloud. Now you got the cloud native edge emerging. Can you share that distributed computing architecture? What are some of the things that you're seeing out in the field that customers are doing? Yeah, I mean, the retail edge is just one space, right? We work with content delivery networks, the 5G edge, but specifically in the retail edge, right? The retail space, they're trying to reinvigorate how to get feet in their stores, right? And they're trying to do that through technology. And the only way you can do that is through innovation. You have to be able to do that innovation very, very quickly, right? And so anything from in-store marketing that's personalized to you because you have your app installed, they know where you are, you walk and pass an aisle and it's got some advertising that's personalized directly towards you, right? Or makeup stores that are trying to use your facial image from in the store to be able to show you what makeup might look on there. But in order to innovate there, right? You can't have DMs, you can't have applications that can be updated once a month or once a year, right? Or you have to send a person to the store to update those applications. All of this needs to be done remotely through continuous delivery mechanisms to be able to allow you to be effective and efficient in delivering those unique experiences. Well, you guys got a lot of great customer successes, a lot of large scale, big complex customers. The joke in here in theCUBE also out in Kubernetes world like at KubeCon is, there's more complexity coming. So taming complexity is going to be the big focus. What do you think is the right direction that we're going to be going into? What's next? What do you see coming around the corner around making things easier, more automated for customers that don't have to spend a lot of time? And you guys are doing that service right now. What's next for you guys? Where does this go in the next year or two? Yeah, I think everybody's trying to, you know, the developers, their expectation is Kubernetes is an endpoint. They just want to use it and they want it to be available. They want it up and running all the time, right? And I believe that, you know, as we look forward into the future, right, that use case that we started the conversation off with where virtualization is going to run side by side with containerization, it's going to be a critical thing. And we're seeing a lot of that activity at platform nine right now. And that's a tell sign in your opinion, Peter, right? That this is transitions happening at scale. It is absolutely happening. Everybody we talk to is trying to figure out what they're going to do in that space and how they're doing it. Peter, share with the folks watching, what are you doing that's cool that they might not know about? Why is Kubernetes so important? What are some things that you're working on that you could share? Yeah, thanks. You know, what I like to tell our customers and our prospects and everybody I talked to about platform nine is that we deliver production ready Kubernetes, okay? We deliver production Kubernetes upstream Kubernetes straight from the GitHub repo offered as a SaaS managed service, right? We offer full automation around the deployment, the management, the monitoring, maintenance and upgrades of Kubernetes, okay? In fact, I like to tell our customers that we've got the simplest zero-touch Kubernetes upgrade in Kubernetes industry because we test every aspect of an upgrade before it goes into our product that our customers can use. But I think the number one thing that I think we should take away for everybody about platform nine is that our alerting, our monitoring, our support teams, our customer success managers, all of those we've got your back, right? We're an extension of your team. And honestly, you know, when an incident happens something breaks in your Kubernetes cluster we're alerted to it. We're going to alert you to it. Tickets will be created automatically.  We bring our incident manager, our solution architect, our cloud support engineers, and we will stay on that Zoom session until your Kubernetes cluster service has been fully restored. And we can bring the breadth of platform nine's engineering to help with that. Awesome, great to have you on, Peter. Well, I got you here real quick, one final question. I got a lot of people always asking me this, mostly CEOs or executive level folks about what the definition of Kubernetes is. It's changed a lot of its orchestration. How would you define the current state of Kubernetes if someone like a CEO asked you? How would you define Kubernetes today? What is it? I would call it a container orchestration solution allowing you to deploy and manage applications and containers quickly and easily with a lot of automation built in around scheduling and availability of those containers across your infrastructure. And this is the reason why it's so important. It's the runtime, it's pulling things together, it's making things work with containers. That's the cloud native. Peter, thank you so much for coming. Great to see you and we'll see you at the next KubeCon. Sounds great. All right, Peter Frey, field CTO and head of field engineering, part of state of on-premise edge with cloud native. I'm John Furrier with theCUBE with platform nine. Thanks for watching.