win2000/xp忘记密码的方法(转)

2023-11-08 15:10
文章标签 方法 密码 xp 忘记 win2000

本文主要是介绍win2000/xp忘记密码的方法(转),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

win2000/xp忘记密码的方法(转)

  铩铩飛in2000/xp忘记密码的方法

  1.清除sam文件:

  winnt系列的系统账户信息是存在%systemroot%system32configsam这个注册表文件里的。如果系统里没有重要的账户,或者账户比较少,用删除%systemroot%system32configsam的方法是比较简单的,不过因为系统会还原为只有administrator(密码为空)和guest二个账户,所以有些程序因为它们所依赖的账户丢失了,如iis、vmware就不能启动了。

  原来听说这种方法只能适用于nt workstation系列(2kpro),不能用于server,我在2000professional和2000 advanced server上试验都是成功的。不知道为什么会有上述说法,可能是活动目录ad下不行把。

  当然首先你要能够访问系统分区,来把sam文件改名或者删除。如果是fat32、fat分区,使用98启动盘就行了。如果是ntfs分区,可以使用winternal的ntfs for dos、ntfs for 98或者是支持ntfs的启动光盘,再或者挂到其他win2000、linux等机器上,再再或者重新安装一个新的win2000。

  2.专用工具:

  windows管理员密码丢失还有一个解决方法是使用petter nordahl-hagen的the offline nt password editor(http://home.eunet.no/~pnordahl/ntpasswd/),这个工具是离线修改注册表文件sam来设置密码的。需要用他的映像文件制作启动盘来引导,进而访问ntfs分区重新设置密码;虽然作者经常更新他的程序,不过我还是会担心他直接操作sam文件的安全性,可能有时会导致系统出错。

  可能还有其他类似工具把,恕我无知。

  3. 还有一种想法就是用一个修改密码的小程序来替换系统启动的必要程序,然后系统启动时就会替换密码,随后把被替换的程序在还原就行了。当然首先你还是要能够访问系统分区,来替换随系统启动的程序。

  替换系统启动的必要程序的一种方法是我写的一个清除administrator密码的小程序(cleanpwd),他所作的就是把administrator密码清空。使用方法如下:

  (1).用法

  1) 用双系统或者启动盘或者挂到别的系统上,如果是ntfs分区其他系统或启动盘要能读写ntfs分区,把windows安装目录下的system32svchost.exe改名svchost.bak.exe备份,把cleanpwd.exe拷贝成svchost.exe。

  2) 启动该系统,就把administrator的密码清空了,可以直接登陆。

  3) 把svchost.bak.exe 恢复就行了。(如果使用替换的是svchost,最好再启动rpc服务)

  (2).为什么选用svchost.exe而不是其他程序。

  每个windows2000系统都有这几个进程,

  system(kernel executive and kernel)

  smss(session manager)

  csrss(win32 subsystem)

  winlogon(logon process)

  services(service control manager)

  lsass(local security authentication server )

  如果任何一个被杀掉或者出错,系统将重新启动。不过在lsass启动之前你不能修改密码,所以不能选用这几个程序。

  另外系统中一般还有以下一些程序:

  svchost.exe(remote procedure call (rpc) 还有其他一些服务)

  wbemwinmgmt.exe(windows management umentation)

  mstask.exe(task scheduler)

  regsvc.exe(remote registry service)

  可能还有其他服务程序,你可能禁止了除rpc之外的其他服务,但不会禁止rpc,否则系统工作就不正常了。所以我选择了svchost,如果你知道其他服务会自动启动,你也可以选择它。

  当然如果系统安装了杀毒软件的话,你替换杀毒软件也可以,因为一般杀毒软件都会在系统启动是启动杀毒防火墙来杀毒的。

  (3).其他

  有这个想法是几个月之前了,不过一直没有写这个程序 程序运行会在c:cleanpwd.txt记一个简单的日志,我也附了源码,你可以任意修改它以满足自己的要求,比如添加一个用户而不是修改管理员的密码(或者你把管理员改名了)。

  4.我还在一个网站上看到这样一个方法:

  就是把%systemroot%system32logon.scr替换为cmd.exe或者explorer.exe,然后在系统登陆处等待,过一会,系统就会去运行logon.scr这个屏保,因为你替换了这个屏保文件,所以实际上运行的是cmd.exe或者explorer.exe,并且是localsystem权限,于是你可以随便了,最简单的就是在cmd.exe里运行net user administrator "",成功后管理员密码也被清空了,关闭cmd或者explorer就可以用空口令登陆了。

  其实这种方法和上边的那种思路是一致的。

  ================= code begin =======================

  #include

  #include

  #include

  #include

  #include

  #pragma comment(lib, "netapi32.lib")

  #define lof_file "c:\cleanpwd.txt"

  dword setuserpwd(char *user, char *pass);

  void banner(file *fp)

  {

  if(null == fp)return;

  fprintf(fp, "clean administrator''s password tool 1a. for lost password. ");

  fprintf(fp, " by bingle@email.com.cn ");

  fprintf(fp, "website: www.binglesite.net ");

  }

  int main(int argc, char *argv[])

  {

  banner(stderr);

  file *fp = fopen(lof_file, "a");

  if(fp)

  {

  fprintf(stderr, "log in file %s ", lof_file);

  banner(fp);

  }

  if(!fp) fp = stderr;

  char buff[256];

  fprintf(fp, "%s: clean administrator''s password ", _strtime(buff));

  dword n = setuserpwd("administrator", "");

  if(nerr_success == n) fprintf(fp, "ok. ");

  else fprintf(fp, "failed, error:%d ", n);

  fclose(fp);

  return -1;

  }

  dword setuserpwd(char *user, char *pass)

  {

  wchar_t wuser[pwlen], wpass[pwlen];

  user_info_1003 ui;

  mbstowcs(wuser, user, strlen(user)+1);

  mbstowcs(wpass, pass, strlen(pass)+1);

  ui.usri1003_password = wpass;

  return netusersetinfo(null, wuser, 1003, (lpbyte)&ui, null);

  }

  ================= code end =======================

  

本文来自:http://www.linuxpk.com/30118.html

--&gtlinux电子图书免费下载和技术讨论基地

·上一篇: WindowsXP自带小工具

·下一篇: 如何防范恶意网站
 
     最新更新
·注册表备份和恢复

·低级格式化的主要作用

·如何防范恶意网站

·常见文件扩展名和它们的说明

·专家:警惕骇客骗局,严守企业信息

·PGPforWindows介紹基本设定(2)

·解剖安全帐号管理器(SAM)结构

·“恶作剧之王”揭秘

·绿色警戒

·黑客反击战

·网络四大攻击方法及安全现状描述

·可攻击3种浏览器代码流于互联网

·黑客最新的兴趣点,下个目标会是谁?

·“僵尸”——垃圾邮件的主要传播源

·Lebreat蠕虫惊现3变种

·POSTFIX反病毒反垃圾Ų…

·在FreeBSD上用PHP实现在线添加FTP用户

·简单让你在FreeBSDADSL上…

·安全版本:OpenBSD入门技巧解析

·Internet连接共享上网完全攻略

·关于ADSL上网网速常识

·静态缓存和动态缓存的比较

·最友好的SQL注入防御方法

·令网站提速的7大秘方

·网络基础知识大全

·路由基本知识

·端口映射的几种实现方法

·VLAN经典诠释

·问题分析与解决——ADSL错误代码

·问题分析——关于2条E1的线路绑定


关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 网址大全 | 友情链接 | 免费注册

Copyright © 2004 - 2007 All Rights Reserved

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14102/viewspace-117463/,如需转载,请注明出处,否则将追究法律责任。

上一篇: WindowsXP自带小工具(转)
下一篇: GHOST怎么用(转)
user_pic_default.png
请登录后发表评论 登录
全部评论
<%=items[i].createtime%>

<%=items[i].content%>

<%if(items[i].items.items.length) { %>
<%for(var j=0;j
<%=items[i].items.items[j].createtime%> 回复

<%=items[i].items.items[j].username%>   回复   <%=items[i].items.items[j].tousername%>: <%=items[i].items.items[j].content%>

<%}%> <%if(items[i].items.total > 5) { %>
还有<%=items[i].items.total-5%>条评论 ) data-count=1 data-flag=true>点击查看
<%}%>
<%}%> <%}%>
ilg

注册时间:2002-06-18

  • 博文量
    1715
  • 访问量
    1297601

最新文章

  • Solaris 图形窗口配置(转)
  • WPSOffice双面文档打印边距设置(转)
  • OfficeWord2007图片编辑功能使用教程(转)
  • IE技巧两则(转)
  • 用Iproute2配置隧道(转)
  • 用FAQGenie迅速制作“常见问答”网页(转)
  • openoffice2.0输出带多级书签的PDF文档(转)
  • WordXP巧画禁烟标志(转)
  • Linux中防御垃圾邮件的方法(转)
  • Excel:轻松查看数据记录(转)

转载于:http://blog.itpub.net/14102/viewspace-117463/

这篇关于win2000/xp忘记密码的方法(转)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/370689

相关文章

Spring Security方法级安全控制@PreAuthorize注解的灵活运用小结

《SpringSecurity方法级安全控制@PreAuthorize注解的灵活运用小结》本文将带着大家讲解@PreAuthorize注解的核心原理、SpEL表达式机制,并通过的示例代码演示如... 目录1. 前言2. @PreAuthorize 注解简介3. @PreAuthorize 核心原理解析拦截与

一文详解JavaScript中的fetch方法

《一文详解JavaScript中的fetch方法》fetch函数是一个用于在JavaScript中执行HTTP请求的现代API,它提供了一种更简洁、更强大的方式来处理网络请求,:本文主要介绍Jav... 目录前言什么是 fetch 方法基本语法简单的 GET 请求示例代码解释发送 POST 请求示例代码解释

Feign Client超时时间设置不生效的解决方法

《FeignClient超时时间设置不生效的解决方法》这篇文章主要为大家详细介绍了FeignClient超时时间设置不生效的原因与解决方法,具有一定的的参考价值,希望对大家有一定的帮助... 在使用Feign Client时,可以通过两种方式来设置超时时间:1.针对整个Feign Client设置超时时间

C/C++错误信息处理的常见方法及函数

《C/C++错误信息处理的常见方法及函数》C/C++是两种广泛使用的编程语言,特别是在系统编程、嵌入式开发以及高性能计算领域,:本文主要介绍C/C++错误信息处理的常见方法及函数,文中通过代码介绍... 目录前言1. errno 和 perror()示例:2. strerror()示例:3. perror(

CSS去除a标签的下划线的几种方法

《CSS去除a标签的下划线的几种方法》本文给大家分享在CSS中,去除a标签(超链接)的下划线的几种方法,本文给大家介绍的非常详细,感兴趣的朋友一起看看吧... 在 css 中,去除a标签(超链接)的下划线主要有以下几种方法:使用text-decoration属性通用选择器设置:使用a标签选择器,将tex

C++变换迭代器使用方法小结

《C++变换迭代器使用方法小结》本文主要介绍了C++变换迭代器使用方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、源码2、代码解析代码解析:transform_iterator1. transform_iterat

C++中std::distance使用方法示例

《C++中std::distance使用方法示例》std::distance是C++标准库中的一个函数,用于计算两个迭代器之间的距离,本文主要介绍了C++中std::distance使用方法示例,具... 目录语法使用方式解释示例输出:其他说明:总结std::distance&n编程bsp;是 C++ 标准

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法