Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as Python by jeantutu ( 8 years ago )
import win32crypt
import win32net
import win32netcon
import binascii
import argparse
import uuid
import win32api
import re
import string
import random
def password_generator(size=6,chars=string.ascii_letters + string.digits + string.punctuation):
password = ""
while not re.fullmatch(r'[A-Za-z0-9@#$%^&+=]{6,}', password):
password = ''.join(random.choice(chars) for _ in range(size))
return password
def create(user,password):
d = {'name':user, 'password':password,'priv':win32netcon.USER_PRIV_USER,'comment':"create",'flags':win32netcon.UF_NORMAL_ACCOUNT | win32netcon.UF_SCRIPT}
win32net.NetUserAdd(None,1,d)
print("created user")
u = {'domainandname': win32api.GetDomainName()+"\\"+user}
win32net.NetLocalGroupAddMembers(None,"Remote Desktop Users",3, [u])
def crypt_password(password):
blob = win32crypt.CryptProtectData(password.encode('utf-16-le'),'password',None,None,None,0)
return binascii.hexlify(blob).decode('UTF-8').upper()
parser = argparse.ArgumentParser("Create rdp user")
parser.add_argument("user", help="user" , type=str)
args = parser.parse_args()
print(args.user)
password = password_generator()
print(password)
create(args.user,password)
print(crypt_password(password))
Revise this Paste