Thursday, January 17, 2013

Reconnaissance 101

Reconnaissance - A mission undertaken to obtain, by visual observation or other detection methods, information about the activities and resources [of a target].

Just a brief introduction to some of the extremely easy types of reconnaissance techniques used by hackers, keep in mind all of this information is used to further your own knowledge so you may better protect yourself.   Absolutely do not attempt to publish or use any of this information with malicious intent.  I will not be liable for your stupidity.

Google Fu - Search engine recon performed by utilizing well-crafted queries and query tools to discover information about a target
Maltego - Open source web-scouring software used to aggregate and link personally identifiable information
Spokeo - A web-based white pages type tool that also works to gather as much public information about a target as possible

Google-Fu
Google-Fu is a coined term used in "googling" a particular subject or person.  There is tons of information openly available and billions of webpages out there to meet your return on results for vague or generic queries.  Many hackers now and days will use a search engine as a hacking tool making sure to ask the right questions. Here are some useful search directives and operators below.


site:[domain]
Limits the results to those within the provided [domain]. This can be generic, such as “.edu”, or specific, like www.cnn.com

link:[web page]
Shows all sites that link to the given web page, which is useful for determining business relationships

Literal matches (“   ”)
Preserves the order of the words in the query, which helps in finding titles or specific files

Not ( - )
Filters out web pages that contain the given term

Try Googling some of these and see where they lead you:

- filetype:.mysql_history username [this is a query that will show SQL server history with the word "username" in the results, of course you can look up username and password also, but I will let your imagination do that]
- intitle:"active webcam page" site:edu [self explanatory, active webcam pages in schools]
- filetype:sql "MySQL dump" (pass|password|passwd|pwd) [sql dump with variations of the word password in the results]
- intitle:"hp laserjet" inurl:info_configuration.htm [configuration information about a particular printer, sometimes if you look hard enough and get access you may be able to send/print messages to the admin]

Maltego

Maltego is used to determine the relationships and real-world links between people, companies, networks, and websites.  Through these relationships, you can strive to provide a clear “threat picture” of the environment in which an organization resides.  I will demonstrate this tool on an individual, but think about how it would be even more effective against your organization.

Positives

- Social Engineering attacks
- Enable physically locating a target in some cases (enabling attacker to befriend or threaten)
- Improved Dictionary attack
- Most people include something about themselves in their passwords
- Connect unrelated data
- No one search would have returned all of this assorted information, let alone graphed it for you

Negatives
- Overabundance of information makes locating pertinent pieces difficult
- High risk of false positives
- “Zipperer” is not a common last name in the US, but it found six incorrect phone numbers searching on me
- Free version does not contain full functionality\
- It’s much more effective when used against an organization than an individual!

Spokeo
I have got to say this website is awesome.  It is a social network and open source aggrigator which queries 40 sites to compile information about a particular user.  What is even more surprising is the fact that it only uses publically available information and information available via credentials you input.  You would be extremely surprised just how much you can dig up on someone using this.  The paid version of Spokeo will pull email contacts and profile them!

Imagine if a hacker had used a bunch of company emails.  You would be able to quickly profile an entire company to identify easy social engineering targets and provide access to social engineering attack vectors via “common interests” like Pandora playlists, web site postings, Picasa pictures, names, addresses, phone numbers you get the idea.


Securing yourself
After reading all this you may say how do I stop it all?  Well keep in mind everything you put on the internet will leave a footprint and will be stored by someone somewhere.  There are however, a few mitigations you can use to help combat this.

- Avoid storing personal or employee information online, even if it’s in a hidden location or file on your server.
- Be exceedingly wary of any information posted to social sites – assume that anything there is public knowledge!
- Remember that just because a web page has been deleted doesn’t mean it’s gone… Google caches everything (but you may request that they delete it)

Be careful out there!


Thursday, January 10, 2013

Password Complexity – How to Keep Your Crap Safe

Came across this article from http://www.deathvalleymag.com thought it would be beneficial for some people at a very high level.

This seems pretty intuitive for some, but for others not so much, so I will take some time to explain about passwords.   Back in the day, you were lucky to have to remember one or two user id’s and pw combos.  Currently I’ve got at least 60-70 user id’s and passwords to remember between personal and work (and I’m sure I’m being conservative on the number there).  So what do I do?

Here are your options:

•    Use the same user id and password
•    Use the same user id and different password
•    Use the same password and different user id
•    Use different user id’s and passwords
•    Use easy user id’s and passwords
•    Use complex user id’s and passwords

Let’s take a look at a few of these.

Use the same user id and password:  What can I say about this one?  It’s just plain stupid unless you’re looking to lose everything you own and land yourself in jail.  This is just plain stupidity.  If someone is able to get one of your accounts, they’re most likely going to try and use the same user id and password on every other account you have.  They do this because people are lazy.  They don’t want to have to worry about keeping multiple user id’s and/or passwords because it’s too hard, or they just can’t remember them.  Well, if they do this, they’re asking for trouble.

Use the same user id and different password: This one is only slightly better than the last one.  Using the same user id across multiple accounts gives someone one part of the puzzle.  Granted, it’s the easier portion, but it gives them one less thing they’ve got to try and ‘crack’ to get into your system.

Use the same password and a different user id: This one is almost as bad as the same user id and password.  I’d rather see people using the same user id across accounts as opposed to the same password.  Again, it’s one less piece of the puzzle and there’s a good chance that the user name either isn’t encrypted or not to the same level that the password would be.  User id’s are also easier to ‘guess’ than passwords.

Use different user id’s and passwords: This is one of the best ways to handle your accounts.  Unfortunately, we sometimes don’t have the option to choose our user id. We are forced to use our e-mail address or worse yet, it’s generated for us.  But for those times when you can choose both user id and password, it’s a good idea to choose one you haven’t used yet.

Use easy user id’s and passwords: Ok, this one is just plain stupid.  If you’re name is Joe Simpleton and you use joesimp as your user id, chances are your password is going to be something like jsimpleton.  This is almost as bad as not using a password.

Use complex user id’s and passwords: This is suggested as even if you mix in one number and one special character among the letters, you’re increasing your odds of surviving someone cracking the password.

Now, the last two pieces of the puzzle are in addition to the first four mentions.  They are ‘supporting’ members on the team, not just primary members themselves.

There are quite a few ways of obtaining the password to someone’s account.  They include but are not limited to:

•    wiretapping
•    phishing
•    key logging
•    social engineering
•    vulnerabilities

But we won’t be covering that today as they are subjects all in their own.

Let’s take a look at some of the methods hackers use to crack passwords:

Dictionary: This is more of a lucky guess type of cracking.  They use a table and go through every possible word in the dictionary to crack the password.  It also has a ‘dictionary’ of known passwords that are used most frequently.

What are some of the most frequently used passwords you ask?  Here they are a few of the top 500 (courtesy of Whats My Pass @ www.whatsmypass.com):

•    123456
•    god
•    12345678
•    1234
•    diamond
•    12345
•    dragon
•    qwerty
•    696969
•    letmein

Again, this is only 10 of the top 500 and you can already see a pattern. Some people will use things that pertain to their job for their work related passwords:

•    admin
•    email
•    login
•    password

Any of these look familiar?  There’s just no shortage of easy passwords.  There are entire terabytes of tables out there made just for the purpose of breaking passwords and even a few ‘rainbow’ books to help people with encrypted password hashes.  It takes every known possible password and encrypts it, then provides the actual encrypted hash.  All you do is match the hash that you have to what’s in the book and bingo, you’ve got the password.

Guessing or Educated Guessing:
Knowing things about the target and using those things to get the password such as child’s name, spouses name, ‘lovers’ name, pet names, favorite teams, locations, etc.

Brute Force Attack:
Basically it’s a last resort attack.  It tries every possible password.  If there’s no limit to the number of attempts to login, this one will work as long as there’s no limit to the amount of time needed.  It’s guaranteed as long as the password doesn’t change, there are no login attempts restricted and there’s limitless time.  Again, it’s the last resort for a reason.

These are only a few of the ways that passwords can be cracked.  There’s also several applications out there that assist in cracking the passwords once you have an encrypted password.  Some of those are:

•    Cain and Abel
•    John the Ripper
•    Hydra
•    ElcomSoft
•    LastBit
•    Crack
•    L0phtCrack
•    Ophcrack
•    RainbowCrack
•    SAMInside
•    DSniff

I have used several of these successfully as well as several of them unsuccessful.  It all depends on the strength and amount of time that is available.

Now, let’s take a look at how long it takes to crack a few passwords.

For ease of reference, I am re-producing the information found at Lockdown (www.lockdown.co.uk):

They use 6 ‘Classes’

A – 10,000  – typical recovery of MS Office on a Pentium 100
B – 100,000 – Typical recovery of Windows password cache on a Pentium 100
C – 1,000,000 – typical recovery of .ZIP or .ZRJ passwords on a Pentium 100
D – 10,000,000 – fast pc, dual processor
E – 100,000,000 – workstation or multiple pc’s working together (distributed computing)
F – 1,000,000,000 – medium to large scan distributed computing or supercomputers

Class A      Class B     Class C     Class D    Class E    Class F
darren                             8.5 H            51.5 M         5 M              30 S           3 S              Instant
Land3rz                          11 Y              1 Y                41 D             4 D             10 H           58 M
B33r&Mug                     22,875 Y    2,287 Y      229 Y         23 Y           2.5 Y        83.5 D

As you can see, the more complex the password, the longer it takes. Even with 8 characters, upper and lower case letters and special characters, it could still be beaten in less than 100 days.  With the availability of computing power today?  It’s not surprising that kids sitting in their mom’s basement can crack passwords at the drop of a hat.

So what can you do?  Well, you can do one of several things.

Do nothing.  You’re bound to get hacked eventually, why wait, make it easy for them (sarcasm here)

Follow these simple rules for passwords:

Minimum 10 characters (or less if the individual application won’t allow ten)
Minimum 2 upper case letters
Minimum 2 lower case letters
Minimum 2 numbers
Minimum 2 special characters
No recognizable words
No PII (personal identifiable information)
No phone numbers
No addresses
No pet names
No spouse names
Change the password every 30-45 days minimum
Never share passwords
Never give your password to anyone no matter what the situation
Never write down your password no matter what

I’ve given you an example of easy passwords now let’s see an example of how using the above listed guidelines will give you a good password:

G%5tgH^6yhJ&7ujK*8ik
Z#z3X$x4C%c5V^v6
1qaz@WSX3edc$RFV

Yes, all of these passwords will meet most complexity requirements down to and including the Fed Gov requirements.

Yes, all of these passwords are hard as hell to remember.  Yes, it’s more likely that someone will get your password via a backdoor program or keystroke logging than to be able to crack the password.  But isn’t a little peace of mind worth it?


Now, you ask, how do I remember the passwords if they’re 15 characters and all jumbled like that?



Easy; give yourself a system.  Either it is a rhythm, a song, an anagram, a keyboard algorithm, something.  Yes, I know it’s a pain in the butt, but would you rather have to worry about something like this than having to go and reset ALL of your 60 passwords every time someone hacks your Facebook account?

There ARE other ways to remember them.  Writing them down is one.  Yes, I know, I said never write them down.  Well, there are exceptions to every rule.  You can write them down in a specific location (small notepad) and keep it in a secure location (safe, lockbox, etc).  You can use a password keeper application on your computer, phone, etc.  I would recommend using KeePass - http://www.keepass.com.

In the mean time, try and think of how many user id’s and passwords you actually have.  Do you use any of the methods I discuss here?  Do you have the remember feature turned on in your browser or on your phone?  How about writing them down?  Is your password on a sticky note under your keyboard, mouse, chair or on your monitor?

Just a few things to think about.

Saturday, November 17, 2012

Google Docs Targeting

Pretty straight forward.  This new  malware takes advantage of the viewer function in Googledocs and retrieves the resources of another URL to display it instead.  Anytime you access Googledocs server it is encrypted using HTTPS making it close to impossible to block it locally.  This first variant is seen as a RTF (Rich Text Format) document and Microsoft Word files targeting mainly Brazil at the moment.


Reference: http://www.symantec.com/connect/blogs/malware-targeting-windows-8-uses-google-docs

Friday, November 9, 2012

The Russian Underground

Came across this article from Trend Micro quantifying some of the services being offered by the Russian crimeware market.  Really helps put into perspective that it only takes a few dollars for a sophisticated package/service which could cost damages of millions of dollars.

Current prices on the Russian underground market:

    Hacking corporate mailbox: $500
    Winlocker ransomware: $10-20
    Unintelligent exploit bundle: $25
    Intelligent exploit bundle: $10-$3,000
    Basic crypter (for inserting rogue code into a benign file): $10-$30
    SOCKS bot (to get around firewalls): $100
    Hiring a DDoS attack: $30-$70/day, $1,200/month
    Botnet: $200 for 2,000 bots
    DDoS botnet: $700
    ZeuS source code: $200-$500
    Windows rootkit (for installing malicious drivers): $292
    Hacking Facebook or Twitter account: $130
    Hacking Gmail account: $162
    Email spam: $10 per one million emails
    Email spam (using a customer database): $50-$500 per one million emails
    SMS spam: $3-$150 per 100-100,000 messages

Current prices on the Russian underground market:
  • Hacking corporate mailbox: $500
  • Winlocker ransomware: $10-20
  • Unintelligent exploit bundle: $25
  • Intelligent exploit bundle: $10-$3,000
  • Basic crypter (for inserting rogue code into a benign file): $10-$30
  • SOCKS bot (to get around firewalls): $100
  • Hiring a DDoS attack: $30-$70/day, $1,200/month
  • Botnet: $200 for 2,000 bots
  • DDoS botnet: $700
  • ZeuS source code: $200-$500
  • Windows rootkit (for installing malicious drivers): $292
  • Hacking Facebook or Twitter account: $130
  • Hacking Gmail account: $162
  • Email spam: $10 per one million emails
  • Email spam (using a customer database): $50-$500 per one million emails
  • SMS spam: $3-$150 per 100-100,000 messages
- See more at: http://thehackernews.com/2012/11/russian-underground-cybercrime-market.html#sthash.0wpCGlVs.dpuf

Current prices on the Russian underground market:
  • Hacking corporate mailbox: $500
  • Winlocker ransomware: $10-20
  • Unintelligent exploit bundle: $25
  • Intelligent exploit bundle: $10-$3,000
  • Basic crypter (for inserting rogue code into a benign file): $10-$30
  • SOCKS bot (to get around firewalls): $100
  • Hiring a DDoS attack: $30-$70/day, $1,200/month
  • Botnet: $200 for 2,000 bots
  • DDoS botnet: $700
  • ZeuS source code: $200-$500
  • Windows rootkit (for installing malicious drivers): $292
  • Hacking Facebook or Twitter account: $130
  • Hacking Gmail account: $162
  • Email spam: $10 per one million emails
  • Email spam (using a customer database): $50-$500 per one million emails
  • SMS spam: $3-$150 per 100-100,000 messages
- See more at: http://thehackernews.com/2012/11/russian-underground-cybercrime-market.html#sthash.0wpCGlVs.dpuf

Current prices on the Russian underground market:
  • Hacking corporate mailbox: $500
  • Winlocker ransomware: $10-20
  • Unintelligent exploit bundle: $25
  • Intelligent exploit bundle: $10-$3,000
  • Basic crypter (for inserting rogue code into a benign file): $10-$30
  • SOCKS bot (to get around firewalls): $100
  • Hiring a DDoS attack: $30-$70/day, $1,200/month
  • Botnet: $200 for 2,000 bots
  • DDoS botnet: $700
  • ZeuS source code: $200-$500
  • Windows rootkit (for installing malicious drivers): $292
  • Hacking Facebook or Twitter account: $130
  • Hacking Gmail account: $162
  • Email spam: $10 per one million emails
  • Email spam (using a customer database): $50-$500 per one million emails
  • SMS spam: $3-$150 per 100-100,000 messages
- See more at: http://thehackernews.com/2012/11/russian-underground-cybercrime-market.html#sthash.0wpCGlVs.dpuf

Current prices on the Russian underground market:
  • Hacking corporate mailbox: $500
  • Winlocker ransomware: $10-20
  • Unintelligent exploit bundle: $25
  • Intelligent exploit bundle: $10-$3,000
  • Basic crypter (for inserting rogue code into a benign file): $10-$30
  • SOCKS bot (to get around firewalls): $100
  • Hiring a DDoS attack: $30-$70/day, $1,200/month
  • Botnet: $200 for 2,000 bots
  • DDoS botnet: $700
  • ZeuS source code: $200-$500
  • Windows rootkit (for installing malicious drivers): $292
  • Hacking Facebook or Twitter account: $130
  • Hacking Gmail account: $162
  • Email spam: $10 per one million emails
  • Email spam (using a customer database): $50-$500 per one million emails
  • SMS spam: $3-$150 per 100-100,000 messages
- See more at: http://thehackernews.com/2012/11/russian-underground-cybercrime-market.html#sthash.0wpCGlVs.dpuf

Monday, November 5, 2012

Building your home computer

Asus P8Z68-V LX
Intel i7-2600K
Intel SSD 520 Series 120GB
WD Caviar Black 2TB SATA

Corsair Vengeance 32GB DDR3
Corsair TX750 V2
Corsair H100 Hydro Series Liquid CPU Cooler
Corsair Graphite Series 600T Special Edition
Sapphire 7950 3GB OC GDDR5

Dell U2312HM x 3

One of the most common and annoying questions I'm always asked, is "Hey Paul, I'm in college now, what kind of computer should I get if money is not an object?"  As annoying as that is I feel as if I'm obliged to recommend everyone I don't want to explain what an SSD is to go out and buy a Mac.  Well here it is ladies and gentlemen the answer to all your grinding questions. 

Always buy technology based on your needs.

Ask yourself what will you be spending most of your time doing.  Word processing?  Watching movies?  Rendering videos? Decompiling code?  Playing games? Finding out that much will indeed give you the most value for your dollar and will help narrow down your search on which component in your computer is going to be the most valuable.

(Please note I am only going through them very briefly there are hosts of resources online that you can look up on your own)

Processor


This is the bread and butter on your computer/laptop and 40-50% of your budget should be associated with this.  A processor is the brain in your computer.  It interprets the information from the hardware, makes the appropriate services available to other parts of the system, presents user interfaces and interprets the user input. It then runs every piece of code and processes all the data generated. Everything else on the machine is only there to make it possible for people to use the processor.

Processors are broken down into 3 tiers.

Netbook Oriented (Atom)
Laptop Oriented (Celeron vs. Sempron)
Desktop Oriented (Core vs. Athlon)

...and 3 companies that produce them:

Intel
VIA
AMD

Without getting too much more into it just remember: #1 prices don't fluctuate on these unless a newer generation processor is coming out; #2 higher speed = higher price = higher heat; #3 hardcore builders have loyalties toward either AMD or Intel; #4 buy something with an Intel processor unless you game heavily in which case go AMD

For more information on Intel processors: mintywhite.com

Motherboard

In many ways, the motherboard is the heart of the modern computer system, as it affects almost every other component. Choosing a motherboard is extremely easy.  Take some time to think about how you'll use your system. Someone with a power meter that requires a serial port will care a lot more about the peripheral features than the average user will, while the hard-core gamer will probably focus on the GPU, CPU, and chip set while ignoring peripherals and form-factor issues.

In a nut shell, everything you buy will connect to your motherboard.  This is the base plate of where you are stacking your legos.  But there are a couple things to keep in mind before you buy.  Most retail stores will offer rebates if you buy your board and processor together.  Keep in mind that a motherboard for an AMD processor is different than one for an Intel.  Pay most attention to the chipset and where you stand in regard to the newest vs. oldest and make always make your decision based according to your desired storage, audio, processor socket, and memory options. (later explained).  As long as you make 100% sure your motherboard and memory will be compatible all the extra features like the amount of on board I/O ports, amount of expansion slots, or the reliability can be requirements depending on the purpose of the computer you are building.

Memory (internal / external / solid state)


RAM
Corsair Dominator TWIN3X2048 DDR3 with built in heatsink keeping the memory cool.
Memory can be extremely confusing as are different roles for both internal and external memory.  Let's first take a look at the role RAM (Random Access Memory) plays in your computer.  There's a couple different kind you system can use:  DRAM (EDO or FPM), SDRAM, DDR SDRAM, or RDRAM.  All four types are mounted on one of three module types: DIMM, SIMM, DDR DIMM, RIMM.  If I haven't lost you yet, keep in mind your motherboard will determine which type of RAM you will buy.   The higher the amount of RAM you have in your computer the better multi-tasking you will have for RAM-hogging applications (i.e. Photoshop, Outlook, Firefox)  Having more memory wont make your PC faster, it just allows it to do more things at once. So when you see someone advertising for an Dell i7-2600k 8gb 750gb harddrive that 8gb is referring to the amount of RAM that computer has.  I haven't even scratched the surface, but if you want to know more I would urge you to look up how latency, timing and voltage affect speeds in RAM and in price.  The bottom line is this...
  • If you are a regular user, just light browsing, IM, or YouTube, you are probably just fine with 2GB of RAM
  • If you consider yourself a power user but don't use Photoshop or virtual machines, you should probably have 3-4GB of RAM installed.
  • If you are a power user with virtual machines or you do heavy audio/video/image editing, you should consider upgrading with as much RAM as you can afford—just keep in mind that you'll need a 64-bit version of Windows to take advantage of it all.
Reference: http://www.zdnet.com/blog/hardware/the-8gb64-bit-advantage-more-ram-doesnt-always-mean-better-performance/2354


Hard Disk Drives / Solid State Drives

A hard disk drive is a series of spinning metal disks that allows users to save or store information on a computer. It is considered the secondary memory of a computer, with RAM being the primary memory. The hard drive is the component where data is saved, even after a computer is powered off.  Think of it as just a giant USB stick that is connected directly to your motherboard, where you save and install all your documents/music/misc stuff.  Couple things also to keep in mind when buying a harddrive.  Aside from capacity dictating the prices you have, rotational speed, seek speed, buffer, interface and RAID compatibility are all things you may want to look up in your free time.  Personally for me I would stick with an internal hard drive with a SATA interface as nearly all internal drives in new PCs use it.  SATA supports maximum transfer rates of either 150MB or 300MB per second. The drives with a 300MB maximum transfer rates cannot take advantage of their wider bandwidth in typical desktop use, though they shine in RAID combinations.

A solid state drive on the other hand is fairly new technology. A typical SSD uses what is called NAND-based flash memory, this is a non-volatile type of memory.  What does non-volatile mean you ask?  The simple answer is that you can turn off the disk and it won’t “forget” what was stored on it.  This is of course an essential characteristic of any type of permanent memory.  During the early days of SSD rumors floated around saying stored data would wear off and be lost after only a few years.  Today this is not true, you can read and write to an SSD all day long and the data storage integrity will be maintained for well over 200 years.  In other words, the data storage life of an SSD can outlive you! An SSD does not have a mechanical arm to read and write data like its HDD counter part, it instead relies on an embedded processor (or “brain”) called a controller to perform a bunch of operations related to reading and writing data.  The controller is a very important factor in determining the speed of the SSD, decisions it makes related to how to store, retrieve, cache and clean up data can determine the overall speed of the drive.  We won’t get into the nitty gritty of the details for the various tasks it performs such as error correction, read and write caching, encryption and garbage collection to name a few but suffice to say, good controller technology is often what separates an excellent from simply good SSD.  An example of a fast controller today is the SandForce SATA 3.0 (6 Gb/s) SSD controller that supports up to 500 MB per second read and write speeds.  Bottem line?  Buy an SSD and install your operating system on it, everything else should be installed on your HDD.  When purchasing I would stick with the big brands like Samsung, Corsair and Intel.

Graphics Cards


Not even going to touch this subject as there are just too many resources online for what graphics cards to get. This is really just determined on how much money you want to spend.  Most users will not even need them because the on board video graphic that comes your motherboard should be plenty for day to day use.

Just Google this if you don't know what to get.
Radeon vs. Nvidia


Power Supply, Computer Tower / Cooling


Powering your computer should come natural there are once again many resources and preferences depending on what you previously chose. Here is a great calculator to determine how much wattage your computer needs.

An example of a liquid cooled computer
In regards to what tower or cooling system to select.  Every tower is different.  Just keep in mind there are many ways to circulate air in your computer.  Look up things along the line of "building positive pressure" and "controlled airflow."  As for cooling there are three main ways a computer is cooled.  Air cooling, liquid cooling and enclosed liquid cooling all with its own pros and cons.  Once again this is all determined on preference and need.   I absolutely swear by my Corsair H100.  Then again running Battlefield 3 on max settings across three 23" monitors requires it. :)




My First Entry

This blog will reflect my journey in becoming a security professional.  From building my computer, to setting up my first home network to analyzing my first piece of malware.  I will try and document my mistakes hopefully in a matter which people will find informative.  Enjoy!