Jumat, 22 April 2011

Rahasia : Tackling the Problem of Cyber Crime

A few days ago the Australian House of Representatives' Standing Committee on Communications published its report on cyber crime and security. This document has the ambitious title "Hackers, Fraudsters and Botnets: Tackling the Problem of Cyber Crime", and is an impressive, almost 300 pages reading with statistics, examples, and of course suggestions on how to solve the cyber crime problem

The report even has a long explanatory list of abbreviations and technical terms, which is useful reading for those who are not that familiar with all corners of IT security.

As early as in the report's foreword a significant statement is made:

There has been an exponential growth in the volume of malicious software and the sophistication and adaptability of cyber crime techniques. In the face of these trends, the Committee believes the expectation that end users should or can bear the sole responsibility for their own personal online security is no longer a tenable proposition. We need to apply the same energy and commitment given to national security and the protection of critical infrastructure to the cyber crime threats that impact on society more generally.

A joint effort
Note in particular the sentence "(...) the expectation that end users should or can bear the sole responsibility for their own personal online security is no longer a tenable proposition".

The committee acknowledges the fact that governmental institutions as well as organizations in the private sector (like IT manufacturers, Internet Service Providers and web hosting companies) should all be involved in securing the Internet.

This corresponds to the view that Norman expressed in our security article in November 2008 - Fighting malware on two ends. To be able to fight cyber crime most efficiently, one cannot rely on end-user protection only. Effective protection of the Internet's nodes and infrastructure requires that several stakeholders are involved.

The report includes 34 recommendations. Some examples are:
- a national coordination point to oversee the broader strategy,
- a national cyber crime reporting centre, enabling a one-stop-shop to report cyber crime,
- better coordination and training for law enforcement agencies,
- public-private information sharing on a wider range of cyber crime types.

A controversial recommendation
One of the recommendations (No 14) immediately caused some controversy (Norman's emphasis in bold below):

That the Australian Communications and Media Authority take the lead role and work with the Internet Industry Association to immediately elaborate a detailed e-security code of practice to be registered under the Telecommunications Act 1997 (Cth).

That the code of practice include:

- an obligation that the Internet Service Provider provides basic security advice when an account is set up to assist the end user to protect themselves from hacking and malware infections;
- a mandatory obligation to inform end users when their IP address has been identified as linked to an infected machine(s);
- a clear policy on graduated access restrictions and, if necessary, disconnection until the infected machine is remediated;
- the provision of basic advice and referral for technical assistance for remediation;

Some Pros and Cons
Enforcing security does equal better security (at least in this case)
It is probably correct that if Internet users are forced to install security programs (in this case antivirus and firewall) before they are allowed to access the Internet, this will in general enhance the general security on the average end user's computer.

Most of us are law-abiding citizens and will not go to great length to try to circumvent this requirement by attempting to trick the Internet Service Provider (ISP), and thus avoid this requirement.

Nor is it likely that many who already had such software in place will remove this, and trick the ISP just because they are ideologically against the fact that the requirement has been made mandatory.

Personal freedom
Legislating every-day tasks vs. freedom of the individuals is a never-ending battle between two conflicting points of view. The consensus seems to be that "somewhere" in between the two extremes is most sensible.

The issue discussed here is a typical one where some will argue that it is up to each and every person if - and even more importantly - how he chooses to protect himself.

It may be argued however, that this is not only a question about self-protection. An infected computer represents a threat not only to the owner, but also to others that this computer is able to reach, and indeed the Internet community in general. An analogy is a person who becomes infected with a virus; he might be quarantined not only for his own protection, but to protect members of his community from infection.

Another aspect of the personal freedom issue is that for such a legislation to be effective, the ISP needs to have some kind of technology in place to check whether a computer is protected by security software or not. This may be viewed by some as tampering with personal information that is not the ISP's business.

Some may also fear that if such a requirement is mandatory, only some pre-qualified security software packages will be accepted among the plethora of security software that exists. Presumably well-known vendors' solutions might be those recommended or allowed.

Who pays?
This is not discussed in the report, and may obviously be part of the debate.

Seen from the community's point of view, the most economically sound is probably that governmental institutions enter into agreement(s) with security software vendors, as this has the potential to result in the best deals (per piece of software).

The second best from a purely economical view, is that the ISPs enter into such agreements on behalf of their customers. They are able to negotiate better agreements (one would presume) than each and every individual.

The least optimal seen from a socio-economic point of view is that each person chooses his preferred security software. On the other hand, this will give the individual more personal freedom (which is seen as advantageous by most).

Whatever is chosen as a model, it is obvious that this will be an extra cost for someone. The counter-argument is that this will be less expensive than not protecting, and thus allowing more to be victims of computer crime.

Security software needs frequent updates
These days more than ever, security software needs frequent updating in order to protect the users sufficiently. Several tens of thousands malicious programs are created each and every day, and the antivirus vendors publish new virus signature files frequently to keep their customers updated.

This introduces a special problem, as the security obtained by having an antivirus product installed rapidly declines towards zero unless the program is continuously updated.

How this updating requirement should be taken care of is a challenge with the committee's recommendation.

Several layer defense
As we mentioned in the beginning of this article, it is wise to combat cyber crime from different angles. From this perspective tightening end user security is a means to accomplish one building-stone in a several-layer defense structure.

Final words

Regardless of one's view regarding the issue of mandatory antivirus and firewalls, the Australian report is very interesting reading. It is highly recommended for those who wish to get a broader overview of the Internet's threats as perceived by a nation's point of view, and the mitigating elements that are up for discussion and evaluation.

How To Hack With An IP Address

Theres plenty of papers out there that go into how to obtain an IP Address from the preferred mark of your choice. So I'm not going to go into that subject. Alright so say we got the targets IP Address finally. What do we do with this IP Address. Well first ping the IP Address to make sure that its alive. In otherwords online. Now at the bottom of this document ill include some links where you can obtain some key tools that may help on your journey through the electronic jungle.

So we need to find places to get inside of the computer so we can start trying to find a way to "hack" the box. Port Scanners are used to identify the open ports on a machine thats running on a network, whether its a router, or a desktop computer, they will all have ports. Protocols use these ports to communicate with other services and resources on the network.

1) Blues Port Scanner - This program will scan the IP address that you chose and identify open ports that are on the target box.

Example 1:
Idlescan using Zombie (192.150.13.111:80); Class: Incremental
Interesting ports on 208.225.90.120:
(The 65522 ports scanned but not shown below are in state: closed)
Port State Service
21/tcp open ftp
25/tcp open smtp
80/tcp open http
111/tcp open sunrpc
135/tcp open loc-srv
443/tcp open https 1027/tcp open IIS
1030/tcp open iad1
2306/tcp open unknown
5631/tcp open pcanywheredata
7937/tcp open unknown
7938/tcp open unknown
36890/tcp open unknown


In example 1 now we see that there are a variety of ports open on this box. Take note of all the ports that you see listed before you. Most of them will be paired up with the type of protocol that uses that port (IE. 80-HTTP 25-SMTP Etc Etc...) Simply take all that information and paste it into notepad or the editor of your choice. This is the beginning of your targets record. So now we know what ports are open. These are all theoretical points of entry where we could wiggle into the computer system. But we all know its not that easy. Alright so we dont even know what type of software or what operating system that this system is running.

2) NMAP - Port Scanner - Has unique OS fingerprinting methods so when the program sees a certain series of ports open it uses its best judgement to guess what operating system its running. Generally correct with my experiences.

So we have to figure out what type of software this box is running if we are gonna start hacking the thing right? Many of you have used TELNET for your MUDS and MOOS and weird multiplayer text dungeons and many of you havent even heard of it before period. TELNET is used to open a remote connection to an IP Address through a Port. So what that means is we are accessing their computer from across the internet, all we need is their IP Address and a port number. With that record you are starting to compile, open a TELNET connection to the IP Address and enter one of the OPEN ports that you found on the target.
So say we typed 'TELNET -o xxx.xxx.xxx.xxx 25' This command will open up a connection through port 25 to the IP xxx.xxx.xxx.xxx. Now you may see some text at the very top of the screen. You may think, well what the hell, how is that little string of text going to help me. Well get that list you are starting to write, and copy the banners into your compilation of the information youve gathered on your target. Banners/Headers are what you get when you TELNET to the open ports. Heres an example of a banner from port 25.

220 jesus.gha.chartermi.net ESMTP Sendmail 8.12.8/8.12.8; Fri, 7 Oct 2005 01:22:29 -0400

Now this is a very important part in the enumeration process. You notice it says 'Sendmail 8.12.8/8.12.8' Well what do ya know, we now have discovered a version number. This is where we can start identifying the programs running on the machine. There are some instances in which companies will try and falsify their headers/banners so hackers are unable to find out what programs are truly installed. Now just copy all the banners from all the open ports *Some Ports May Have No Bannners* and organize them in the little record we have of the target. Now we have all the open ports, and a list of the programs running and their version numbers. This is some of the most sensitive information you can come across in the networking world. Other points of interest may be the DNS server, that contains lots of information and if you are able to manipulate it than you can pretend to hotmail, and steal a bunch of peoples email. Well now back to the task at handu. Apart from actual company secrets and secret configurations of the network hardware, you got some good juicy info. http://www.securityfocus.com is a very good resource for looking up software vulnerabilities. If you cant find any vulnerabilities there, search on google. There are many, many, many other sites that post vulnerabilities that their groups find and their affiliates.

At SecurityFocus you can search through vendor and whatnot to try and find your peice of software, or you can use the search box. When i searched SecurityFocus i found a paper on how Sendmail 8.12.8 had a buffer overflow. There was proof of concept code where they wrote the shellcode and everything, so if you ran the code with the right syntax, a command prompt would just spawn. You should notice a (#) on the line where your code is being typed. That pound symbol means that the command prompt window thats currently open was opened as root. The highest privilage on a UNIX/Linux Box. You have just successfully hacked a box. Now that you have a command shell in front of you, you can start doing whatever you want, delete everything if you want to be a fucking jerk, however I dont recommend that. Maybe leave a text file saying how you did it and that they should patch their system.....whoever they are. And many times the best thing you can do is just lay in the shadows, dont let anyone know what you did. More often than not this is the path you are going to want to take to avoid unwanted visits by the authorities.

There are many types of exploits out there, some are Denial of Service exploits, where you shut down a box, or render an application/process unusable. Called denial of service simply because you are denying a service on someones box to everyone trying to access it. Buffer Overflow exploits are involved when a variable inside some code doesnt have any input validation. Each letter you enter in for the string variable will be 1 byte long. Now where the variables are located at when they are in use by a program is called the buffer. Now what do you think overflowing the buffer means. We overflow the buffer so we can get to a totally different memory address. Then people write whats called shellcode in hex. This shellcode is what returns that command prompt when you run the exploit. That wasnt the best description of a buffer overflow, however all you need to remember is that garbage data fills up the data registers so then the buffer overflows and allows for remote execution of almost every command available. There are many, many other types of attacks that cannot all be described here, like man-in-the-middle attacks where you spoof who you are. Performed correctly, the victim will enterhttp://www.bank.com and his connection will be redirected to your site where you can make a username and password box, make the site look legit. And your poor mark will enter their credentials into your site, when they think its really http://www.bank.com. You need to have a small script set up so it will automatiically display like an error or something once they try and log in with their credentials. This makes it seem like the site is down and the victim doenst give it a second thought and will simply try again later.

So as a summary of how to 0Wn a box when you only have an IP Address
Method Works On BOTH *Nix and Windoze

****You can do the same with domain names (IE google.com) than what you can with IP Addresses. Run a WHOIS Lookup or something along those lines. Or check up on InterNIC you should be able to resolve the domain name to an IP address.****

- Port Scan The Address And Record Open Ports
- Telnet To Open Ports To Identify Software Running On Ports

3) netcat - Network swiss army knife. Like TELNET only better and with a lot more functionality. Both can be used when you are trying to fingerprint software on open ports

- Record Banners And Take Note Of The Application Running and The Version Number
- Take A Gander Online At SecurityFocus.com or Eeye.com. If you cant find any vulnerabilities then search google.
- Make a copy of some Proof-Of-Concept code for the vulnerability.

*Read the documentation if there is any, for the proof-of-concept code you will be using for your exploit*

- Run The Exploit Against The Victim.
- Reap The Cheap-Sh0t Ownage

**This document does not go into covering your tracks. If you dare try any of this stuff on a box you dont have consent to hack on, They will simply look at the logs and see your IP Address and then go straight to your ISP. Once you get more 1337 you get to learn how to get away with the nasty deeds. This is what the majority of kode-kiddies do when they perform attacks. The key is to enumerate all the info you can from the machine, the more info you have on the system the better. User accounts can also be enumerated. Once you have a list of account names, you may then proceed to brute-force or perform a cryptanalysis attack to gain control of the account. Then you must work on privilage escalation. Users are not Admins/Root**


Source : http://www.dedepurnama.com