| 网站首页 | 资讯 | Hack | 漏洞 | 网管 | 编程 | 培训 | 品黑页 | 软件 | 论坛 | 动画 | 视频 | 经典 | 教学站 | 黑客点睛 | 
服务导航 我要发布 主力频道 空间域名 精华收集 服务器出租 黑客培训 光盘刻录 特色服务 解决方案 我要投诉
您现在的位置: 华夏黑客同盟 >> 编程 >> Delphi >> 正文 用户登录 新用户注册
用Delphi创建NT/2000账号           ★★★ 【字体:
用Delphi创建NT/2000账号
作者:不详 文章来源:华盟收集 点击数: 更新时间:2007-8-23
uses
  Windows;

const
SE_Create_TOKEN_NAME               ='SeCreateTokenPrivilege';
SE_ASSIGNPRIMARYTOKEN_NAME         ='SeAssignPrimaryTokenPrivilege';
SE_LOCK_MEMORY_NAME                ='SeLockMemoryPrivilege';
SE_INCREASE_QUOTA_NAME             ='SeIncreaseQuotaPrivilege';
SE_UNSOLICITED_INPUT_NAME          ='SeUnsolicitedInputPrivilege';
SE_MACHINE_ACCOUNT_NAME            ='SeMachineAccountPrivilege';
SE_TCB_NAME                        ='SeTcbPrivilege';
SE_SECURITY_NAME                   ='SeSecurityPrivilege';
SE_TAKE_OWNERSHIP_NAME             ='SeTakeOwnershipPrivilege';
SE_LOAD_DRIVER_NAME                ='SeLoadDriverPrivilege';
SE_SYSTEM_PROFILE_NAME             ='SeSystemProfilePrivilege';
SE_SYSTEMTIME_NAME                 ='SeSystemtimePrivilege';
SE_PROF_SINGLE_PROCESS_NAME        ='SeProfileSingleProcessPrivilege';
SE_INC_BASE_PRIORITY_NAME          ='SeIncreaseBasePriorityPrivilege';
SE_Create_PAGEFILE_NAME            ='SeCreatePagefilePrivilege';
SE_Create_PERMANENT_NAME           ='SeCreatePermanentPrivilege';
SE_BACKUP_NAME                     ='SeBackupPrivilege';
SE_RESTORE_NAME                    ='SeRestorePrivilege';
SE_SHUTDOWN_NAME                   ='SeShutdownPrivilege';
SE_DEBUG_NAME                      ='SeDebugPrivilege';
SE_AUDIT_NAME                      ='SeAuditPrivilege';
SE_SYSTEM_ENVIRONMENT_NAME         ='SeSystemEnvironmentPrivilege';
SE_CHANGE_NOTIFY_NAME              ='SeChangeNotifyPrivilege';
SE_REMOTE_SHUTDOWN_NAME            ='SeRemoteShutdownPrivilege';

USER_PRIV_MASK      =$3;
USER_PRIV_GUEST     =0;
USER_PRIV_USER      =1;
USER_PRIV_ADMIN     =2;

UF_SCRIPT                =$0001;
UF_ACCOUNTDISABLE        =$0002;
UF_HOMEDIR_REQUIRED      =$0008;
UF_LOCKOUT               =$0010;
UF_PASSWD_NOTREQD        =$0020;
UF_PASSWD_CANT_CHANGE    =$0040;

//
// Account type bits as part of usri_flags.
//

UF_TEMP_DUPLICATE_ACCOUNT        =$0100;
UF_NORMAL_ACCOUNT                =$0200;
UF_INTERDOMAIN_TRUST_ACCOUNT     =$0800;
UF_WORKSTATION_TRUST_ACCOUNT     =$1000;
UF_SERVER_TRUST_ACCOUNT          =$2000;

UF_MACHINE_ACCOUNT_MASK =( UF_INTERDOMAIN_TRUST_ACCOUNT  or
                                  UF_WORKSTATION_TRUST_ACCOUNT  or
                                  UF_SERVER_TRUST_ACCOUNT );

UF_ACCOUNT_TYPE_MASK         =(
                    UF_TEMP_DUPLICATE_ACCOUNT  or
                    UF_NORMAL_ACCOUNT  or
                    UF_INTERDOMAIN_TRUST_ACCOUNT  or
                    UF_WORKSTATION_TRUST_ACCOUNT  or
                    UF_SERVER_TRUST_ACCOUNT
                );

UF_DONT_EXPIRE_PASSWD            =$10000;
UF_MNS_LOGON_ACCOUNT             =$20000;


UF_SETTABLE_BITS        =(
                    UF_SCRIPT  or
                    UF_ACCOUNTDISABLE  or
                    UF_LOCKOUT  or
                    UF_HOMEDIR_REQUIRED   or
                    UF_PASSWD_NOTREQD  or
                    UF_PASSWD_CANT_CHANGE  or  
                    UF_ACCOUNT_TYPE_MASK  or
                    UF_DONT_EXPIRE_PASSWD  or
                    UF_MNS_LOGON_ACCOUNT
                );


type
  _USER_INFO_1 = record
    usri1_name:             PWideChar;
    usri1_password:         PWideChar;
    usri1_password_age:     Cardinal;
    usri1_priv:             Cardinal;
    usri1_home_dir:         PWideChar;
    usri1_comment:          PWideChar;
    usri1_flags:            Cardinal;
    usri1_script_path:      PWideChar;
  end;

  _LOCALGROUP_MEMBERS_INFO_0 = record
    lgrmi0_sid: Cardinal;
  end;
  _LOCALGROUP_MEMBERS_INFO_3 = record
    lgrmi3_domainandname: PWideChar;
  end;

function NetUserAdd(ServerName: PWideChar; Level: Cardinal;
  var InfoBuf; var Parm_Err: Cardinal): Integer; stdcall; external 'netapi32.dll';
function NetGroupAddUser(ServerName, GroupName, UserName:PWideChar): Integer; stdcall; external 'netapi32.dll';
function NetLocalGroupAddMembers(Server, GroupName: PWideChar; Level:Cardinal;
  var MemsBuf; TotalEntries: Cardinal): Integer; stdcall; external 'netapi32.dll';
procedure AddAccount;
var
  AToken: THandle;
  Priv: TTokenPrivileges;
  NoUse: Cardinal;
  UserInf _USER_INFO_1;
  Members: _LOCALGROUP_MEMBERS_INFO_3;
begin
  OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES, AToken);
  LookupPrivilegeValue(nil, SE_SECURITY_NAME, Priv.Privileges[0].Luid);
  Priv.PrivilegeCount := 1;
  Priv.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
  AdjustTokenPrivileges(AToken, False, Priv, 0, nil, NoUse);
//上面那段代码是为了让你的进程取得账号管理的权限。
//运行该程充的账号必须有账号管理的权限,否则会失败。
  FillChar(UserInfo, Sizeof(UserInfo), 0);
  UserInfo.usri1_name := 'MyUser';
  UserInfo.usri1_password := 'password';
  UserInfo.usri1_password_age := 0;
  UserInfo.usri1_priv := USER_PRIV_User;
  UserInfo.usri1_comment := '用Delphi代码创建的账号';
  UserInfo.usri1_flags := UF_DONT_EXPIRE_PASSWD;
  NetUserAdd(nil, 1, UserInfo, NoUse);
  Members.lgrmi3_domainandname := 'MyUser';
  NetLocalGroupAddMembers(nil, 'Administrators', 3, Members, 1);
end;
责任编辑:朱倩  联系方式  Email:朱倩
电话:51228163
  • 上一篇编程:

  • 下一篇编程:
  • (只显示最新5条。评论内容只代表网友观点,与本站立场无关!)
    姓 名:
    * 游客填写  ·注册用户
    主 页:
    评 分:
    1分 2分 3分 4分 5分
    评论内容:
    验证码: *
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。
  • 最新hack更新
    最新推荐资讯
    相关编程
    木马DIY之代码藏后门
    Delphi下读取网卡的MAC
    Delphi属性函数事件参考
    delphi写匿名管道简单木马
    delphi播放mp3背景音乐代码
    dll的创建与调用
    Delphi的屏幕抓图技术
    Delphi进行OpenGL编程
    Delphi开发网络数据库
    Delphi开发网络数据库
    最新会员软件
    最新推荐视频
    最新推荐动画

    Copyright @ 2005 77169.Net Inc. All rights reserved. 华夏黑客同盟 版权所有
    北京市电信通提供网络带宽

    mailto:webmaster@77169.net
    咨询QQ号:836982 / 59280880
    联系站长 QQ38588913
    热线电话: 86-10-67634029/676229433
    京ICP证041431号