Wonderful! There are so many modern software engineering design ideas hidden in "Iron Man"

Wonderful! There are so many modern software engineering design ideas hidden in "Iron Man"

1. Iron Man

Dadong: After the film market boom during the Spring Festival in February, March is relatively more touching.

Xiaobai: Yes, yes, yes. The movies released in March are like “spring” in spring for us!

Dadong: Wow, it seems Xiaobai is also a movie fan! Are there any movies that you particularly like?

Xiaobai: "Captain Marvel"!

Dadong: Indeed, to put it simply, Captain Marvel is the prelude to the finale of the third phase of the Marvel Universe (Avengers 4). Her appearance heralds the end of the old Avengers and the rise of new heroes.

Xiaobai: As an old Marvel fan, I really can’t wait.

Dadong: From 2008 to 2018, we have witnessed Marvel's glorious ten years and forged the road to heroes. So, Xiaobai, which Marvel hero do you like the most?

Xiaobai: "I am willing to use all my abilities to protect everything I love. Because of you, I know that I must continue to become stronger. Because of protecting the world, I found the meaning of myself and the battle suit."

Dadong: There would be no Marvel movies without Iron Man.

Xiaobai: Iron Man is my hero!

Dadong: Haha, then do you know Iron Man’s armor?

Xiaobai: Of course, Iron Man's armor has been upgraded from generation to generation. The armors in "Iron Man 1" and "Iron Man 2" were complete sets and could not be taken apart, but in "Iron Man 3", the armors were separated, the arms were arms, and the legs were legs.

Dadong: Yes, this is what we often call the design concept of modern software engineering.

Xiaobai: Hmm? How do you say this?

Dadong: Haha, you don’t understand this. Let me explain it to you slowly.

2. Component-based design

Dadong: Let’s talk about software engineering first. Software engineering is an engineering discipline that guides the development and maintenance of computer software. It uses engineering concepts, principles, techniques and methods to develop and maintain software, combining management techniques that have been proven correct over time with the best technical methods currently available.

Xiaobai: So what does modern software engineering mean?

Dadong: Software is developing, and so is software engineering. Today’s software engineering has developed on the basis of traditional software engineering. It is both a natural evolution of traditional software engineering concepts and technologies, and has unique basic characteristics that are different from traditional software engineering.

Xiaobai: How do you mean?

Dadong: Software engineering is a discipline that involves the research and application of principles, methods and tools for software planning, requirements analysis, design, coding, testing and maintenance.

Xiaobai: Such a wide range!

Dadong: The detachable armor in "Iron Man 3" is a component-based design approach, which is also the design concept of modern software engineering.

Xiaobai: I learned something new!

Dadong: Speaking of componentization, Xiaobai, do you still remember the virus we mentioned last time?

Xiaobai: Of course, it’s a worm virus! I still remember that this virus can automatically scan for program vulnerabilities and replicate continuously. Once it finds other targets, it can spread rapidly. It is very active.

Dadong: Xiaobai is really good. He can remember everything I said.

Xiaobai: Haha. So what is the connection between worms and componentization?

3. Flame virus

Dadong: Let’s take the Flame virus (also known as Flamer, sKyWIper, Skywiper) as an example. Its attack principle is componentization - first throw a perception module to the victim to understand the user's environmental attributes, and then load different attack modules according to the specific situation.

Xiaobai: Flame! I need to remember this name.

Dadong: The Flame virus is a computer virus discovered in May 2012, also translated as "Super Flame". It is written in Lua and C++ languages. It exploits two flaws in Microsoft's Windows operating system to invade computers and inject other programs. It is known as the most complex malware in history and has spread widely in the Middle East.

Xiaobai: Just hearing this name sounds very...

Dadong: The Flame virus disguises itself as a legitimate program developed by Microsoft, invading personal computers and stealing private data. Its main function is to collect personal information and upload it to the Internet, and to carry out activities in several ways, including recording, capturing screen shots, and invading nearby Bluetooth devices. The size is about 20MB and contains several modules, including a decompression library, SQL database, and Lua virtualizer.

Xiaobai: Won’t that be discovered?

Dadong: Because it will delete itself when it receives instructions, and after being injected into other programs, it will set its own memory block to be unreadable, unwritable, and non-executable in user mode, so it is difficult to be detected by other programs in user mode.

Xiaobai: This is too scary.

Dadong: The Flame virus, like the Panda Burning Incense virus, is also a variant of the "worm virus" that has undergone many mutations. It began to wreak havoc on the Internet on October 9, 2005. It is mainly transmitted through downloaded files and causes serious damage to computer programs and systems.

Xiaobai: It turns out that viruses are all connected to each other.

4. The infamous Stuxnet virus

Dadong: In that case, I have to talk about this~

Xiaobai: Hmm? What else?

Dadong: The emergence of the Flame virus has aroused great concern about cyber espionage and cyber warfare. Iran believes that the Flame virus is closely related to the notorious Stuxnet virus that targeted industrial systems.

Xiaobai: It turns out that all viruses are connected!

Dadong: According to analysis, the Flame virus is a modular, scalable and updateable threat with wide concealment and strong offensiveness. The Flame virus has powerful attack capabilities. It can run on Windows XP, Windows Vista and Windows 7 systems, hide itself as a temporary file named "~" like Stuxnet, use kernel mode and user mode logic at the same time, etc.

Xiaobai: And it’s “powerful”.

Dadong: Generally speaking, the Flame virus is very similar to Stuxnet in some of its working principles, but the code base and specific implementation are very different.

Xiaobai: So the Flame virus is more complex and has stronger attack capabilities?

Dadong: That's right. Flame uses a similar but much more complex structure, which in many ways reminds researchers that these attacks are highly dangerous.

Xiaobai: That makes me feel creepy. What is the difference between it and the Stuxnet virus we just talked about?

Dadong: Through analysis, we can find that although the Flame virus code base is different from the Stuxnet worm, the attack targets and techniques of the two are very similar. Obviously, this threat has been developed for several years, and there is probably a large and specialized team behind it that is well-trained.

Xiaobai: Otherwise it wouldn’t be possible for him to be so powerful for no reason.

Dadong: Stuxnet was discovered in July 2010. This worm virus specifically targets computer control systems for water supply, power generation and other infrastructure designed and manufactured by Siemens. One of the important reasons why Stuxnet became famous that year was that it used "zero-day vulnerability" attacks, that is, the virus writers used four system vulnerabilities they discovered to launch attacks before the software company released patches. The known vulnerabilities used by the Flame virus include the two vulnerabilities that Stuxnet attacked.

5. Prevention

Xiaobai: Dadong, the Flame virus is so dangerous, is there any way to prevent it?

Dadong: The danger of Flame virus is undeniable. For confidential organizations such as government and enterprises, Flame virus is definitely a target that needs to be focused on. Currently, there are many Flame virus detection tools, so there is no need to be nervous about Flame virus.

Xiaobai: Just test it and it will be ok!

Dadong: Generally speaking, the Flame virus is still in a state of "much ado about nothing". There is no evidence that the Flame virus has actually infected people in China, so we don't need to be too nervous. The Flame virus has received a lot of attention because of the "wolf cry" effect brought by the previous stuxnet and Duqu viruses, which has magnified its harmfulness to a certain extent. Those "most **" are the signs. It is true that it is very dangerous, but generally speaking, it is still an industrial virus targeting government and enterprises, and it is not a big threat to ordinary users.

Xiaobai: As an ordinary user, I don’t have to worry at all?

Dadong: Haha, of course this can’t be used as an excuse for us to be careless. We still need to take precautions.

Xiaobai: So what are the measures?

Dadong: Perform virus checks and backups regularly. If something goes wrong, immediately reboot the computer and then restore it to full health.

Xiaobai: It is necessary to make a backup.

Dadong: Haha! Smart Xiaobai.

<<:  Is listening to music to maintain health reliable? Let's take you into the wonderful "music therapy"

>>:  What is DHA, which can supplement brain nutrition and improve memory, and is called "brain gold"?

Recommend

In-depth review: The conversion rate is only 9%, I summarized 6 pitfalls

As one of the proven effective means of attractin...

How to choose keywords for Google promotion?

At present, this Google promotion series is conti...

"China's Sky Eye" has made new discoveries!

The "China Sky Eye" has made new discov...

Android can't conquer TV games? Who else can promote home entertainment?

In the past two years, the trend of smart TVs has...

You should use Node.js for your side projects

There is one thing that unites people in the soft...

VideoStudio 2020 video tutorials from beginner to advanced

Chapter 1: The Basics 1.1: Working interface - un...