Skip to content

Commit

Permalink
Release V0.1
Browse files Browse the repository at this point in the history
  • Loading branch information
mattprocoder committed May 14, 2020
1 parent 665f45c commit 79a2b4c
Show file tree
Hide file tree
Showing 45 changed files with 56,079 additions and 0 deletions.
25 changes: 25 additions & 0 deletions MS365_Creator.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.28307.902
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MS365_Creator", "MS365_Creator\MS365_Creator.csproj", "{C59871DD-0CCB-4B41-BCAE-3EA9C04B01AC}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{C59871DD-0CCB-4B41-BCAE-3EA9C04B01AC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C59871DD-0CCB-4B41-BCAE-3EA9C04B01AC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C59871DD-0CCB-4B41-BCAE-3EA9C04B01AC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C59871DD-0CCB-4B41-BCAE-3EA9C04B01AC}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {DB75AD8F-289D-43AC-8A71-54EAC2D4546D}
EndGlobalSection
EndGlobal
6 changes: 6 additions & 0 deletions MS365_Creator/App.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
</startup>
</configuration>
Binary file added MS365_Creator/Icons/logo.ico
Binary file not shown.
71 changes: 71 additions & 0 deletions MS365_Creator/MS365_Creator.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{C59871DD-0CCB-4B41-BCAE-3EA9C04B01AC}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>MS365_Creator</RootNamespace>
<AssemblyName>MS365_Creator</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>logo.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<Reference Include="Colorful.Console, Version=1.2.10.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Colorful.Console.1.2.10\lib\net461\Colorful.Console.dll</HintPath>
</Reference>
<Reference Include="Leaf.xNet, Version=5.2.6.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Leaf.xNet.5.2.6\lib\net45\Leaf.xNet.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Drawing" />
<Reference Include="System.Web" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
<Reference Include="WebDriver, Version=3.141.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Selenium.WebDriver.3.141.0\lib\net45\WebDriver.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Content Include="logo.ico" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
161 changes: 161 additions & 0 deletions MS365_Creator/Program.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System.Threading;
using OpenQA.Selenium.Support.UI;
using Leaf.xNet;
using System.Text.RegularExpressions;
using System.Net;
using System.Security.Cryptography;
using System.IO;

namespace MS365_Creator
{
class Program
{
static string cMail = "";
static int toWait = 0;
static void Main(string[] args)
{
restart:
Console.Clear();
Console.Title = "MS 365 Account Creator";
Console.Write("Waiting time for email (in s) (leave null for default): ");
string tempAmount = Console.ReadLine();
if (tempAmount != "") toWait = int.Parse(tempAmount) * 1000;
else toWait = 20000;
Console.Write("Do you want to use custom details? (Yes/No): ");
string useCustom = Console.ReadLine().ToLower();
if (useCustom == "") useCustom = "no";
try
{
if (useCustom == "yes")
{
Console.Title = "MS 365 Account Creator | Custom Mode";
bool usingCustom = true;
Console.Write("First Name: ");
string fName = Console.ReadLine();
Console.Write("Last Name: ");
string lName = Console.ReadLine();
Console.Write("Custom email (no special chars): ");
cMail = Console.ReadLine();
if (cMail == "") usingCustom = false;
if (lName == "") lName = "";
string finalFolder = $"Accounts/{DateTime.Now.ToString("MM.dd H.mm")} - {fName} {lName}.txt";
File.AppendAllText(finalFolder, CreateAccount(fName, lName,usingCustom));
Colorful.Console.WriteLine($"Generating of custom account ({fName} | {lName} | {cMail}) done...",System.Drawing.Color.Yellow);
}
else
{
Console.Title = "MS 365 Account Creator | Mass Creation";
Console.Write("How many accounts should I prepare?: ");
int toMake = int.Parse(Console.ReadLine());
string finalFolder = $"Accounts/{DateTime.Now.ToString("MM.dd H.mm")} - {toMake} accounts.txt";
int aGenerated = 0;
Console.Clear();
Colorful.Console.WriteAscii(" Generating");
Colorful.Console.WriteLine($" Generated [{aGenerated}/{toMake}]", System.Drawing.Color.Yellow);
for (int i = 0; i < toMake; i++)
{
File.AppendAllText(finalFolder, CreateAccount(GetName(), "",false));
++aGenerated;
Console.Clear();
Colorful.Console.WriteAscii(" Generating");
Colorful.Console.WriteLine($" Generated [{aGenerated}/{toMake}]", System.Drawing.Color.Yellow);

}
}
}
catch(Exception e)
{
Console.Clear();
Colorful.Console.Write("ERROR OCCURRED! Error message:", System.Drawing.Color.Red); Colorful.Console.Write($" {e.Message}", System.Drawing.Color.White);
Console.ReadKey();
}
Console.Clear();
Colorful.Console.Write("Do you want to continue generating? (Yes/No): ",System.Drawing.Color.Yellow);
string output = Console.ReadLine().ToLower();
if (output == "yes") goto restart;
else
{
Console.Clear();
Colorful.Console.Write("Created by matt", System.Drawing.Color.Lime); Colorful.Console.Write(" | ", System.Drawing.Color.Gray); Colorful.Console.Write("Press any key to exit", System.Drawing.Color.Yellow);
Console.ReadKey();
}
}
static string CreateAccount(string fName, string lName,bool customMail)
{
ChromeOptions options = new ChromeOptions();
options.AddArgument("--window-size=380,700");
ChromeDriverService service = ChromeDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true; //Disable the logging feature
IWebDriver driver = new ChromeDriver(service,options);
driver.Navigate().GoToUrl("https://xkx.me");
Thread.Sleep(2500);
string email = "";
IWebElement element = driver.FindElement(By.ClassName("copyable"));
if(!customMail) email = element.GetAttribute("data-clipboard-text");
else
{
element = driver.FindElement(By.Id("customShortid"));
IJavaScriptExecutor executor = driver as IJavaScriptExecutor;
executor.ExecuteScript("arguments[0].click();", element);
element = driver.FindElement(By.Id("shortid"));
element.SendKeys(cMail);
element = driver.FindElement(By.Id("customShortid"));
executor.ExecuteScript("arguments[0].click();", element);
email = cMail + "@xkx.me";
}
((IJavaScriptExecutor)driver).ExecuteScript("window.open();");
driver.SwitchTo().Window(driver.WindowHandles.Last());
driver.Navigate().GoToUrl("https://signup.microsoft.com/signup?sku=student");
Thread.Sleep(2500);
element = driver.FindElement(By.Id("StepsData_Email"));
element.SendKeys(email);
element = driver.FindElement(By.ClassName("mpl-button-next-text"));
element.Click();
driver.SwitchTo().Window(driver.WindowHandles.First());
Thread.Sleep(toWait);
element = driver.FindElement(By.Id("emaillist"));
Match verCode = Regex.Match(element.Text, "([0-9]{6})", RegexOptions.IgnoreCase);
driver.SwitchTo().Window(driver.WindowHandles.Last());
element = driver.FindElement(By.Id("FirstName"));
element.SendKeys(fName);
element = driver.FindElement(By.Id("LastName"));
element.SendKeys(lName);
element = driver.FindElement(By.Id("Password"));
string password = GeneratePassword(10);
element.SendKeys(password);
element = driver.FindElement(By.Id("RePassword"));
element.SendKeys(password);
element = driver.FindElement(By.Id("SignupCode"));
element.SendKeys(verCode.Value);
element = driver.FindElement(By.ClassName("mpl-button-next-text"));
element.Click();
driver.Quit();
return $"Username : {email}\nPassword : {password}\n************************************\n";
}
static string GetName()
{
string[] names = { "Jennifer", "Patrick", "Carola", "Frank", "Aaron", "Willie", "Joseph" };
Random random = new Random();
int num = random.Next(0, names.Length-1);
return names[num];
}
static string GeneratePassword(int length)
{
const string valid = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
StringBuilder res = new StringBuilder();
Random rnd = new Random();
while (0 < length--)
{
res.Append(valid[rnd.Next(valid.Length)]);
}
return res.ToString();
}
}
}
36 changes: 36 additions & 0 deletions MS365_Creator/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;

// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("MS365_Creator")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("MS365_Creator")]
[assembly: AssemblyCopyright("Copyright © 2020")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]

// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("c59871dd-0ccb-4b41-bcae-3ea9c04b01ac")]

// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
Binary file added MS365_Creator/logo.ico
Binary file not shown.
Binary file not shown.
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
314e86991f8de7a0b974d16e99bf228572ff79ef
13 changes: 13 additions & 0 deletions MS365_Creator/obj/Debug/MS365_Creator.csproj.FileListAbsolute.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\bin\Debug\MS365_Creator.exe.config
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\bin\Debug\MS365_Creator.exe
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\bin\Debug\MS365_Creator.pdb
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\bin\Debug\Leaf.xNet.dll
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\bin\Debug\WebDriver.dll
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\bin\Debug\Leaf.xNet.xml
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\bin\Debug\WebDriver.xml
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\obj\Debug\MS365_Creator.csprojAssemblyReference.cache
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\obj\Debug\MS365_Creator.csproj.CoreCompileInputs.cache
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\obj\Debug\MS365_Creator.csproj.CopyComplete
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\obj\Debug\MS365_Creator.exe
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\obj\Debug\MS365_Creator.pdb
C:\Users\matt\source\repos\MS365_Creator\MS365_Creator\bin\Debug\Colorful.Console.dll
Binary file not shown.
Binary file added MS365_Creator/obj/Debug/MS365_Creator.exe
Binary file not shown.
Binary file added MS365_Creator/obj/Debug/MS365_Creator.pdb
Binary file not shown.
Empty file.
Empty file.
Empty file.
6 changes: 6 additions & 0 deletions MS365_Creator/packages.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Colorful.Console" version="1.2.10" targetFramework="net461" />
<package id="Leaf.xNet" version="5.2.6" targetFramework="net461" />
<package id="Selenium.WebDriver" version="3.141.0" targetFramework="net461" />
</packages>
24 changes: 24 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# What is this doing?

This tool create MS 365 accounts with A1 Sub, it's a project i've made for fun when I was bored and it's using xkx.me temporary e-mails

## What can it do?
-It can mass create accounts with random credentials, name and email.
-It can create accounts with custom email, name and last name

## Why would I use this?
Every single created account has A1 Student Sub of MS 365 on it, thus you get MS apps for free and as well 1TB free storage.

## Usage

You can either download the .exe version in Releases or you can download the full project and open it Visual Studio Code or your preferred c# environment

```bash
Please make sure you are opening 'MS365_Creator.sln'
```


## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

It's free to use, and not supported, but you can change anything you need at anytime you want because you have the source code available.
Binary file added packages/Colorful.Console.1.2.10/.signature.p7s
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added packages/Leaf.xNet.5.2.6/.signature.p7s
Binary file not shown.
Binary file added packages/Leaf.xNet.5.2.6/Leaf.xNet.5.2.6.nupkg
Binary file not shown.
Binary file added packages/Leaf.xNet.5.2.6/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added packages/Leaf.xNet.5.2.6/lib/net45/Leaf.xNet.dll
Binary file not shown.
Loading

0 comments on commit 79a2b4c

Please sign in to comment.