Chapter 388: Middleman Attack
readx;
Though. Permission control has also been designed and the system has been layered, but it is not done well in this regard, and it can even be said to be quite crude. Pen? Interesting? Pavilion wWw. biquge。 info
However, this is understandable, after all, this system has just come out, and they were in a hurry to be able to launch it as soon as possible, and some important functions were implemented first, and for ordinary users, the permission control system they designed has basically been able to meet the requirements.
The Windows3X series of operating systems is not developed for real-time operating systems at all, real-time systems, they have a special WindowsNT series, and its permission control is much more perfect than this, and the stability is also greatly enhanced. However, by the same token, it is more difficult for them to customize the NT system, and in general, it is not as convenient as using this directly.
Moreover, the Windows series of systems are all closed-source, to put it bluntly, this is commercial software, you want to use it, you have to buy it, they are using it now, it is a violation of intellectual property law, and they are using piracy. If Microsoft finds out, they can sue through judicial channels. Of course, as for the inadmissibility of domestic courts, this is another matter.
Although the permission system of the system is simple, at the user layer, it is absolutely forbidden to operate on the system layer, because it will threaten the stability of the system, as long as a key data structure of the system is destroyed, it is very likely that the system will crash.
The operations involving the underlying layer of the system are implemented through the system functions in the SDK package provided by Microsoft. These system functions do not manipulate key data in memory, but implement certain functions in the way that the system programmer expects.
Doing so will not affect the stability and security of the system. It also allows programmers who write application software to get the desired functionality, and also simplifies the operation steps. Keeping them from caring about the underlying operating mechanism is a good way to kill three birds with one stone.
Of course, it does not mean that the things in the system layer are completely inaccessible to the user layer, and those virus Trojans want to achieve their own functions, to a large extent, they take advantage of the vulnerabilities of the system and obtain permissions beyond the user layer.
However, their system has been extremely optimized by them. Some common vulnerabilities have basically been patched, and it is still very difficult to find such a vulnerability.
So. After hearing Lin Hong's words, Yu Bo said unashamedly: "You have to do it yourself." It will not be automatically delivered to your door. , couldn't help but smile coldly, and retorted:
"You're right. Do you have the ability to take a look? ”
Yu Bo still has some opinions about Lin Hong in his heart, after all, it was his arrival that caused everyone to panic, worried that the hard work he had worked for for many years would be pushed back. In addition, he is also very unaccustomed to Lin Hong's understatement, even if your company has written a control system by itself. But you can't just talk about it, can you?
They've been immersed in the system for so long that they think they know about it. It's just second only to those who develop the system.
Of course, he knows that he has to take the authority himself, and it will not be automatically sent to the door, but it is easier said than done, and some things are standing and saying that he doesn't have back pain, and he has seen a lot of such people.
Yu Bo thought that Lin Hong wanted to show himself in front of their leaders, so he deliberately "stuck green onions in his nostrils" - pretending to be an elephant.
When Lin Hong heard his words, he smiled, and did not take it to heart, but said to Cao Xingping and Xu Zhizhong:
"I've been in this situation before. Many Trojans and worms intercept data by rewriting the underlying functions of the system. In the field of system security, there is a special term called 'man-in-the-middle attack'. ”
Man-in-the-middle attacks are a very old and effective attack method in the field of hacking.
Its essential principle is to connect an attacker's own "forwarder" on the link of data flow, so as to achieve the purpose of sniffing and stealing data.
In this case, it is like cutting off a water pipe, and then connecting a self-connected adapter on it, this adapter will not affect the normal flow of water in the water pipe, it only monitors the water flow, once it is found that there is a fish passing in the water flow, it is responsible for recording this information, and even, it has some other more magical functions, for example, replacing the fish with a loach.
And the people at both ends of the pipes, due to the lack of communication, have no idea what is really happening to these streams of water in the process of flowing.
They don't know that the fish they sent privately was monitored by someone else, or even dropped by someone, and the sender thought they had sent a fish, while the receiver thought they had sent a loach.
In the network field, this middleman can even be a computer, where user A sends information to user B, but someone secretly lets the information flow run to computer C, and user B has no idea that his information has been spied on. Since computer C only copies and backs up the data, and does not modify the information at all, it is a passive text, so it is difficult for AB to detect this behavior.
In a stand-alone machine, the man-in-the-middle attack is more like this time, taking over a certain link or function, which is equivalent to another layer on the outside, and if you want to access the real content, you must enter from the middleman.
On the surface, there is no difference between the infected system and the original system, and it will not affect the normal flow of data, nor will it affect the stability of the system.
And their current radar control system, obviously, is also like this, there is a certain thing that just takes over a system function called in their system, but when the other party is dealing with the underlying function, there is a place that is not handled well, resulting in when they call this function, there is no successful call at all, and there is no return value as a result.
Xu Zhizhong and Cao Xingping glanced at each other, and then Xu Zhizhong asked, "Xiaohong, can you be sure of this reason?" ”
What Lin Hong said was easy to understand, and they understood it.
Although ** is not far from ten, but for the sake of insurance, Lin Hong still has to verify it himself before he can pack the ticket.
"Well, if it's convenient, I'll verify it in my own way." He said.
Xu Zhizhong thought for a moment, then nodded in agreement.
At Cao Xingping's signal, Yu Bo had no choice but to give up his seat.
Lin Hong sat down, then called up the compiler, and immediately started writing a small tool.
This little tool is very simple, with only one function, that is, it continuously calls the previous function, and then uses the memory dump method to save the specified data in the memory in a text file, and at the same time, also monitor the return result of that function.
Then, Lin Hong redid the process that Yu Bo had done before, restarted, then entered a silent state, and then resumed again......
A new file is generated.
Lin Hong used the editor to open it and began to analyze the contents of the text file.
Standing behind Lin Hong, the aftermath of wanting to see his good show was suddenly a little dumbfounded.
I don't know if Lin Hong did it on purpose or what, his movements are very fast, and he writes code as if he has written it countless times in his heart, so he wrote it directly in a flash, and after slightly fixing a few errors caused by negligence, this gadget was quickly written. The whole process took less than three minutes.
Aftermath stood behind him, staring at him without blinking, not keeping up with him. Although I understand the general meaning, I can't understand the details at all, and I don't know why the other party wrote it like this.
And when he saw the text file that was finally generated, he was even more dumbfounded, because the content in it was logically inaccessible at all, and it was the memory data of the system layer.
"This can't be ......" Yu Bo wanted to say something, but immediately shut up, because the facts were in front of him, and he said that it was impossible, wasn't that a nonsense?
Lin Hong quickly read the record, and finally nodded:
And so it was. There is indeed a hidden program in there that takes over this function. ”
The record in this log file shows that when entering the silent state, the function stack in the memory has changed significantly, and the data shows that a new function has been pressed into the stack.
Stack is a special data structure in the data structure, which is characterized by "first-in, last-out", for example, the magazine is a typical stack structure, when the bullet is loaded, it is pressed in first, and then ejected, and the first to be loaded is the last to be shot.
In the program, the data and variables in the function are also "pressed in" one by one in a certain order, and after the execution is completed, they are "popped up" one by one.
If you want to monitor changes in a function, you just need to monitor the stack structure at the specified location. The data that Lin Hong dumped out of memory is what is in the stack.
As a result, the faces of the other three people present changed slightly.
This means that what Lin Hong said is correct, and there is indeed a hidden program operating secretly at the bottom of the system, and they had no knowledge of it before.
Xu Zhizhong was okay and was already mentally prepared, but Cao Xingping's face became extremely ugly.
"Then why didn't you have this problem when you first started up, and only when you go into silence?"
At this time, Yu Bo suddenly interjected and asked, at this time, he had no heart to respond to Lin Hong.
"This is because when the system starts, your shell program starts first, and then the other party starts, so that it is not affected by it at all, and the two are fine. But when it enters the silent state, the shell program will be closed, and when it is started again, the hidden program has completely taken over the entire function interface, which may be that the other party has not handled this part well, resulting in a conflict between the two, and the function called by the shell program has not been able to return a valid value, and you happen to have no judgment on this return value, which eventually leads to the collapse of the entire shell program. (To be continued)