01-03-2017
This sort of operation is intentionally blocked in OSX and most UNIX in general. UNIX logins and login-related tools (and even remote tools, like ssh) accept passwords typed by a human being in realtime - not from files, scripts, variables, commandline options, CGI, or anything else. Nothing but an interactive terminal will do.
This is to prevent people from writing scripts which automatically escalate themselves into other people's privileges or especially into root privileges. Anyone could read such a script and discover the secret to subverting your systems. This also places another barrier in the way of an attacker trying to do the same sort of thing you are.
Not even root can really avoid this, it just cuts out the middleman since it doesn't actually need to login to anything to update anyone's password entries.
You may need to rethink what you're trying to do. Some sort of privileged login should be involved, either via sudo or root itself, not brute-forcing passwords into inputs meant to be typed into. (Which you could, with the third-party expect brute-forcing tool, but that shouldn't be done on a regular basis.)
Last edited by Corona688; 01-03-2017 at 05:14 PM..
This User Gave Thanks to Corona688 For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I have a script which connects to database. I want user to input user name and password but dont want the password characters to be displayed on screen. How can i accept input from user in encrypted form. (2 Replies)
Discussion started by: baglasumit21
2 Replies
2. UNIX for Advanced & Expert Users
Hello,
I need to change user and run some commands by using a script.
lets say, I'm using
su - someuser << start
password required -----> how can I enter the password here
command 1
command 2
command 3
command 4
start
While trying to run this I got the following message:
"standard... (2 Replies)
Discussion started by: Alalush
2 Replies
3. UNIX for Dummies Questions & Answers
Hi
I have the following issue
i am going to ask from the user the password
The password can have $ anywhere that is first last or in between but i have to append \ before the $ sign in the password can anyone please help
For example
o/p in the console will be like the... (3 Replies)
Discussion started by: ssuresh1999
3 Replies
4. Shell Programming and Scripting
I am writing a script that can automatically login to Storage CAM console. i use this command,
./sscs login -u user -h localhost.
at that time it will prompt for password, is it possible for store password in a file and supply it when it waits for password.
Thanks in advance.
Regards
SK (1 Reply)
Discussion started by: cutechaps
1 Replies
5. Shell Programming and Scripting
Hi guys,
I am using Solaris 10 and we install IBM OnDemand server there. there's a command called arsload that we use to load document and query document too. I need to write a script to query document but when querying document, this command prompt for username then password.
My question is... (3 Replies)
Discussion started by: markthien
3 Replies
6. Shell Programming and Scripting
I'm a fairly new AIX admin (disclaimer).
We have SQL scripts written by end users that use a userid and passwd to connect to our DB2 database.
Is it possible to create an "input file" that contains the db2 connect parameters and yet secure the file from the SQL creator?
i.e., they can "use"... (2 Replies)
Discussion started by: mpheine
2 Replies
7. Shell Programming and Scripting
All,
My script is
-----------
#cat pass.sh
password=123
echo -n "Enter pass:"
read pass
if ; then
echo "Correct password"
else
echo "Wrong password"
fi
When i run this script, text(password) which i'm entering is visible in screen... (4 Replies)
Discussion started by: thomasraj87
4 Replies
8. Shell Programming and Scripting
Hey guys,
This is my situation.
I'm using the script to add a user account, however, i want the same details copied into the htdigest password list. the format is username:virtualservername:hashed/encrypted password.
This is the command :
sudo htdigest /etc/apache2/passwords... (0 Replies)
Discussion started by: xxxx
0 Replies
9. Shell Programming and Scripting
hy,
I wrote a simple shell script to monitor (with Nagios) a SNX VPN function. Here the Code snippet:
testing=`ssh user@IP-address 'ls /etc/sysconfig/network-scripts/ifcfg-eth0'`
#echo $testing
if ; then
echo "VPN is working"
exit 0
else snx -s server -u user
... (2 Replies)
Discussion started by: tomies
2 Replies
10. Shell Programming and Scripting
I am looking for a way to start a script and have it prompt for a password that will be used later on in the script to SSH to another host and to SFTP. I don't want the password to be hard coded. Below is my script with the actual IP's and usernames removed.
#!/usr/bin/expect -f... (2 Replies)
Discussion started by: jbrass
2 Replies
LEARN ABOUT OPENSOLARIS
d_passwd
d_passwd(4) File Formats d_passwd(4)
NAME
d_passwd - dial-up password file
SYNOPSIS
/etc/d_passwd
DESCRIPTION
A dial-up password is an additional password required of users who access the computer through a modem or dial-up port. The correct pass-
word must be entered before the user is granted access to the computer.
d_passwd is an ASCII file which contains a list of executable programs (typically shells) that require a dial-up password and the associ-
ated encrypted passwords. When a user attempts to log in on any of the ports listed in the dialups file (see dialups(4)), the login program
looks at the user's login entry stored in the passwd file (see passwd(4)), and compares the login shell field to the entries in d_passwd.
These entries determine whether the user will be required to supply a dial-up password.
Each entry in d_passwd is a single line of the form:
login-shell:password:
where
login-shell The name of the login program that will require an additional dial-up password.
password An encrypted password. Users accessing the computer through a dial-up port or modem using login-shell will be required to
enter this password before gaining access to the computer.
d_passwd should be owned by the root user and the root group. The file should have read and write permissions for the owner (root) only.
If the user's login program in the passwd file is not found in d_passwd or if the login shell field in passwd is empty, the user must sup-
ply the default password. The default password is the entry for /usr/bin/sh. If d_passwd has no entry for /usr/bin/sh, then those users
whose login shell field in passwd is empty or does not match any entry in d_passwd will not be prompted for a dial-up password.
Dial-up logins are disabled if d_passwd has only the following entry:
/usr/bin/sh:*:
EXAMPLES
Example 1 Sample d_passwd file.
Here is a sample d_passwd file:
/usr/lib/uucp/uucico:q.mJzTnu8icF0:
/usr/bin/csh:6k/7KCFRPNVXg:
/usr/bin/ksh:9df/FDf.4jkRt:
/usr/bin/sh:41FuGVzGcDJlw:
Generating An Encrypted Password
The passwd (see passwd(1)) utility can be used to generate the encrypted password for each login program. passwd generates encrypted pass-
words for users and places the password in the shadow (see shadow(4)) file. Passwords for the d_passwd file will need to be generated by
first adding a temporary user id using useradd (see useradd(1M)), and then using passwd(1) to generate the desired password in the shadow
file. Once the encrypted version of the password has been created, it can be copied to the d_passwd file.
For example:
1. Type useradd tempuser and press Return. This creates a user named tempuser.
2. Type passwd tempuser and press Return. This creates an encrypted password for tempuser and places it in the shadow file.
3. Find the entry for tempuser in the shadow file and copy the encrypted password to the desired entry in the d_passwd file.
4. Type userdel tempuser and press Return to delete tempuser.
These steps must be executed as the root user.
FILES
/etc/d_passwd dial-up password file
/etc/dialups list of dial-up ports requiring dial-up passwords
/etc/passwd password file
/etc/shadow shadow password file
SEE ALSO
passwd(1), useradd(1M), dialups(4), passwd(4), shadow(4)
WARNINGS
When creating a new dial-up password, be sure to remain logged in on at least one terminal while testing the new password. This ensures
that there is an available terminal from which you can correct any mistakes that were made when the new password was added.
SunOS 5.11 2 Sep 2004 d_passwd(4)