Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: Slightly OT: Java in the DB

RE: Slightly OT: Java in the DB

From: <Jared.Still_at_radisys.com>
Date: Mon, 23 Feb 2004 17:51:38 -0800
Message-ID: <OFF4102CD0.9E44E977-ON88256E44.0009FF5F-88256E44.000A24CA@radisys.com>


Content-Type: text/plain; charset="us-ascii"

I'm not a security expert, but it seems to me there are some exploits you would need to take into consideration.

SQL Injection comes to mind.

Also, if 2+ users have expired passwords, do you have a mechanism to prevent user Bob (with an expired account ) from changing Susans password ( also expired ) ?

Are the passwords generated and then mailed to the correct user?

Jared

"Vergara, Michael (TEM)" <mvergara_at_guidant.com> Sent by: oracle-l-bounce_at_freelists.org
 02/23/2004 03:20 PM
 Please respond to oracle-l  

        To:     <oracle-l_at_freelists.org>
        cc: 
        Subject:        RE: Slightly OT: Java in the DB


Ahhh...but that's the trick! The user's only authentication is to the admin database. Once the user clicks on 'Submit' I was intending to hand it off to a PL/SQL module owned by an admin user. The 'real' user never sees that part.  

-----Original Message-----
From: Jared.Still_at_radisys.com [mailto:Jared.Still_at_radisys.com] Sent: Monday, February 23, 2004 3:09 PM
To: oracle-l_at_freelists.org
Subject: RE: Slightly OT: Java in the DB

Creating an app that allows users to connect to the database as a DBA to change a passwords sounds like it have good potential for security holes.

You sure you want to do this?

How often does a user with an expired account really need to do this?

Jared

"Vergara, Michael (TEM)" <mvergara_at_guidant.com> Sent by: oracle-l-bounce_at_freelists.org
 02/23/2004 01:11 PM
 Please respond to oracle-l

        
        To:        <oracle-l_at_freelists.org> 
        cc:         
        Subject:        RE: Slightly OT: Java in the DB



What I am trying to do seems so simple that I still cannot believe I'm not done yet!

I want to build a web page where a 'normal' (non-privileged) user can go, enter his/her login, see a list of the DB's where he/she has an account, enter a new password, click a checkbox (or -boxes), and have the web page call a <Choose- -utility-here> routine to go out and update the user's password on the selected DBs.

I can do everything except get the DB update to work.

There's no daemon. This is intended to be an on-demand utility. There's a central server/instance that has definitions to all the DBs in the TNSNAMES.ORA file. From this DB I harvest the user logins nightly, to build the list to present to the user. I *know* I can connect, although to do the harvest I create a temporary database link, instead of using Java or whatever.

It's the silly step of changing the password. The problem is that the user may wait until after the p/w has expired, so they cannot log in. I found the OCINewPassword routine will do a password change even on a expired login. But ARG! This is the second (or is it third) method I've tried and they have all had one kind of issue or another.

Any more suggestions?

Thanks,
Mike

-----Original Message-----
From: Mladen Gogala [mailto:mladen_at_wangtrading.com] Sent: Monday, February 23, 2004 12:21 PM To: oracle-l_at_freelists.org
Subject: Re: Slightly OT: Java in the DB

Exactly what are you trying to do? For having a daemon (or demon, for that matter) lurking in the darnkness of the central server and resetting expired passwords, the daemon needs to maintain a permanent connection with sufficient privileges to change any user's password, typically, a dba connection. If your DBA doesn't use profiles, with the idle time limitation, you can have a permanently connected process which would change password as soon as it was signalled to him. The question is: what would the password be changed to? There are strings which are extremely hard tu guess (username, "qwerty", "password", "tiger")
and which would make your username secure. At one of my places of work, I've witnessed the following story: a tech support expert leaves a unix worsktation logged in, as root, and goes home at 6 PM, when cleaning
ladies entered the office. One of the cleaning ladies had a 14 years old son which wanted to check the old joke with "rm -rf /". He found out that it really does destroy everything on a unix system. Now, you are absent,
your password expires at 7 P.M. and there is an eager help desk person who wants to test "drop tablescpace FIN_DATA including contents and datafiles cascade constraints" that he or she has seen written somewhere. I'll leave

the rest of the story to you.



Please see the official ORACLE-L FAQ: http://www.orafaq.com

To unsubscribe send email to: oracle-l-request_at_freelists.org put 'unsubscribe' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------




--=_alternative 000A24C788256E44_=
Content-Type: text/html; charset="us-ascii"



<br><font size=2 face="sans-serif">I'm not a security expert, but it seems to me there are some </font>
<br><font size=2 face="sans-serif">exploits you would need to take into consideration.</font>
<br>
<br><font size=2 face="sans-serif">SQL Injection comes to mind.</font>
<br>
<br><font size=2 face="sans-serif">Also, if 2+ users have expired passwords, do you have a</font>
<br><font size=2 face="sans-serif">mechanism to prevent user Bob (with an expired account )</font>
<br><font size=2 face="sans-serif">from changing Susans password ( also expired ) ?</font>
<br>
<br><font size=2 face="sans-serif">Are the passwords generated and then mailed to the correct user?</font>
<br>
<br><font size=2 face="sans-serif">Jared</font>
<br><font size=2 face="sans-serif"><br>
</font>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td>
<td><font size=1 face="sans-serif"><b>&quot;Vergara, Michael (TEM)&quot; &lt;mvergara_at_guidant.com&gt;</b></font>
<br><font size=1 face="sans-serif">Sent by: oracle-l-bounce_at_freelists.org</font>
<p><font size=1 face="sans-serif">&nbsp;02/23/2004 03:20 PM</font>
<br><font size=2 face="sans-serif">&nbsp;</font><font size=1 face="sans-serif">Please respond to oracle-l</font>
<br>
<td><font size=1 face="Arial">&nbsp; &nbsp; &nbsp; &nbsp; </font>
<br><font size=1 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; To: &nbsp; &nbsp; &nbsp; &nbsp;&lt;oracle-l_at_freelists.org&gt;</font>
<br><font size=1 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; cc: &nbsp; &nbsp; &nbsp; &nbsp;</font>
<br><font size=1 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; Subject: &nbsp; &nbsp; &nbsp; &nbsp;RE: Slightly OT: Java in the DB</font></table>
<br>
<br>
<br><font size=2 color=blue face="Courier New">Ahhh...but that's the trick! &nbsp;The user's only authentication is</font>
<br><font size=2 color=blue face="Courier New">to the admin database. &nbsp;Once the user clicks on 'Submit' I</font>
<br><font size=2 color=blue face="Courier New">was intending to hand it off to a PL/SQL module owned by an</font>
<br><font size=2 color=blue face="Courier New">admin user. &nbsp;The 'real' user never sees that part.</font>
<br><font size=3 face="Times New Roman">&nbsp;</font>
<br><font size=2 face="Tahoma">-----Original Message-----<b><br>
From:</b> Jared.Still_at_radisys.com [mailto:Jared.Still_at_radisys.com]<b><br> Sent:</b> Monday, February 23, 2004 3:09 PM<b><br> To:</b> oracle-l_at_freelists.org<b><br> Subject:</b> RE: Slightly OT: Java in the DB<br>
</font>
<br><font size=2 face="sans-serif"><br>
Creating an app that allows users to connect to the database as a</font><font size=3 face="Times New Roman"> </font><font size=2 face="sans-serif"><br> DBA to change a passwords sounds like it have good potential</font><font size=3 face="Times New Roman"> </font><font size=2 face="sans-serif"><br> for security holes.</font><font size=3 face="Times New Roman"> <br>
</font><font size=2 face="sans-serif"><br>
You sure you want to do this?</font><font size=3 face="Times New Roman"> <br>
</font><font size=2 face="sans-serif"><br>
How often does a user with an expired account really need to do this?</font><font size=3 face="Times New Roman"> <br>
</font><font size=2 face="sans-serif"><br>
Jared</font><font size=3 face="Times New Roman"> <br>
<br>
<br>
</font>
<table width=100%>
<tr valign=top>
<td width=2%>
<td width=54%><font size=1 face="sans-serif"><b>&quot;Vergara, Michael (TEM)&quot; &lt;mvergara_at_guidant.com&gt;</b></font><font size=3 face="Times New Roman"> </font><font size=1 face="sans-serif"><br>
Sent by: oracle-l-bounce_at_freelists.org</font><font size=3 face="Times New Roman"> </font>
<p><font size=1 face="sans-serif">&nbsp;02/23/2004 01:11 PM</font><font size=3 face="Times New Roman"> </font><font size=2 face="sans-serif"><br>
</font><font size=1 face="sans-serif">Please respond to oracle-l</font><font size=3 face="Times New Roman"> </font>
<td width=42%><font size=1 face="Arial">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=1 face="sans-serif"><br>
&nbsp; &nbsp; &nbsp; &nbsp;To: &nbsp; &nbsp; &nbsp; &nbsp;&lt;oracle-l_at_freelists.org&gt;</font><font size=3 face="Times New Roman"> </font><font size=1 face="sans-serif"><br> &nbsp; &nbsp; &nbsp; &nbsp;cc: &nbsp; &nbsp; &nbsp; &nbsp;</font><font size=3 face="Times New Roman"> </font><font size=1 face="sans-serif"><br> &nbsp; &nbsp; &nbsp; &nbsp;Subject: &nbsp; &nbsp; &nbsp; &nbsp;RE: Slightly OT: Java in the DB</font></table>
<br><font size=3 face="Times New Roman"><br>
<br>
</font><font size=2 face="Courier New"><br>
What I am trying to do seems so simple that I still cannot <br> believe I'm not done yet!<br>
<br>
I want to build a web page where a 'normal' (non-privileged)<br> user can go, enter his/her login, see a list of the DB's<br> where he/she has an account, enter a new password, click a<br> checkbox (or -boxes), and have the web page call a &lt;Choose-<br> the-utility-here&gt; routine to go out and update the user's<br> password on the selected DBs.<br>
<br>
I can do everything except get the DB update to work.<br>
<br>
There's no daemon. &nbsp;This is intended to be an on-demand <br> utility. &nbsp;There's a central server/instance that has<br> definitions to all the DBs in the TNSNAMES.ORA file. &nbsp;From<br> this DB I harvest the user logins nightly, to build the list</font>
<br><font size=2 face="Courier New">to present to the user. &nbsp;I *know* I can connect, although to<br>
do the harvest I create a temporary database link, instead of<br> using Java or whatever.<br>
<br>
It's the silly step of changing the password. &nbsp;The problem is<br> that the user may wait until after the p/w has expired, so they<br> cannot log in. &nbsp;I found the OCINewPassword routine will do a<br> password change even on a expired login. &nbsp;But ARG! &nbsp;This is<br> the second (or is it third) method I've tried and they have all<br> had one kind of issue or another.<br>
<br>
Any more suggestions?<br>
<br>
Thanks,<br> Mike<br>
<br>
<br>
-----Original Message-----<br> From: Mladen Gogala [mailto:mladen_at_wangtrading.com]<br> Sent: Monday, February 23, 2004 12:21 PM<br> To: oracle-l_at_freelists.org<br> Subject: Re: Slightly OT: Java in the DB<br>
<br>
<br>
Exactly what are you trying to do? For having a daemon (or demon,<br> for that matter) lurking in the darnkness of the central server and<br> resetting expired passwords, the daemon needs to maintain a permanent<br> connection with sufficient privileges to change any user's password,<br> typically, a dba connection. If your DBA doesn't use profiles, with <br> the idle time limitation, you can have a permanently connected process <br> which would change password as soon as it was signalled to him. The <br> question is: what would the password be changed to? There are strings<br> which are extremely hard tu guess (username, &quot;qwerty&quot;, &quot;password&quot;, &quot;tiger&quot;)<br> and which would make your username secure. At one of my places of<br> work, I've witnessed the following story: a tech support expert leaves<br> a unix worsktation logged in, as root, and goes home at 6 PM, when cleaning <br> ladies entered the office. One of the cleaning ladies had a 14 years old<br> son which wanted to check the old joke with &quot;rm -rf /&quot;. &nbsp;He found out <br> that it really does destroy everything on a unix system. Now, you are absent,<br> your password expires at 7 P.M. and there is an eager help desk person who<br> wants to test &quot;drop tablescpace FIN_DATA including contents and datafiles <br> cascade constraints&quot; that he or she has seen written somewhere. I'll leave <br> the rest of the story to you.<br>
<br>
----------------------------------------------------------------<br> Please see the official ORACLE-L FAQ: http://www.orafaq.com<br> ----------------------------------------------------------------<br> To unsubscribe send email to: &nbsp;oracle-l-request_at_freelists.org<br> put 'unsubscribe' in the subject line.<br> --<br> Archives are at http://www.freelists.org/archives/oracle-l/<br> FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html<br> -----------------------------------------------------------------</font><font size=3 face="Times New Roman"><br>
<br>
</font>
<br>
<br>
--=_alternative 000A24C788256E44_=-- ---------------------------------------------------------------- Please see the official ORACLE-L FAQ: http://www.orafaq.com ---------------------------------------------------------------- To unsubscribe send email to: oracle-l-request_at_freelists.org put 'unsubscribe' in the subject line. -- Archives are at http://www.freelists.org/archives/oracle-l/ FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html -----------------------------------------------------------------
Received on Mon Feb 23 2004 - 19:48:48 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US