Programming Forums
User Name Password Register
 

RSS Feed
FORUM INDEX | TODAY'S POSTS | UNANSWERED THREADS | ADVANCED SEARCH

Reply
 
Thread Tools Display Modes
Old Jul 22nd, 2004, 7:13 PM   #1
Infinite Recursion
Programming Guru
 
Infinite Recursion's Avatar
 
Join Date: Jul 2004
Location: United States
Posts: 3,466
Rep Power: 8 Infinite Recursion is on a distinguished road
Send a message via MSN to Infinite Recursion Send a message via Yahoo to Infinite Recursion
I have a web application developed in PL/SQL running on Oracle. I am randomly generating 10 passwords for my users as examples that they can select and use if they desire. They are fairly complex passwords, so the user may write them down or print them out... this is not acceptable by our audit standards.

Now, I know that it is damn near impossible to keep the user from printing passwords, because if they know what they are doing: disabling java script, right clicks, print screens, etc... they can get it. All of this aside I will still pose the question.

I want the user to not be able to use the "common" ways of printing these screens.
I have found java scripts (though not tested yet) to disable the right click and the print screen button... but not File -> Print. Is there some way, I can embedd this list into the site via javascript or PL/SQL's equivalent to where it will blank itself out if printing or copying is attempted or eliminate the possibilitiy or saving or printing altogether?

I know this is not technically 100% possible, but the end users aren't really advanced enough to know the "magical" ways to print the screen after its restricted with said methods.

What would be your approach?

Thanks for any responses.
__________________
http://jasonpowers.net

"There are a thousand hacking at the branches of evil to one who is striking at the root."
Infinite Recursion is offline   Reply With Quote
Old Jul 22nd, 2004, 8:52 PM   #2
big_k105
PFO Founder

 
big_k105's Avatar
 
Join Date: Mar 2004
Location: Fargo, ND
Posts: 1,623
Rep Power: 10 big_k105 is on a distinguished road
Send a message via AIM to big_k105 Send a message via MSN to big_k105 Send a message via Yahoo to big_k105
well im not really sure how to restrict the printing and what not but i know that most scripts that stop you from being allowed to right click are easy to bypass by just right clicking and the left clicking really quick or right hold and then left and let go at the same time and you will by pass the stopping of right clicking. i learned this a few years back and know it works pretty well to get by that. cause alot of sites try to disable right clicking on images so you can copy them but that doesnt work
__________________
BIG K aka Kyle
Programming Forums
Kyle K Online

Please do not PM or email me programming questions. Post them in the forums instead.
big_k105 is offline   Reply With Quote
Old Jul 22nd, 2004, 9:01 PM   #3
Infinite Recursion
Programming Guru
 
Infinite Recursion's Avatar
 
Join Date: Jul 2004
Location: United States
Posts: 3,466
Rep Power: 8 Infinite Recursion is on a distinguished road
Send a message via MSN to Infinite Recursion Send a message via Yahoo to Infinite Recursion
Yeah, I figured there wasn't a sure fire way to do this... I'm going to try and use the "user doesn't know any better" approach and see if that works.

I noticed that this thread was moved. Is this javascript section newly added? Or am I brain dead and completely miss it when I added the thread?
__________________
http://jasonpowers.net

"There are a thousand hacking at the branches of evil to one who is striking at the root."
Infinite Recursion is offline   Reply With Quote
Old Jul 22nd, 2004, 9:15 PM   #4
big_k105
PFO Founder

 
big_k105's Avatar
 
Join Date: Mar 2004
Location: Fargo, ND
Posts: 1,623
Rep Power: 10 big_k105 is on a distinguished road
Send a message via AIM to big_k105 Send a message via MSN to big_k105 Send a message via Yahoo to big_k105
its always been here but it was in the scripting language misc instead of the web dev misc
__________________
BIG K aka Kyle
Programming Forums
Kyle K Online

Please do not PM or email me programming questions. Post them in the forums instead.
big_k105 is offline   Reply With Quote
Old Jul 22nd, 2004, 9:24 PM   #5
Infinite Recursion
Programming Guru
 
Infinite Recursion's Avatar
 
Join Date: Jul 2004
Location: United States
Posts: 3,466
Rep Power: 8 Infinite Recursion is on a distinguished road
Send a message via MSN to Infinite Recursion Send a message via Yahoo to Infinite Recursion
Oops. Makes sense.
__________________
http://jasonpowers.net

"There are a thousand hacking at the branches of evil to one who is striking at the root."
Infinite Recursion is offline   Reply With Quote
Old Jul 22nd, 2004, 11:48 PM   #6
kurifu
Expert Programmer
 
kurifu's Avatar
 
Join Date: Jul 2004
Location: Halifax, Nova Scotia (Canada)
Posts: 784
Rep Power: 5 kurifu is on a distinguished road
Send a message via ICQ to kurifu Send a message via MSN to kurifu
An interesting thought on this... if you embed the password into an image file, and then load that image as the background for an HTML tbale cell. 99% of browsers will not print background information ... period... and you can not usually right click on the password and save the data either since backgrounds are not treated as your standard image would be.

Best of all, since you can embbed it in a table, you can make it look presentable, just put a couple of spaces in the table or some such like that.

If you needed to make finding the file more difficult, generate an annoyingly long filename, maybe from a few md5 sums, call a script which will calculate the md5 some of some random text on the fly and then load the appropriate image with that data... then the user would never even really know where the image was coming from. Or just base64 encode even.. does not have to be md5.
__________________
Clifford Matthew Roche <geek@cliffordroche.com>
Web Hosting: http://www.crd-hosting.com
Consulting: http://www.crdev-consulting.com
kurifu is offline   Reply With Quote
Old Jul 23rd, 2004, 12:25 AM   #7
Infinite Recursion
Programming Guru
 
Infinite Recursion's Avatar
 
Join Date: Jul 2004
Location: United States
Posts: 3,466
Rep Power: 8 Infinite Recursion is on a distinguished road
Send a message via MSN to Infinite Recursion Send a message via Yahoo to Infinite Recursion
Quote:
...if you embed the password into an image file, and then load that image as the background for an HTML tbale cell... 99% of browsers will not print background information
This is quite interesting, unfortunately as of now I do not know how to do this... but I plan on reviewing it tomorrow. Thanks for the info.
__________________
http://jasonpowers.net

"There are a thousand hacking at the branches of evil to one who is striking at the root."
Infinite Recursion is offline   Reply With Quote
Old Jul 23rd, 2004, 12:34 AM   #8
kurifu
Expert Programmer
 
kurifu's Avatar
 
Join Date: Jul 2004
Location: Halifax, Nova Scotia (Canada)
Posts: 784
Rep Power: 5 kurifu is on a distinguished road
Send a message via ICQ to kurifu Send a message via MSN to kurifu
It is a bit tricky... fairly easy to do with PHP since there are very usefull graphical manipulation libraries in PHP... but you could use PHP to create the script which generates the actually image file. All you have to do is find an abscure way to name that file and pass the parameters into it so that it is difficult to call the file...

Actually you could probably set some server side variable in the $_SESSION superglobal, and force a specific hash value to be present (perhaps a hash of the session id) and once the password is generated from that file, delete the hash so a subsequent call will not render the image. They will get the image in the background, and if they go as far as looking into the document source to pull the script name which generated the password, calling the file directly will render a blank image.. and effectively useless data.

This method seems like it would work really well in all honesty, though not perfect since one could knowingly seed the hash value and then make an implicit call to the rendering file to get the image... but that is a lot of work for someone who does not know how it works internally
__________________
Clifford Matthew Roche <geek@cliffordroche.com>
Web Hosting: http://www.crd-hosting.com
Consulting: http://www.crdev-consulting.com
kurifu is offline   Reply With Quote
Old Jul 23rd, 2004, 12:40 AM   #9
Infinite Recursion
Programming Guru
 
Infinite Recursion's Avatar
 
Join Date: Jul 2004
Location: United States
Posts: 3,466
Rep Power: 8 Infinite Recursion is on a distinguished road
Send a message via MSN to Infinite Recursion Send a message via Yahoo to Infinite Recursion
Unfortunately, this configuration does not have PHP support... only Javascript and PL/SQL... However, the approach is logical and should be able to be implemented in the languages at my disposal. Thanks for the idea.
__________________
http://jasonpowers.net

"There are a thousand hacking at the branches of evil to one who is striking at the root."
Infinite Recursion is offline   Reply With Quote
Old Jul 23rd, 2004, 12:42 AM   #10
kurifu
Expert Programmer
 
kurifu's Avatar
 
Join Date: Jul 2004
Location: Halifax, Nova Scotia (Canada)
Posts: 784
Rep Power: 5 kurifu is on a distinguished road
Send a message via ICQ to kurifu Send a message via MSN to kurifu
Ah, sorry I completely forgot about that in my last post... none the less with Java alone something similar to that should be doable, perhaps not as easily.. but still doable.

Oh one other vulnerability that system holds is if the user takes a screenshot.. but fortunatly most users do not know how to do that... even the advanced users... lol.

And remember if you can not generate images, you could also use smaller images, one for each letter... it would be pointless for a user to download and save each image... they would probably never put it back together in the proper order You would not even have to hide the names of this images... and you could just use multiple cells to display it since you can only have one background per cell.
__________________
Clifford Matthew Roche <geek@cliffordroche.com>
Web Hosting: http://www.crd-hosting.com
Consulting: http://www.crdev-consulting.com
kurifu is offline   Reply With Quote
Reply

Bookmarks

« Previous Thread in Forum | Next Thread in Forum »

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump




DaniWeb IT Discussion Community
All times are GMT -5. The time now is 1:29 AM.

Powered by vBulletin® Version 3.7.0, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Copyright ©2007 DaniWeb® LLC