After much anticipation Backtrack 5 is here, as promised and on schedule. I've downloaded and run up a VM. Here's my first screenshot of it. It looks cool:
I've gone with the Gnome VM, as I used to use Ubuntu, so I thought I would try it out with the Gnome desktop first. However, I am so used to KDE now, I may go back to that - not sure, too much choice!
I usually use Backtrack as my main OS (total immersion is good for learning all the tools). I will run this VM for a few days, before taking the plunge, blowing away BT4 and installing BT5.
One thing to note on the VMs is that they are packed with 7zip, so you will need to do the following to unpack them (if you are using BT4 as your main OS)
apt-get install p7zip
7z x BT5-GNOME-VM-32.7z
This is a very short post, as I am going to be busy today (My SANS 542 course-ware arrived this morning as well, so lots to do!)
(I can already see that more things work well straight out of the box)
Wednesday, 11 May 2011
Saturday, 7 May 2011
Attacking and defending virtual Cisco routers on Backtrack (part 2 - Web and SSH)
In part one of this article (available here) I talked about using GNS3 to replicate and test virtual router networks. I also showed how the default setup of telnet on many Cisco products can be vulnerable to both sniffing and brute-force attacks, and how SSH can easily be implemented to provide more protection.
In this article, I will show how the default web UI on many Cisco routers can be a serious liability, and how to disable it, and also talk about a risk associated with SSH (demonstrating SSH brute-force).
Please remember to use these techniques only for legitimate educational and testing purposes and not maliciously.
So first let's talk about router Web UIs...
Cisco's horrible old Web UI
It's getting very old now, but it is a default on many router models. Yes, it's the Cisco hideous "pretend to be a console" Web UI.
Cisco made an effort to produce an improved GUI called SDM. Granted, it does look a lot better.
However, although it looks nicer and adds helpful ease-of-configuration, it suffers from some of the same HTTP basic authentication issues above so my advice is to switch it off, and learn how to configure a router properly, i.e. from the command line.
(Also SDM prerequisites may mean you have to use an insecure browser and java-plugin version and it can be a real pain to install, and get it working with your browser - It's really not worth the hassle)
SSH brute force
So, all we have open is SSH, but that is not the end of the story. SSH can still be insecure as well.
Brute force is more difficult, because now an attacker needs to find a username password combination, but if this is an external router, an attacker still has as long as it takes to attack the SSH port to brute-force the password. There are many tools that can try hundreds of millions of attempts over an extended period of time until the username and password are guessed.
As we have seen Hydra a few times already, here is an example with Medusa:
medusa -h 192.168.50.254 -u bob -P ./passlist.txt -M ssh -F -m BANNER:SSH-2.0-ssh-client -v 4
Medusa v2.0 [http://www.foofus.net] (C) JoMo-Kun / Foofus Networks
ACCOUNT FOUND: [ssh] Host: 192.168.50.254 User: bob Password: blah [SUCCESS]
The more usernames and passwords configured on the system, the higher the risk that one combination will be found, and there are many bots on the web that will trawl for Telnet and SSH servers, and try to brute-force them with commonly used passwords. Choose strong and long passwords.
The answer is to lockdown SSH to just the administrative systems IP addresses, and on Cisco routers this can be done with extended access-lists to lock-down the vty lines, as follows (the administrators systems here are 192.168.206.128 and 192.168.206.130)
R3(config)#access-list 101 permit tcp host 192.168.206.128 any eq 22 log
R3(config)#access-list 101 permit tcp host 192.168.206.130 any eq 22 log
R3(config)#access-list 101 deny ip any any log
R3(config)#line vty 0 4
R3(config-line)# access-class 101 in
R3(config-line)# transport input ssh
R3(config-line)# login local
Lockdown guidelines
There are some really useful and easy to follow lockdown guidelines for Cisco routers and switches (and much more besides) at the following location:
http://www.nsa.gov/ia/guidance/security_configuration_guides/index.shtml
In this article, I will show how the default web UI on many Cisco routers can be a serious liability, and how to disable it, and also talk about a risk associated with SSH (demonstrating SSH brute-force).
Please remember to use these techniques only for legitimate educational and testing purposes and not maliciously.
So first let's talk about router Web UIs...
Cisco's horrible old Web UI
It's getting very old now, but it is a default on many router models. Yes, it's the Cisco hideous "pretend to be a console" Web UI.
This UI was designed years ago, when security was not seen as so much of an issue. This is a really nasty interface (which I find slower and more difficult to use than the command line). This UI is enabled by default, on many Cisco router models, with no security.
Due to the sticky nature of router and switch infrastructure (it is costly, and time-consuming to replace, and requires downtime) routers of this age and type are very common.
With this example, by default if you click on "15" you end up with an unauthenticated login, at Exec level 15, i.e. with full access to view and change the configuration, and with complete control of the router.
Even if this router is only accessible internally, I would say that this MUST be locked down from the defaults. As I described in the previous article you can add an enable password for some basic configuration security.
R0(config)#enable secret mypassword
This is a global change to the router, affecting multiple protocols, and will enable HTTP basic authentication. Though this is a slight improvement, there still some serious issues with that.
Issues with HTTP basic authentication
There are various issues with HTTP basic authentication which include; No lockout, no session limits or expiry, and the password is sent base64 encoded (i.e.in clear-text) so it can be sniffed of the wire.
Couple that with the fact that there is a known username (of "enable") and only the password needs to be guessed, this is a problem.
To show the plain text nature of this authentication method, we can issue either use a sniffer like tcpdump or Wireshark to intercept the HTTP headers. Below is an extract from the header including the base64 encoded password.
...
Keep-Alive: 300
Proxy-Connection: keep-alive
Authorization: Basic ZW5hYmxlOm15cGFzc3dvcmQ=
Encoding, is NOT encryption. Base64 encoding is designed simply to protect and represent binary data within text-based protocols. Decoding is trivial. Here is a useful site: http://www.opinionatedgeek.com/dotnet/tools/base64decode/
(Pasting in the "ZW5hYmxlOm15cGFzc3dvcmQ=" above, we get the username and password "enable:mypassword" as expected)
To brute-force a HTTP basic password with Hydra is trivial, and can be quick with targeted dictionaries. See the example below:
hydra -l enable -P rockyou100.txt 192.168.50.254 http-get /
WARNING: Restorefile (./hydra.restore) from a previous session found, to prevent overwriting, you have 10 seconds to abort...
Hydra v5.9 (c) 2010 by van Hauser / THC - use allowed only for legal purposes.
Hydra (http://www.thc.org) starting at 2011-05-07 11:33:53
[DATA] 16 tasks, 1 servers, 100 login tries (l:1/p:100), ~6 tries per task
[DATA] attacking service http-get on port 80
[80][www] host: 192.168.50.254 login: enable password: secret
[STATUS] attack finished for 192.168.50.254 (waiting for childs to finish)
Hydra (http://www.thc.org) finished at 2011-05-07 11:34:05
Ok, so you may say, "I will lock this service down to just the IP addresses of my admin machines". I would say no; It's a pain to use, it's very insecure, just turn off this web UI completely with the following command.
R2(config)#no ip http server
Confirm this is done with nmap:
nmap 192.168.50.254
Starting Nmap 5.35DC1 ( http://nmap.org ) at 2011-05-07 12:30 BST
Nmap scan report for 192.168.50.254
Host is up (0.0019s latency).
Not shown: 999 closed ports
PORT STATE SERVICE
22/tcp open ssh
MAC Address: C0:00:2A:5A:00:01 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 7.03 seconds
Just SSH, that's better.
Cisco's Secure Device Manager (SDM)
Cisco made an effort to produce an improved GUI called SDM. Granted, it does look a lot better.
However, although it looks nicer and adds helpful ease-of-configuration, it suffers from some of the same HTTP basic authentication issues above so my advice is to switch it off, and learn how to configure a router properly, i.e. from the command line.
(Also SDM prerequisites may mean you have to use an insecure browser and java-plugin version and it can be a real pain to install, and get it working with your browser - It's really not worth the hassle)
SSH brute force
So, all we have open is SSH, but that is not the end of the story. SSH can still be insecure as well.
Brute force is more difficult, because now an attacker needs to find a username password combination, but if this is an external router, an attacker still has as long as it takes to attack the SSH port to brute-force the password. There are many tools that can try hundreds of millions of attempts over an extended period of time until the username and password are guessed.
As we have seen Hydra a few times already, here is an example with Medusa:
medusa -h 192.168.50.254 -u bob -P ./passlist.txt -M ssh -F -m BANNER:SSH-2.0-ssh-client -v 4
Medusa v2.0 [http://www.foofus.net] (C) JoMo-Kun / Foofus Networks
ACCOUNT FOUND: [ssh] Host: 192.168.50.254 User: bob Password: blah [SUCCESS]
The more usernames and passwords configured on the system, the higher the risk that one combination will be found, and there are many bots on the web that will trawl for Telnet and SSH servers, and try to brute-force them with commonly used passwords. Choose strong and long passwords.
The answer is to lockdown SSH to just the administrative systems IP addresses, and on Cisco routers this can be done with extended access-lists to lock-down the vty lines, as follows (the administrators systems here are 192.168.206.128 and 192.168.206.130)
R3(config)#access-list 101 permit tcp host 192.168.206.128 any eq 22 log
R3(config)#access-list 101 permit tcp host 192.168.206.130 any eq 22 log
R3(config)#access-list 101 deny ip any any log
R3(config)#line vty 0 4
R3(config-line)# access-class 101 in
R3(config-line)# transport input ssh
R3(config-line)# login local
Lockdown guidelines
There are some really useful and easy to follow lockdown guidelines for Cisco routers and switches (and much more besides) at the following location:
http://www.nsa.gov/ia/guidance/security_configuration_guides/index.shtml
Monday, 2 May 2011
Attacking and defending virtual Cisco routers on Backtrack (part 1)
Learning how to secure routers in a safe environment is important lesson, so here is an attack-and-defense lesson on virtual Cisco routers, using GNS3 from within Backtrack 4.
GNS3 is a great tool for simulating router configurations, but it can also be connected to real networks for security testing of configurations and topologies for example.
Setup GNS3 on Backtrack-Linux
To install GNS3 on Backtrack use the following:
apt-get install gns3
You can also add the following tweak to the terminal configuration (which i find better because I prefer konsole) Go to...
Edit > Preferences > General > Terminal command
Change it to:
/opt/kde3/bin/konsole --notabbar --nomenubar -T %d -e /usr/bin/telnet %h %p >/dev/null 2>&1 &
Then we need to add a tunnel adapter to our backtrack system so that we can interact with the virtual router environment:
apt-get install uml-utilities
tunctl
ifconfig tap0 172.16.10.5/24
Add a test router and connect GNS3 to backtrack
We need to create our router to attack, and configure it:
Add a router to the network (make sure you choose a router IOS image with encryption capabilities, as we will add SSH later in this example) and add a cloud node that we will configure as our backtrack tap0 interface.
Configure the cloud node with a tap interface of tap0..
... and then link the two together with a FastEthernet connector.
Then we can configure the IP address of the interface on the router (using the console, by right-clicking the router) and ping the backtrack machine to test connectivity, as follows:
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#int f0/0
Router(config-if)#ip address 172.16.10.254 255.255.255.0
Router(config-if)#^Z
Router#
*Mar 1 00:33:28.903: %SYS-5-CONFIG_I: Configured from console by console
Router#ping 172.16.10.5
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.10.5, timeout is 2 seconds:
.!!!!
Scan the router from backtrack
We can now scan this virtual router with nmap as follows:
nmap 172.16.10.254
Starting Nmap 5.35DC1 ( http://nmap.org ) at 2011-05-02 13:20 BST
Nmap scan report for 172.16.10.254
Host is up (0.0053s latency).
Not shown: 998 closed ports
PORT STATE SERVICE
23/tcp open telnet
80/tcp open http
MAC Address: C0:04:17:7E:00:00 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 7.52 seconds
So, we see that telnet and http are open ports... Muhahaha....
Brute forcing telnet user and enable passwords
First we need to setup a password, to allow remote access to the router over telnet (then we will do a test attack)
In order for a Cisco router to accept telnet connections, it must have login enabled, and a password defined.On our router:
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#line vty 0 4
Router(config-line)#password cisco
Router(config-line)#login
Router(config-line)#exit
Router(config)#enable password cisco
Router(config)#^Z
Router#
Now then, obviously those passwords are rather weak... time to prove the concept of pwning this router using Hydra from the Backtrack system:
hydra 172.16.10.254 cisco -s 23 -P passlist.txt -t 1 -w 2
Hydra v5.9 (c) 2010 by van Hauser / THC - use allowed only for legal purposes.
Hydra (http://www.thc.org) starting at 2011-05-02 14:03:02
[DATA] 1 tasks, 1 servers, 3 login tries (l:1/p:3), ~3 tries per task
[DATA] attacking service cisco on port 23
[23][cisco] host: 172.16.10.254 login: password: cisco
[STATUS] attack finished for 172.16.10.254 (waiting for childs to finish)
Hydra (http://www.thc.org) finished at 2011-05-02 14:03:02
Once we have a user-level login, we can use hydra to get our enable password as follows:
hydra 172.16.10.254 cisco-enable -s 23 -l cisco -P passlist.txt -t 1 -w 2
Warning: You did not supply the initial support to the Cisco via -l, assuming direct console access
Hydra v5.9 (c) 2010 by van Hauser / THC - use allowed only for legal purposes.
Hydra (http://www.thc.org) starting at 2011-05-02 14:05:05
[DATA] 1 tasks, 1 servers, 3 login tries (l:1/p:3), ~3 tries per task
[DATA] attacking service cisco-enable on port 23
[23][cisco-enable] host: 172.16.10.254 login: cisco password: cisco
[STATUS] attack finished for 172.16.10.254 (waiting for childs to finish)
Hydra (http://www.thc.org) finished at 2011-05-02 14:05:10
Weaknesses of Telnet and the default Cisco setup
Here is a transcript from Wireshark showing the password transmitted over the wire:
Additionally, we just have a password currently, rather than a username and password combination.
Just to give you an idea of the relative strength of 2 passwords vs. a user password combination.
To test 2 x passwords with a 10,000 dictionary, we are looking at a maximum of 20,000 attempts, but to attack the username-password combination with the same dictionary, we are looking at 100 million attempts. That's a big difference (If you choose the username to be secure as well).
For reference more details can be found on the Cisco website here:
http://www.cisco.com/en/US/tech/tk583/tk617/technologies_tech_note09186a00800949e2.shtml
We are going to need to setup up a username and password and set login local.
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#username fred secret anicelongpassword
Router(config)#line vty 0 4
Router(config-line)#login local
Router(config-line)#^Z
Router#
This has an immediate benefit over the default, because a username password combination, is much stronger than a password.
Then to setup SSH there are a few things to note. Firstly, you must have a hostname other than the default defined, and set a domain name.
Also we will be using SSH2 because of the serious security issues with SSHv1 (this means that the minimum key length is also increased to 768)
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#hostname R3
R3(config)#ip domain-name r3.insidetrust.com
R3(config)#ip ssh version 2
R3(config)#crypto key generate rsa
Choose the size of the key modulus in the range of 360 to 2048 for your
General Purpose Keys. Choosing a key modulus greater than 512 may take
a few minutes.
How many bits in the modulus [512]: 768
% Generating 768 bit RSA keys, keys will be non-exportable...[OK]
R3(config)#
*Mar 1 02:15:18.471: %SSH-5-ENABLED: SSH 2.0 has been enabled
Great, it works!
GNS3 is a great tool for simulating router configurations, but it can also be connected to real networks for security testing of configurations and topologies for example.
Setup GNS3 on Backtrack-Linux
To install GNS3 on Backtrack use the following:
apt-get install gns3
You can also add the following tweak to the terminal configuration (which i find better because I prefer konsole) Go to...
Edit > Preferences > General > Terminal command
Change it to:
/opt/kde3/bin/konsole --notabbar --nomenubar -T %d -e /usr/bin/telnet %h %p >/dev/null 2>&1 &
Then we need to add a tunnel adapter to our backtrack system so that we can interact with the virtual router environment:
apt-get install uml-utilities
tunctl
ifconfig tap0 172.16.10.5/24
Add a test router and connect GNS3 to backtrack
We need to create our router to attack, and configure it:
Add a router to the network (make sure you choose a router IOS image with encryption capabilities, as we will add SSH later in this example) and add a cloud node that we will configure as our backtrack tap0 interface.
Configure the cloud node with a tap interface of tap0..
... and then link the two together with a FastEthernet connector.
Then we can configure the IP address of the interface on the router (using the console, by right-clicking the router) and ping the backtrack machine to test connectivity, as follows:
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#int f0/0
Router(config-if)#ip address 172.16.10.254 255.255.255.0
Router(config-if)#^Z
Router#
*Mar 1 00:33:28.903: %SYS-5-CONFIG_I: Configured from console by console
Router#ping 172.16.10.5
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.10.5, timeout is 2 seconds:
.!!!!
Great, we have our GNS virtual networking environment connected to the backtrack host, and we can attack routers within it as if they were real ones!
Scan the router from backtrack
We can now scan this virtual router with nmap as follows:
nmap 172.16.10.254
Starting Nmap 5.35DC1 ( http://nmap.org ) at 2011-05-02 13:20 BST
Nmap scan report for 172.16.10.254
Host is up (0.0053s latency).
Not shown: 998 closed ports
PORT STATE SERVICE
23/tcp open telnet
80/tcp open http
MAC Address: C0:04:17:7E:00:00 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 7.52 seconds
So, we see that telnet and http are open ports... Muhahaha....
Brute forcing telnet user and enable passwords
First we need to setup a password, to allow remote access to the router over telnet (then we will do a test attack)
In order for a Cisco router to accept telnet connections, it must have login enabled, and a password defined.On our router:
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#line vty 0 4
Router(config-line)#password cisco
Router(config-line)#login
Router(config-line)#exit
Router(config)#enable password cisco
Router(config)#^Z
Router#
Now then, obviously those passwords are rather weak... time to prove the concept of pwning this router using Hydra from the Backtrack system:
hydra 172.16.10.254 cisco -s 23 -P passlist.txt -t 1 -w 2
Hydra v5.9 (c) 2010 by van Hauser / THC - use allowed only for legal purposes.
Hydra (http://www.thc.org) starting at 2011-05-02 14:03:02
[DATA] 1 tasks, 1 servers, 3 login tries (l:1/p:3), ~3 tries per task
[DATA] attacking service cisco on port 23
[23][cisco] host: 172.16.10.254 login: password: cisco
[STATUS] attack finished for 172.16.10.254 (waiting for childs to finish)
Hydra (http://www.thc.org) finished at 2011-05-02 14:03:02
Once we have a user-level login, we can use hydra to get our enable password as follows:
hydra 172.16.10.254 cisco-enable -s 23 -l cisco -P passlist.txt -t 1 -w 2
Warning: You did not supply the initial support to the Cisco via -l, assuming direct console access
Hydra v5.9 (c) 2010 by van Hauser / THC - use allowed only for legal purposes.
Hydra (http://www.thc.org) starting at 2011-05-02 14:05:05
[DATA] 1 tasks, 1 servers, 3 login tries (l:1/p:3), ~3 tries per task
[DATA] attacking service cisco-enable on port 23
[23][cisco-enable] host: 172.16.10.254 login: cisco password: cisco
[STATUS] attack finished for 172.16.10.254 (waiting for childs to finish)
Hydra (http://www.thc.org) finished at 2011-05-02 14:05:10
Weaknesses of Telnet and the default Cisco setup
So theoretically, if we have a large list of passwords to try, the router is ours for the taking. Also, because telnet transmits passwords in cleartext, sniffers can detect these passwords.
Here is a transcript from Wireshark showing the password transmitted over the wire:
Additionally, we just have a password currently, rather than a username and password combination.
Just to give you an idea of the relative strength of 2 passwords vs. a user password combination.
To test 2 x passwords with a 10,000 dictionary, we are looking at a maximum of 20,000 attempts, but to attack the username-password combination with the same dictionary, we are looking at 100 million attempts. That's a big difference (If you choose the username to be secure as well).
Configuring SSH on the router
For reference more details can be found on the Cisco website here:
http://www.cisco.com/en/US/tech/tk583/tk617/technologies_tech_note09186a00800949e2.shtml
We are going to need to setup up a username and password and set login local.
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#username fred secret anicelongpassword
Router(config)#line vty 0 4
Router(config-line)#login local
Router(config-line)#^Z
Router#
This has an immediate benefit over the default, because a username password combination, is much stronger than a password.
Then to setup SSH there are a few things to note. Firstly, you must have a hostname other than the default defined, and set a domain name.
Also we will be using SSH2 because of the serious security issues with SSHv1 (this means that the minimum key length is also increased to 768)
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#hostname R3
R3(config)#ip domain-name r3.insidetrust.com
R3(config)#ip ssh version 2
R3(config)#crypto key generate rsa
Choose the size of the key modulus in the range of 360 to 2048 for your
General Purpose Keys. Choosing a key modulus greater than 512 may take
a few minutes.
How many bits in the modulus [512]: 768
% Generating 768 bit RSA keys, keys will be non-exportable...[OK]
R3(config)#
*Mar 1 02:15:18.471: %SSH-5-ENABLED: SSH 2.0 has been enabled
So let's login and test it:
Great, it works!
Don't forget to disable telnet!
So, we have SSH working, but if we scan the host again, we will see that Telnet is still enabled:
nmap 172.16.10.254
Starting Nmap 5.35DC1 ( http://nmap.org ) at 2011-05-02 15:01 BST
Nmap scan report for 172.16.10.254
Host is up (0.0058s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
22/tcp open ssh
23/tcp open telnet
80/tcp open http
MAC Address: C0:04:17:7E:00:00 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 7.76 seconds
We need to disable Telnet on the router as follows:
R3#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R3(config)#line vty 0 4
R3(config-line)#transport input ssh
(You may also need to do the same for "line vty 5 15" if you have a newer IOS)
Once this is done, another quick scan with nmap, will show that Telnet is no more.
Once this is done, another quick scan with nmap, will show that Telnet is no more.
nmap 172.16.10.254
Starting Nmap 5.35DC1 ( http://nmap.org ) at 2011-05-02 15:19 BST
Nmap scan report for 172.16.10.254
Host is up (0.0020s latency).
Not shown: 998 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
MAC Address: C0:04:17:7E:00:00 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 6.41 seconds
SSH2 is a much more secure protocol that Telnet (as long as you choose a strong username and password).
We still have a web-UI exposed though, and I will cover attacking the web-UI in another post, but that definitely needs to be locked down as well!
Part 2 of this article is here:
http://insidetrust.blogspot.com/2011/05/attacking-and-defending-virtual-cisco.html
Part 2 of this article is here:
http://insidetrust.blogspot.com/2011/05/attacking-and-defending-virtual-cisco.html
Sunday, 1 May 2011
Cost effective study for CCNA
Cisco's CCNA is a very useful qualification for an Ethical Hacker or Penetration tester, as it helps gain a good basic understanding of most LAN and WAN technologies, as well as configuration of Cisco routers and switches, which are commonly used in many networks.
Here are a few tips for studying for a CCNA on a limited budget.
Self study is best
For me, I usually find that self-study is the most effective, as it can be a waste of time listening to a tutor going over material I already know, just for a few gems that I don't.
I feel that I can usually cover more ground in less time with, Google, www.vtc.com, some practical examples in a virtual environment, and a few books or articles on the web.
When studying for CCNA, I recommend using multiple study materials, including books, CBT, lots of real or simulated practice, and test material with realistic example questions.
Cisco website
First sign up for an account on the Cisco website. This gives you access to a fair bit of material, including the following syllabus and useful links for CCNA
https://learningnetwork.cisco.com/docs/DOC-4976
https://learningnetwork.cisco.com/docs/DOC-11015
CCNA Books
You can usually pickup cheap CCNA books on Ebay. I have various books that I bought on Ebay very cheaply. Some were a little old and focused on the 640-801 exams, but most of the core material is the same as for 640-802
(There is a digest of the differences between the 640-801 and 640-802 exams at the following location https://learningnetwork.cisco.com/servlet/JiveServlet/previewBody/6337-102-1-20720/CCNA640-802.pdf).
I read the ExamCram books. I had some Cisco books as well, but those seem to be very verbose and cover a lot of basics and irrelevant material.
Cheat-sheets
There are some great free cheat-sheets I found here:
http://www.icnd2.com/software/cheatsheets.zip
Most important - Simulated routers and switches GNS3
I feel this part is essential. When studying for a CCNA you really need an environment that you can hack around with, build lots of different setups, break it, fix it, and generally get your hands deep in the command-line.
GNS3 is a great piece of software, which can enable you to replicate pretty much any type of Cisco router configuration. This is a great help when studying CCNA.
More information here:: http://www.gns3.net/
I installed my copy of GNS3 on a copy of Backtrack Linux (which I often use as my main OS). You can do this with the following command (don't bother with the Linux compile and install instructions that you may find online)
apt-get install gns3
GNS3 is not totally intuitive to begin with, and it takes a few hours to get used to it, but once you do it is an incredibly powerful tool for real world experience of configuring different protocols and topologies.
One tweak you might want to make on Backtrack is to change the terminal emulator command in GNS3 as follows:
(Backtrack 5)
/usr/bin/konsole --new-tab -e /usr/bin/telnet %h %p > /dev/null 2>&1
(Backtrack 4)
/opt/kde3/bin/konsole --notabbar --nomenubar -T %d -e /usr/bin/telnet %h %p >/dev/null 2>&1 &
Other than that, there is a great tutorial on how to use it at the following location which contains information about setup on both Linux and Windows, connecting virtual machines, and various test configurations:
http://downloads.sourceforge.net/gns-3/GNS3-0.5-tutorial.pdf?download
Here is an example network I quickly created with a WAN and LAN:
Of course this network is completely simulated, so you can also try to secure it, and attack it to your hearts content (try cracking the Telnet or SSH passwords, or uploading malicious configs, to sabotage the routers and switches to intercept traffic for example - or is that just me ;o)
Anyway it's a good idea to use this environment to practise lots of cisco commands and configurations.
This is a useful guide to the basic commands required for the CCNA
https://learningnetwork.cisco.com/servlet/JiveServlet/previewBody/6331-102-1-20713/KCC%20CCNA%20FAST%20TRACK%20quick-sheet.pdf
Here are a few tips for studying for a CCNA on a limited budget.
Self study is best
For me, I usually find that self-study is the most effective, as it can be a waste of time listening to a tutor going over material I already know, just for a few gems that I don't.
I feel that I can usually cover more ground in less time with, Google, www.vtc.com, some practical examples in a virtual environment, and a few books or articles on the web.
When studying for CCNA, I recommend using multiple study materials, including books, CBT, lots of real or simulated practice, and test material with realistic example questions.
Cisco website
First sign up for an account on the Cisco website. This gives you access to a fair bit of material, including the following syllabus and useful links for CCNA
https://learningnetwork.cisco.com/docs/DOC-4976
https://learningnetwork.cisco.com/docs/DOC-11015
CCNA Books
You can usually pickup cheap CCNA books on Ebay. I have various books that I bought on Ebay very cheaply. Some were a little old and focused on the 640-801 exams, but most of the core material is the same as for 640-802
(There is a digest of the differences between the 640-801 and 640-802 exams at the following location https://learningnetwork.cisco.com/servlet/JiveServlet/previewBody/6337-102-1-20720/CCNA640-802.pdf).
I read the ExamCram books. I had some Cisco books as well, but those seem to be very verbose and cover a lot of basics and irrelevant material.
Cheat-sheets
There are some great free cheat-sheets I found here:
http://www.icnd2.com/software/cheatsheets.zip
Most important - Simulated routers and switches GNS3
I feel this part is essential. When studying for a CCNA you really need an environment that you can hack around with, build lots of different setups, break it, fix it, and generally get your hands deep in the command-line.
GNS3 is a great piece of software, which can enable you to replicate pretty much any type of Cisco router configuration. This is a great help when studying CCNA.
More information here:: http://www.gns3.net/
I installed my copy of GNS3 on a copy of Backtrack Linux (which I often use as my main OS). You can do this with the following command (don't bother with the Linux compile and install instructions that you may find online)
apt-get install gns3
GNS3 is not totally intuitive to begin with, and it takes a few hours to get used to it, but once you do it is an incredibly powerful tool for real world experience of configuring different protocols and topologies.
One tweak you might want to make on Backtrack is to change the terminal emulator command in GNS3 as follows:
(Backtrack 5)
/usr/bin/konsole --new-tab -e /usr/bin/telnet %h %p > /dev/null 2>&1
(Backtrack 4)
/opt/kde3/bin/konsole --notabbar --nomenubar -T %d -e /usr/bin/telnet %h %p >/dev/null 2>&1 &
Other than that, there is a great tutorial on how to use it at the following location which contains information about setup on both Linux and Windows, connecting virtual machines, and various test configurations:
http://downloads.sourceforge.net/gns-3/GNS3-0.5-tutorial.pdf?download
Here is an example network I quickly created with a WAN and LAN:
Of course this network is completely simulated, so you can also try to secure it, and attack it to your hearts content (try cracking the Telnet or SSH passwords, or uploading malicious configs, to sabotage the routers and switches to intercept traffic for example - or is that just me ;o)
Anyway it's a good idea to use this environment to practise lots of cisco commands and configurations.
This is a useful guide to the basic commands required for the CCNA
https://learningnetwork.cisco.com/servlet/JiveServlet/previewBody/6331-102-1-20713/KCC%20CCNA%20FAST%20TRACK%20quick-sheet.pdf
Subscribe to:
Posts (Atom)






