CUISPA Podcast #25 - We're back!
Panelists:
John Brozycki, Alex Rams, Larry Porres
Recorded: 7/27/2009
Questions, comments, or something you'd like us to cover? Contact us at: podcast@cuispa.org
I. News stories
1) SSNs are NOT
randomly assigned and can be fairly accurately predicted. For
anyone still considering SSNs as a valid and secure
form of ID, this is Fonzie jumping the shark on his
water skiis. It's also predicted that this attack
will become more and more refined.
http://www.wired.com/wiredscience/2009/07/predictingssn/
2) Network Solutions breach
exposes 500,000 cards. Remember when a breach of half a million cards
sounded like a lot?
http://www.theregister.co.uk/2009/07/25/network_solutions_ecommerce_breach/
3) More Adobe flaws.
Adobe's PDF, Flash, and Shockwave clients have become a real security issue,
with serious vulnerabilities seeming to pop up every couple of weeks.
http://arstechnica.com/security/news/2009/07/flash-security-vulnerability-exploited-in-pdfs.ars
4) 12% of email users have
tried to buy stuff from spam. No wonder it keeps on coming.
http://arstechnica.com/web/news/2009/07/12-of-e-mail-users-try-to-buy-stuff-from-spam-e-mail.ars
5) Return of the L0pht.
The infamous group is again working on some projects, including an update to
the popular password auditing tool L0phtcrack. Another project is HackerNews Network, a video stream of security news. What
other projects might they be working on? It's probably worth following their
website over the upcoming months. (http://www.l0pht.com/ www.hackernews.com)
http://www.csoonline.com/article/498016/L_pht_Makes_Comeback_Sorta_With_Hacker_News_Network
6) Pepper Spray Shooting ATMs
in
http://www.guardian.co.uk/world/2009/jul/12/south-africa-cash-machine-pepper-spray
7) Windows 7 Released to
Manufacturing (RTM). IT Professionals
and Developers with MSDN or TechNet subscriptions can get the RTM versions on
August 6th..
Microsoft Action Pack subscribers can download the OS on August 23rd. Windows 7
will be available to consumers on October 22nd.'
http://www.microsoft.com/Presspass/press/2009/jul09/07-22Windows7RTMPR.mspx
http://www.informationweek.com/news/windows/operatingsystems/showArticle.jhtml?articleID=218600379
8) Low-Tech Attacks.
Forget about technically sophisticated attacks like man-in-the-middle as
criminals are 'resurrecting low-tech attacks É according to financial
fraud experts are using little more than a telephone and old-fashion con
artistry dubbed Ôman-in-the-phone'. The criminal calls a target, claiming to be
the fraud department of the target's bank calling to alert the mark to
potential unauthorized activity.' 'The recipient of the call is then told to
please hold while a fraud specialist is brought on the line. The perpetrator
then calls the victim's bank, and bridges the call, while placing his portion
of the call on mute.' The bank's fraud department asks various questions in a
bid to authenticate the victim, the criminal records the customer's answers.'
*may include victim's SS#, National ID#, PIN or password, and/or the amount of
the last deposit or location of the last transaction.
http://voices.washingtonpost.com/securityfix/2009/07/high_crimes_using_low-tech_att.html
9) Pay or it'll display.
Russian cybercrooks have come up with a variant of ransomware scams, which works by displaying an invasive advert
for online smut in users' browsers that victims are extorted to pay to
remove...
http://www.theregister.co.uk/2009/07/27/ransompage_trojan/
II. Tech Segment
Credit card number generator in Perl.
Sometimes it can be handy to have one or more card numbers for testing purposes. These numbers would be valid in the sense that they would pass the checksum algorithm. However, the BIN (Banking Institution Number) can be whatever you want and the card number itself may not exist. I've used this to 'test' phishing sites as well as to test applications to see how they reacted to different values and see if they recognized proper BINs. This Perl script will generate any desired number or card values for any desired BIN. In general, the algorithm is widely known and there are a number of criminal tools to do this sort of thing for malicious purposes.
How to use:
- Install Perl if you don't have it on your system. You can
get it at:
http://www.activestate.com/activeperl/
- Copy the Perl script at the end of this document and paste it into a separate file. Name it ccgen.pl when you save it.
- Run it by typing perl.exe ccgen.pl.
-Follow the prompts to set the BIN and the number of numbers you want to produce. It will save to a file called ccnumbers.txt, as well as output to the screen.
-Use the program *legally* to test your own applications. It can also allow you to get farther into a phish site that is targeting your CU without having to use a real card number.
Note: If you have problems copying and pasting the program, send us an email.
III. Cooltility (Cool + Utility = Cooltility)
A1. DimDim. This is an online meeting offering free accounts that can host meetings up to 20 participants. No special client is needed if you have a supported browser and Flash installed.
IV. Smarter U.
One investment you can never lose on is the investment of yourself.
1. Reminder: Find a plethora of papers on a ton of topics at SANS Reading Room. Lots of timely papers to learn from, perhaps even one (or two) from one of your podcast hosts (wink wink, nudge nudge): http://www.sans.org/reading_room/
2. Online training. (Monthly or annual subscriptions. Alex is using this.) www.lynda.com
Got a suggestion for this space? Please send it to podcast@cuispa.org.
Appendix: Perl listing
# ======================================================================
# NAME: ccgen.pl
#
# AUTHOR: John Brozycki
# DATE : 5/11/2006
#
# PURPOSE: Generate a user selected number of credit card numbers, based
# off a user selected or default BIN, for use in "cramming"
# phishing sites with invalid card numbers.
# ======================================================================
#
$bin = 0;
$count = 0;
$BinChecksum = 0;
$DefaultBIN = "123456"; #Change this to change default BIN
$DefaultCount = 10; #Change this to change default quantity of CC#s
$ccfile = "ccnumbers.txt"; #Change this to change default outfile name
$BadBINEntered = "Y";
$InvalidCount = "Y";
open (OUTFILE, ">".$ccfile) or die "Cannot open output file: $!";
# =========================================================================
# Print instructions
# =========================================================================
print ("---------------------------------------------------------------------\n");
print (" This utility will generate however many 16-digit credit card numbers\n");
print ("you want starting with a default BIN or user supplied 6-digit BIN. After\n");
print ("prompting you for the BIN, you are asked how many numbers to generate.\n");
print ("The numbers generated will pass credit card checksum tests, but will not\n");
print ("work if an inquiry is run against the card number.\n\n");
print ("Output is to the screen and also to a local file named:".$ccfile."\n");
print ("---------------------------------------------------------------------\n\n");
#
# =========================================================================
# Get the User's input for the BIN or use the default if nothing is entered
# =========================================================================
while ($BadBINEntered eq "Y")
{
print ("\nPlease enter a BIN code [".$DefaultBIN."=default]: ");
$_ = <STDIN>;
$bin = $_;
chomp($bin);
if ($bin =~ /[0-9][0-9][0-9][0-9][0-9][0-9]/)
{
$BadBINEntered = "N";
}
if ($bin eq "" and $BadBINEntered eq "Y")
{
print ("\nUsing the default BIN of".$DefaultBIN."\n");
$bin = $DefaultBIN;
$BadBINEntered = "N";
}
if ($BadBINEntered eq "Y")
{
print ("\nERROR: BIN needs to be a 6 digit numeric value.\n");
print ("You entered: ".$bin." Please try again.\n\n");
}
}
#
# =========================================================================
# Get the User's input for the number of CC numbers to generate
# =========================================================================
while ($InvalidCount eq "Y")
{
print ("\nPlease enter how many CC#s to generate, 1-1000 [".$DefaultCount."=default]: ");
$_ = <STDIN>;
$count = $_;
chomp($count);
if ($count > 0 and $count < 1001)
{
$InvalidCount = "N";
}
if ($count eq "" and $InvalidCount eq "Y")
{
print ("\nUsing the default count of ".$DefaultCount."\n");
$count = $DefaultCount;
$InvalidCount = "N";
}
if ($InvalidCount eq "Y")
{
print ("\nERROR: Count needs to be a numeric value between 1 and 1000.\n");
print ("You entered: ".$count." Please try again.\n\n");
}
}
#
# =========================================================================
# Calculate the checksum for the BIN once, then reuse for each card number
# =========================================================================
print ("Using BIN#:".$bin." and making ".$count." card numbers.\n");
for ($increment = 0; $increment <= 5; $increment++)
{
$digit = substr($bin, $increment, 1);
$digit = $digit * (1+(($increment+1) % 2));
if ($digit > 9)
{
$digit = $digit - 9
}
$BinChecksum = $BinChecksum + $digit;
}
#
# =========================================================================
# Loop through the CC# creation process until the desired number of CC#s
# has been generated.
# =========================================================================
while ($count > 0)
{
$ccnum = "";
# ====================================================================
# For CC digits 7 to 15, generate a random number and update running
# checksum
# ====================================================================
for ($increment = 7; $increment <= 15; $increment++)
{
$digit = int(rand(10));
$ccnum = $ccnum.$digit;
$digit = $digit * (1+(($increment) % 2));
if ($digit > 9)
{
$digit = $digit - 9
}
$BinChecksum = $BinChecksum + $digit;
}
# =========================================================================
# Create the last digit by getting the remainder of the current checksum
# divided by 10 and adding that remainder to make it divisible by 10.
# =========================================================================
$digit = (10-($BinChecksum % 10));
if ($digit eq 10)
{
$digit = "0";
}
$ccnum = $bin.$ccnum.$digit;
print ($ccnum."\n");
print OUTFILE ($ccnum."\n");
$count = $count - 1;
}
close OUTFILE;