The Cheshire Cat
06-29-2009, 11:08 PM
#disclaimer - The information covered in this paper is for learning purposes only. The author holds no responsibility for the actions taken by individuals by the information disclosed within. The author is not liable for any damages caused by any individual using this information for malicious intent and or conspiracy to cause malicious intent. This is also not a 'step by step' paper. For the skript kiddies looking for easy answers, GO SOMEWHERE ELSE!
#intro - In this paper we are going to look at of the more uncommon or rarely heard of methods of Denial of Service. It's a well known fact that BotNets are used for Denial of Service attacks. It's a little known fact that you can do just as much damage without the hassle of having to go through the drawn out process of building a BotNet. I'm going to address a few methods, how they work, what they do, and how you yourself can use these techniques. Prepare to enter the world of easy DoS.
#definitions and pre-req. - A Denial of Service attack, also known as a Dos or DDoS, is an attempt to make a computer resource or network unavailable to legitimate intended users. A Denial of Service generally consists of efforts of a person or a group of people to prevent a website or service from from functioning correctly. A very common Denial of Service attack, which we are going to cover the methods of, involves saturating the target machine with external communication requests so that it cannot respond to legitimate traffic. There are many other types of a attacks for a denail of service. We are mainly concerned with only a few of them in this article.
As a pre-req for this paper, and for you to completely understand this, you need knowledge of the TCP/IP protocol and basic networking knowledge, server functions and request handling, basic packet structure theory and packet crafting, and fluid use of CLI and terminal functions
#phlashing//bricking - This is something relatively new, and not widely used but can be the most malicious of all the DoS types. Phlashing is considered a Permanent Denial of Service attack because it causes damage to the network on a hardware level, instead of software lever or by using up resources. In theory, phlashing is considered one of the easier levels of causing a Denial of Service but the most improbable to perform remotely. The Permanent Denial of Service relies on flaws in remote management interfaces of routers, printers and other networking/networked devices. Other flaws consist of default passwords, or easily bruteforced or 'guessable' passwords on root or administrator accounts for that device. These flaws leave the door open for an attacker to remotely update the device with modified, corrupt of defective firmware image. The updating of this router with faulty firmware 'bricks' the device rendering it useless and unable to serve the network in which it is placed.
Consider this hardware attack can be much faster and require less time then building a BotNet and is, for the most part, easily carried it out, it is of the most dangerous. Considering that, let us look at an attack in real time.
Now, considering the amount of IP's that are assigned to countries like the US, China, Japan and the UK, we are going to be scanning in a less populated country for misconfigured routers and the like. To make this a little more simple, we are going to look for a web based configuration pages. You may also be able to configure routers via telnet on port 23, but we can save that for later in the paper.
Let us take a look at a real life PoC.
http://i70.photobucket.com/albums/i91/O__RLY/bricked1.jpg
There are loads of these around, you just have to know where to look
http://i70.photobucket.com/albums/i91/O__RLY/bricked2.jpg
Updating the firmware/software of the router
You can open up notepad and type gibberish, or you can do whatever. Just so long as you have the correct extension.
http://i70.photobucket.com/albums/i91/O__RLY/bricked4.jpg
END_OF Bricking
#RouteNet
As we move on, I'm going to get into a little bit of CLI and routers. The most known way to configure routers is web based. You enter in your local gateway, get a login prompt and then you get a GUI to work with. What most people don't know is that routers also have a Command Line Interface that gives you way more functionality then the GUI.
http://i70.photobucket.com/albums/i91/O__RLY/bricked5.jpg
http://i70.photobucket.com/albums/i91/O__RLY/bricked6.jpg
I use putty to telnet into the router, just because it's clean and it's not shitty like the command prompt.
http://i70.photobucket.com/albums/i91/O__RLY/bricked7.jpg
As you can see, I've dumped the configuration file. It's displayed as plain text on the screen. This is most likely 'default'. The nice thing about this is, we can copy it over locally and edit the file to whatever we choose and we can upload it and replace it.
http://i70.photobucket.com/albums/i91/O__RLY/bricked8.jpg
http://i70.photobucket.com/albums/i91/O__RLY/bricked8.jpg
Now, every router is different because of vendor/model/version. Nothing is going to be universal. I'm not going to get into how to code up a bot, where to put the bot and how to use a bot because it's too much work for me, and how are you ever going to learn if you're taught EVERYTHING. The nice thing about having a bot on a router, depending on functionality, is that you now have a backdoor, and complete control over EVERYTHING. You can use this to point to a phisher for paypal/banks/credit cards or damn near anything. You can also use them for DDoS'es. This works out 10x better then computers because they do not make an AV for routers, also, routers are on 99% of the time unlike computers where they are shut down when you're done using them or go into hibernation.
Proof this isn't a one off.
http://i70.photobucket.com/albums/i91/O__RLY/bricked9.jpg
http://i70.photobucket.com/albums/i91/O__RLY/bricked10.jpg
Now, this isn't the only thing you can do while you have control over the router through the CLI. The possibilities is endless and you should let your imagination run wild.
#END_OF RoutNet
Seeing as I'm out of time right now, I'll update this thread with more information on techniques. If anyone else would like to add anything, clear up anything that is wrong with or just wants to ask questions you are more than welcome to. In fact, I urge you to help contribute to this. This is just just to help educate people on various well known and used and unknown and rarely used forms of DoS. As we go on I will try to explain more about Distributed attacks, smurf attacks, reflected attacks and other such things.
#intro - In this paper we are going to look at of the more uncommon or rarely heard of methods of Denial of Service. It's a well known fact that BotNets are used for Denial of Service attacks. It's a little known fact that you can do just as much damage without the hassle of having to go through the drawn out process of building a BotNet. I'm going to address a few methods, how they work, what they do, and how you yourself can use these techniques. Prepare to enter the world of easy DoS.
#definitions and pre-req. - A Denial of Service attack, also known as a Dos or DDoS, is an attempt to make a computer resource or network unavailable to legitimate intended users. A Denial of Service generally consists of efforts of a person or a group of people to prevent a website or service from from functioning correctly. A very common Denial of Service attack, which we are going to cover the methods of, involves saturating the target machine with external communication requests so that it cannot respond to legitimate traffic. There are many other types of a attacks for a denail of service. We are mainly concerned with only a few of them in this article.
As a pre-req for this paper, and for you to completely understand this, you need knowledge of the TCP/IP protocol and basic networking knowledge, server functions and request handling, basic packet structure theory and packet crafting, and fluid use of CLI and terminal functions
#phlashing//bricking - This is something relatively new, and not widely used but can be the most malicious of all the DoS types. Phlashing is considered a Permanent Denial of Service attack because it causes damage to the network on a hardware level, instead of software lever or by using up resources. In theory, phlashing is considered one of the easier levels of causing a Denial of Service but the most improbable to perform remotely. The Permanent Denial of Service relies on flaws in remote management interfaces of routers, printers and other networking/networked devices. Other flaws consist of default passwords, or easily bruteforced or 'guessable' passwords on root or administrator accounts for that device. These flaws leave the door open for an attacker to remotely update the device with modified, corrupt of defective firmware image. The updating of this router with faulty firmware 'bricks' the device rendering it useless and unable to serve the network in which it is placed.
Consider this hardware attack can be much faster and require less time then building a BotNet and is, for the most part, easily carried it out, it is of the most dangerous. Considering that, let us look at an attack in real time.
Now, considering the amount of IP's that are assigned to countries like the US, China, Japan and the UK, we are going to be scanning in a less populated country for misconfigured routers and the like. To make this a little more simple, we are going to look for a web based configuration pages. You may also be able to configure routers via telnet on port 23, but we can save that for later in the paper.
Let us take a look at a real life PoC.
http://i70.photobucket.com/albums/i91/O__RLY/bricked1.jpg
There are loads of these around, you just have to know where to look
http://i70.photobucket.com/albums/i91/O__RLY/bricked2.jpg
Updating the firmware/software of the router
You can open up notepad and type gibberish, or you can do whatever. Just so long as you have the correct extension.
http://i70.photobucket.com/albums/i91/O__RLY/bricked4.jpg
END_OF Bricking
#RouteNet
As we move on, I'm going to get into a little bit of CLI and routers. The most known way to configure routers is web based. You enter in your local gateway, get a login prompt and then you get a GUI to work with. What most people don't know is that routers also have a Command Line Interface that gives you way more functionality then the GUI.
http://i70.photobucket.com/albums/i91/O__RLY/bricked5.jpg
http://i70.photobucket.com/albums/i91/O__RLY/bricked6.jpg
I use putty to telnet into the router, just because it's clean and it's not shitty like the command prompt.
http://i70.photobucket.com/albums/i91/O__RLY/bricked7.jpg
As you can see, I've dumped the configuration file. It's displayed as plain text on the screen. This is most likely 'default'. The nice thing about this is, we can copy it over locally and edit the file to whatever we choose and we can upload it and replace it.
http://i70.photobucket.com/albums/i91/O__RLY/bricked8.jpg
http://i70.photobucket.com/albums/i91/O__RLY/bricked8.jpg
Now, every router is different because of vendor/model/version. Nothing is going to be universal. I'm not going to get into how to code up a bot, where to put the bot and how to use a bot because it's too much work for me, and how are you ever going to learn if you're taught EVERYTHING. The nice thing about having a bot on a router, depending on functionality, is that you now have a backdoor, and complete control over EVERYTHING. You can use this to point to a phisher for paypal/banks/credit cards or damn near anything. You can also use them for DDoS'es. This works out 10x better then computers because they do not make an AV for routers, also, routers are on 99% of the time unlike computers where they are shut down when you're done using them or go into hibernation.
Proof this isn't a one off.
http://i70.photobucket.com/albums/i91/O__RLY/bricked9.jpg
http://i70.photobucket.com/albums/i91/O__RLY/bricked10.jpg
Now, this isn't the only thing you can do while you have control over the router through the CLI. The possibilities is endless and you should let your imagination run wild.
#END_OF RoutNet
Seeing as I'm out of time right now, I'll update this thread with more information on techniques. If anyone else would like to add anything, clear up anything that is wrong with or just wants to ask questions you are more than welcome to. In fact, I urge you to help contribute to this. This is just just to help educate people on various well known and used and unknown and rarely used forms of DoS. As we go on I will try to explain more about Distributed attacks, smurf attacks, reflected attacks and other such things.