![]() |
|
#1
|
|||
|
|||
|
Everybody here registered ZoneAlarm users, right?
There's something odd today in the ZoneAlarm customer area. Thoughts? ![]() Last edited by elio : May 10th, 2007 at 05:18 AM. |
|
#2
|
||||
|
||||
|
Quote:
Just an empty page... to my end. But if a click on my account I get the page where you are asked to input your log-in and password. Fax |
|
#3
|
|||
|
|||
|
Quote:
What does "click on my account" mean? Have you got JavaScript enabled? |
|
#4
|
||||
|
||||
|
Quote:
Yes, empty page... only ZA headers and footers. Your link is to ZA customer account. You need to input the login and password to log-in. Yes, Java is enabled. Fax |
|
#5
|
||||
|
||||
|
Quote:
What I should have seen Elio? Fax |
|
#6
|
|||
|
|||
|
Quote:
This is innocuous, but if you were already logged in (or you had password automatic completion) and he was a bad guy he could own your account unnoticed, rather than displaying a dumb "defacement" page. Screenshot attached (taken 2 minutes ago). |
|
#7
|
||||
|
||||
|
Quote:
Thanks for this... In my case it does not work... I have javascript enabled... but I don't use password automatic completion.. and I usually log-off from sites after having used them. My password are kept safe with double Rijndael 256-Bit encryption and don't stay in clipboard or in memory more than 5 seconds after their use Fax |
|
#8
|
|||
|
|||
|
It doesn't work for me either, using IE6. I have javascript enabled as well, I get a popup that IE can't open or process the page with a bunch of numbers, then when I click OK I get Page Not Found.
It does work with Firefox though. |
|
#9
|
|||
|
|||
|
Hi elio,
This very interesting! My results are the same as mcastr. Regarding the link: how did you find it? It appears to be someone's session ID. regards, -rich Last edited by Rmus : May 12th, 2007 at 12:58 AM. |
|
#10
|
||||
|
||||
|
Yep! I can confirm too...
With IE7 nothing. With Firefox it works! Fax |
|
#11
|
|||
|
|||
|
Quote:
It seems that the included script being loaded from a non-SSL server was troublesome ("This page contains unprotected objects..."). I've got no SSL server to work-around, but this one will work on IE7 nonetheless ![]() rich: Quote:
I changed it to use English instead of German, and now I "enhanced" it to work with IE7. Those hardcore hackers, thinking that if it works with Firefox it's gonna work everywhere ![]() Last edited by elio : May 10th, 2007 at 05:36 PM. |
|
#12
|
|||
|
|||
|
Well, after thinking about it, it can't be someone's sessionID because everytime I've checked my own sessions,
once I've logged off and the session cookie is discarded, that page will no longer load. So, what has he done? How did he get that page to load that you posted? Since it's javascript, a search of the cached .js files revealed the culprit: http://www.urs2.net/rsj/computing/imgs/xss_cache.gif http://www.urs2.net/rsj/computing/imgs/xss_js.gif Now, how did that i.js file get cached? Looking at the source code revealed nothing. Hmmm... Must be some obfuscation somewhere. Comparing a legitimate ZA login page with mario's page you linked reveals an interesting difference. The following appears in mario's page but not the legitimate ZA page: Code:
Code:
Easy enough to convert to ASCII. The pertinent data is Code:
Code:
While this is interesting, I hope you will eventually post a real-world example as you described in the other thread, beginning with your post #25, that doesn't require user interaction: http://www.wilderssecurity.com/showthread.php?t=173750 You wrote later in the thread, Quote:
Quote:
You wrote in the other thread, Quote:
It is the point of retrieval which will give us something to work with. regards, -rich ________________________________________________________________ "Talking About Security Can Lead To Anxiety, Panic, And Dread... Or Cool Assessments, Common Sense And Practical Planning..." --Bruce Schneier |
|
#13
|
|||
|
|||
|
Quote:
Code:
If there's some form of auto-completion or "remember me" function, or the victim is already logged in... OMG! Quote:
Three non interactive scenarios:
I could post in this forum something like Quote:
![]() Last edited by elio : May 10th, 2007 at 09:49 PM. |
|
#14
|
|||
|
|||
|
Quote:
This is the point at which I think the attack can be stopped. Can you guess how? I will return to this in a few hours - I'm leaving for a meeting - and I will layout a security strategy that might work. Meanwhile, since you know the code thoroughly, can you suggest a solution to prevent the stealing of the user's information? regards, -rich ________________________________________________________________ "Talking About Security Can Lead To Anxiety, Panic, And Dread... Or Cool Assessments, Common Sense And Practical Planning..." --Bruce Schneier[/quote] |
|
#15
|
|||
|
|||
|
Well, I was hoping you might have come up with a suggestion...
OK. Somewhere in one of these threads I mentioned that everyone should know how their secure-transaction sites work. To be really on top of it would be to know the IP addresses that are called during the transaction. Some sites use an unsecure HTTP home page and then switch to a secure log-in HTTPS page. My bank has just one secure HTTPS URL for the entire transaction. How do you determine the the IP(s)? By letting your browser prompt when you initially establish your account. This requires that you have three browser rules in your firewall ruleset:
http://www.urs2.net/rsj/computing/imgs/xss_ruleset.gif The second two rules have created a White List (custom addresses) of permitted IPs. Have you guessed by now what's going on? This is one way of preventing pharming. Pharming is when a user thinks she/he is accessing the legitimate site's page, when she/he is actually accessing the IP of a spoofed site. And isn't that really what's going on behind the scenes in these scripts? When the user clicks "Submit" the information should stay within the site, but this script says, Nope: I'm sending this to elio-the-evil-hacker . Well, maybe not. Let's test it out with your ZA link from your first post. I went to the ZA site to snag the IPs - that site has tracking and webstore stuff. Oh well... in the name of testing... So, with those IPs in the custom addresses, let's see what happens. Now, with this setup, before you go to your transaction site, you uncheck the first browser rule and this passes the firewall check order down to the next rule, which will alert if an IP request doesn't match what is on the White List (custom addresses). So, I click on your link, the page starts to load, it looks like the normal ZA site, and as soon as the "eval(String.fromCharCode" is appended to the PageSourceCode, the attempt to connect out to cache the i.js file initiates, Code:
http://www.urs2.net/rsj/computing/imgs/xss_kerio.gif At this point, the alert user will realize something is amiss. Verifying: Code:
and: Code:
In your script, when the user clicks "Submit" and initiates the request to connect to elio-the-evil-hacker, a similar alert would be triggered. Well, there may be some sophisticated ways around this, but I don't think cybercriminals are too worried about many people going to this trouble. I know of only one other person besides myself. regards, -rich ________________________________________________________________ "Talking About Security Can Lead To Anxiety, Panic, And Dread... Or Cool Assessments, Common Sense And Practical Planning..." --Bruce Schneier |
|
#16
|
|||
|
|||
|
The NoScript extension for firefox now has some XSS handling functionality.
V. 1.1.4.8.070430 "XSS Sniper + Flash Nanny" Main good news:
|
|
#17
|
|||
|
|||
|
Besides the above, here are some details of the page source at hxxps://www.zonealarm.com/store/......
Code:
Code:
Screenshot ------------ |
|
#18
|
|||
|
|||
|
Hello,
elio, good job on the code. Now... the tricky question. Do you remember what I asked you in the other thread, regarding the link in the forum and getting owned? Well, I do not see how the system gets owned here. No silent installation of a trojan that takes over the system or anything ... That's something that cannot be readily done in Firefox. For example, reading an arbitrary file off the hard disk, changing a dll, injecting tomato soup into winlogon etc... Mrk
__________________
http://www.dedoimedo.com All your base are belong to us Linux Systems Expert / Systems Programmer, Linux System Administrator, LPIC-1, LPIC-2 (WIP), GSEC, CCHD, CCHA |
|
#19
|
||||
|
||||
|
Unless is better deviced, you still easily stop this attack, even without setting specific rules...
Fax |
|
#20
|
|||
|
|||
|
Quote:
![]() |
|
#21
|
||||
|
||||
|
Quote:
The screenshot display what happens if you do not allow unsecure connection while within a secure connection. ie. operation aborted. So, next step to improve it is to connect to a secure site, so to avoid IE to warn you Fax |
|
#22
|
|||
|
|||
|
Quote:
Quote:
Quote:
Many people here tend to overlook what goes on inside their browsers, as long as they've got antivirus, firewall and possibly a sandbox wrapped around their browsers. So anything JavaScript related is either labeled as browser specific (my browser is safer than yours) or paranoid (my PC can't be hacked anyway), while we're talking about cross-browser web bugs, not browser/system vulnerabilities. The fact is that a steadily increasing part of our life is moving online, so having our web identities (and bank accounts) compromised can be just as bad as having our PCs injected with "tomato soup into winlogon etc..." |
|
#23
|
|||||
|
|||||
|
Quote:
![]() Anyway, the only suggestion I could give at this moment would be nadirah's one (use Noscript) coupled with never whitelist sites containing user-generated content!. Quote:
Quote:
Quote:
I also unconditionally approve your attitude to security, default deny (which, if taken seriously, would reveal how anti-virus products as they're conceived today are just a money-mongering joke). But you're suggesting to whitelist HTTP connections (i.e. the sites I can open) and prompt me (block me!) every time I follow a casual link The Noscript extension has been recently called "madness" because denying just code execution (in a non-blocking, easy-opt-in fashion) would be too much "crippling the web"... Quote:
Reflected XSS is neither Phishing nor Phleshing nor Pharming, even if it can be used as a tool to make those scams way more effective: no anti-phishing system that I know would detect these attacks.The most important aspect is that the page is not made up to appear like the original, it is the true original from the true original server (just "enhanced" with some alien code of mine). Now the cool thing is not that my code, once it's there, could steal your data: the real deal is that it can do anything YOU can do. Even supposing that you whitelist the "good" HTTP traffic (and this sounds hardly effective if I decide to post the data in a google group, in a google document or in another wonderful read/write google tool using an account set up just for this scam), how do you cope with the fact I could order a money transfer (supposing this is a bank account or Paypal) or send an email containing the interesting data to my disposable mail address (supposing this is a webmail) or any other funny activity I can imagine to perform impersonating you without leaving the vulnerable site*? *ehy fax ^^ ![]() Last edited by elio : May 11th, 2007 at 08:24 AM. |
|
#24
|
||||
|
||||
|
Quote:
Eheh... LOL Fax |
|
#25
|
|||
|
|||
|
Hello,
elio, Regarding in-browser threats. I think these are indeed overrated, too. Automatically remember your password Well, that does kind of contradict the meaning of password right? Doing sensitive stuff online This has much to do with your country law and bank policy than the Internet. For example, your bank account is limited to transferring money only to a number of accounts. So it does not matter if someone can enter, because that someone cannot do any damage. More on doing sensitive stuff online Why click on a link in an email to access your bank site? You know your bank site. You do not need funny looking links to do that. This has little to do with browser security and much with brains. Life online No matter how fervently Yahoo or MySpace might want me to dedicate my feeble existence to their badly coded pages - and read about my favorite celebrities doing charity enemas in Uganda - this is not something that is going to happen any time soon. - Personally, because I refuse to suckle on the MPIA teat. - Globally, luckily, because people are morons and will take them 30 years to get the hang of the Internet. Eventually, it comes to brains. If you are not likely to fall for any social engineering, you won't fall for this one too. So it's not really a matter of security. It's more of a trend. The victims will always be the same group of people, roughly 90% of the population, the people who never learn. Mrk
__________________
http://www.dedoimedo.com All your base are belong to us Linux Systems Expert / Systems Programmer, Linux System Administrator, LPIC-1, LPIC-2 (WIP), GSEC, CCHD, CCHA |
| « Previous Thread | Next Thread » |
| Thread Tools | Search this Thread |
|
|