├── Binaries
├── CSExec
│ ├── csexec
│ │ ├── net35
│ │ │ ├── csexec.exe
│ │ │ ├── csexec.exe.config
│ │ │ └── csexec.pdb
│ │ ├── net40
│ │ │ ├── csexec.exe
│ │ │ ├── csexec.exe.config
│ │ │ └── csexec.pdb
│ │ └── net45
│ │ │ ├── csexec.exe
│ │ │ ├── csexec.exe.config
│ │ │ └── csexec.pdb
│ └── csexecsvc
│ │ ├── net35
│ │ ├── csexecsvc.exe
│ │ └── csexecsvc.pdb
│ │ └── net45
│ │ ├── csexecsvc.exe
│ │ └── csexecsvc.pdb
├── Rubeus.exe
├── SafetyKatz.exe
├── Seatbelt.exe
├── SharpChrome.exe
├── SharpCradle
│ ├── SharpCradle_x64.exe
│ └── SharpCradle_x86.exe
├── SharpDPAPI.exe
├── SharpDump.exe
├── SharpRoast.exe
├── SharpSploitConsole
│ ├── SharpSploitConsole_x64.exe
│ └── SharpSploitConsole_x86.exe
├── SharpSql.exe
├── SharpUp.exe
├── SharpView.exe
└── SharpWMI.exe
├── CSExec
├── .vs
│ └── csexec
│ │ └── v15
│ │ ├── .suo
│ │ └── Server
│ │ └── sqlite3
│ │ ├── db.lock
│ │ └── storage.ide
├── README.md
├── csexec.sln
├── csexec
│ ├── CSExecSvcInstaller.cs
│ ├── Client.cs
│ ├── GlobalVars.cs
│ ├── NativeMethods.cs
│ ├── Program.cs
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ ├── Resources.Designer.cs
│ │ └── Resources.resx
│ ├── Resources
│ │ ├── csexecsvc-net35.exe
│ │ ├── csexecsvc-net40.exe
│ │ └── csexecsvc-net45.exe
│ ├── app.config
│ ├── bin
│ │ └── Release
│ │ │ ├── net35
│ │ │ ├── csexec.exe
│ │ │ ├── csexec.exe.config
│ │ │ └── csexec.pdb
│ │ │ ├── net40
│ │ │ ├── csexec.exe
│ │ │ ├── csexec.exe.config
│ │ │ └── csexec.pdb
│ │ │ └── net45
│ │ │ ├── csexec.exe
│ │ │ ├── csexec.exe.config
│ │ │ └── csexec.pdb
│ ├── csexec-net35.csproj
│ ├── csexec-net40.csproj
│ ├── csexec-net45.csproj
│ └── obj
│ │ ├── Debug
│ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ │ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
│ │ ├── csexec-net35.csproj.CoreCompileInputs.cache
│ │ ├── csexec-net35.csprojResolveAssemblyReference.cache
│ │ ├── csexec-net40.csproj.CoreCompileInputs.cache
│ │ ├── csexec-net40.csprojResolveAssemblyReference.cache
│ │ ├── csexec-net45.csproj.CoreCompileInputs.cache
│ │ └── csexec-net45.csprojResolveAssemblyReference.cache
│ │ └── Release
│ │ ├── TempPE
│ │ └── Properties.Resources.Designer.cs.dll
│ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ │ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
│ │ ├── csexec-net35.csproj.CoreCompileInputs.cache
│ │ ├── csexec-net35.csproj.FileListAbsolute.txt
│ │ ├── csexec-net35.csproj.GenerateResource.cache
│ │ ├── csexec-net40.csproj.CoreCompileInputs.cache
│ │ ├── csexec-net40.csproj.FileListAbsolute.txt
│ │ ├── csexec-net40.csproj.GenerateResource.cache
│ │ ├── csexec-net45.csproj.CoreCompileInputs.cache
│ │ ├── csexec-net45.csproj.FileListAbsolute.txt
│ │ ├── csexec-net45.csproj.GenerateResource.cache
│ │ ├── csexec.Properties.Resources.resources
│ │ ├── csexec.exe
│ │ └── csexec.pdb
├── csexecsvc
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── app.config
│ ├── bin
│ │ └── Release
│ │ │ ├── net35
│ │ │ ├── csexecsvc.exe
│ │ │ └── csexecsvc.pdb
│ │ │ └── net45
│ │ │ ├── csexecsvc.exe
│ │ │ └── csexecsvc.pdb
│ ├── csexecsvc-net35.csproj
│ ├── csexecsvc-net40.csproj
│ ├── csexecsvc-net45.csproj
│ └── obj
│ │ ├── Debug
│ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ │ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
│ │ ├── csexecsvc-net35.csproj.CoreCompileInputs.cache
│ │ ├── csexecsvc-net40.csproj.CoreCompileInputs.cache
│ │ ├── csexecsvc-net40.csprojResolveAssemblyReference.cache
│ │ ├── csexecsvc-net45.csproj.CoreCompileInputs.cache
│ │ └── csexecsvc-net45.csprojResolveAssemblyReference.cache
│ │ └── Release
│ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ │ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
│ │ ├── csexecsvc-net35.csproj.CoreCompileInputs.cache
│ │ ├── csexecsvc-net35.csproj.FileListAbsolute.txt
│ │ ├── csexecsvc-net40.csproj.CoreCompileInputs.cache
│ │ ├── csexecsvc-net40.csproj.FileListAbsolute.txt
│ │ ├── csexecsvc-net45.csproj.CoreCompileInputs.cache
│ │ ├── csexecsvc-net45.csproj.FileListAbsolute.txt
│ │ ├── csexecsvc.exe
│ │ └── csexecsvc.pdb
└── screen.png
├── Rubeus
├── .gitignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── Rubeus.sln
└── Rubeus
│ ├── Asn1
│ ├── AsnElt.cs
│ ├── AsnException.cs
│ ├── AsnIO.cs
│ └── AsnOID.cs
│ ├── Commands
│ ├── Asktgs.cs
│ ├── Asktgt.cs
│ ├── Asreproast.cs
│ ├── Changepw.cs
│ ├── Createnetonly.cs
│ ├── Describe.cs
│ ├── Dump.cs
│ ├── HarvestCommand.cs
│ ├── Hash.cs
│ ├── ICommand.cs
│ ├── Kerberoast.cs
│ ├── Klist.cs
│ ├── Monitor.cs
│ ├── Ptt.cs
│ ├── Purge.cs
│ ├── RenewCommand.cs
│ ├── S4u.cs
│ ├── Tgssub.cs
│ ├── Tgtdeleg.cs
│ └── Triage.cs
│ ├── Domain
│ ├── ArgumentParser.cs
│ ├── ArgumentParserResult.cs
│ ├── CommandCollection.cs
│ └── Info.cs
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── Rubeus.csproj
│ └── lib
│ ├── Ask.cs
│ ├── ConsoleTable.cs
│ ├── Crypto.cs
│ ├── Harvest.cs
│ ├── Helpers.cs
│ ├── Interop.cs
│ ├── LSA.cs
│ ├── Networking.cs
│ ├── Renew.cs
│ ├── Reset.cs
│ ├── Roast.cs
│ ├── S4U.cs
│ └── krb_structures
│ ├── AP_REQ.cs
│ ├── AS_REP.cs
│ ├── AS_REQ.cs
│ ├── Authenticator.cs
│ ├── Checksum.cs
│ ├── EncKDCRepPart.cs
│ ├── EncKrbCredPart.cs
│ ├── EncKrbPrivPart.cs
│ ├── EncryptedData.cs
│ ├── EncryptionKey.cs
│ ├── KDC_REQ_BODY.cs
│ ├── KERB_PA_PAC_REQUEST.cs
│ ├── KRB_CRED.cs
│ ├── KRB_ERROR.cs
│ ├── KRB_PRIV.cs
│ ├── KrbCredInfo.cs
│ ├── LastReq.cs
│ ├── PA_DATA.cs
│ ├── PA_ENC_TS_ENC.cs
│ ├── PA_FOR_USER.cs
│ ├── PA_PAC_OPTIONS.cs
│ ├── PrincipalName.cs
│ ├── TGS_REP.cs
│ ├── TGS_REQ.cs
│ └── Ticket.cs
├── SafetyKatz
├── .gitignore
├── LICENSE
├── README.md
├── SafetyKatz.sln
└── SafetyKatz
│ ├── Constants.cs
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ └── SafetyKatz.csproj
├── Seatbelt
├── .gitignore
├── README.md
├── Seatbelt.sln
└── Seatbelt
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ └── Seatbelt.csproj
├── SharpCradle
├── .gitattributes
├── .gitignore
├── CompiledBinaries
│ ├── SharpCradle_x64.exe
│ └── SharpCradle_x86.exe
├── README.md
├── SCradle.PNG
├── SCradle_2.PNG
├── SharpCradle.sln
└── SharpCradle
│ ├── App.config
│ ├── Impersonator.cs
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ └── SharpCradle.csproj
├── SharpDPAPI
├── .gitignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── SharpChrome
│ ├── Commands
│ │ ├── Backupkey.cs
│ │ ├── Cookies.cs
│ │ ├── ICommand.cs
│ │ └── Logins.cs
│ ├── Domain
│ │ ├── ArgumentParser.cs
│ │ ├── ArgumentParserResult.cs
│ │ ├── CommandCollection.cs
│ │ └── Info.cs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── SQLite
│ │ ├── SQLite.cs
│ │ └── csharp-sqlite-src
│ │ │ ├── BtreeInt_h.cs
│ │ │ ├── Btree_h.cs
│ │ │ ├── Delegates.cs
│ │ │ ├── Hash_h.cs
│ │ │ ├── VdbeInt_h.cs
│ │ │ ├── Vdbe_h.cs
│ │ │ ├── _Custom.cs
│ │ │ ├── alter_c.cs
│ │ │ ├── analyze_c.cs
│ │ │ ├── attach_c.cs
│ │ │ ├── auth_c.cs
│ │ │ ├── backup_c.cs
│ │ │ ├── bitvec_c.cs
│ │ │ ├── btmutex_c.cs
│ │ │ ├── btree_c.cs
│ │ │ ├── build_c.cs
│ │ │ ├── callback_c.cs
│ │ │ ├── complete_c.cs
│ │ │ ├── crypto.cs
│ │ │ ├── ctime_c.cs
│ │ │ ├── date_c.cs
│ │ │ ├── delete_c.cs
│ │ │ ├── expr_c.cs
│ │ │ ├── fault_c.cs
│ │ │ ├── fkey_c.cs
│ │ │ ├── func_c.cs
│ │ │ ├── global_c.cs
│ │ │ ├── hash_c.cs
│ │ │ ├── hwtime_c.cs
│ │ │ ├── insert_c.cs
│ │ │ ├── journal_c.cs
│ │ │ ├── keywordhash_h.cs
│ │ │ ├── legacy_c.cs
│ │ │ ├── loadext_c.cs
│ │ │ ├── main_c.cs
│ │ │ ├── malloc_c.cs
│ │ │ ├── mem_Pool.cs
│ │ │ ├── memjournal_c.cs
│ │ │ ├── mutex_h.cs
│ │ │ ├── mutex_noop_c.cs
│ │ │ ├── notify_c.cs
│ │ │ ├── opcodes_c.cs
│ │ │ ├── opcodes_h.cs
│ │ │ ├── os_c.cs
│ │ │ ├── os_common_h.cs
│ │ │ ├── os_h.cs
│ │ │ ├── os_win_c.cs
│ │ │ ├── pager_c.cs
│ │ │ ├── pager_h.cs
│ │ │ ├── parse_c.cs
│ │ │ ├── parse_h.cs
│ │ │ ├── pcache1_c.cs
│ │ │ ├── pcache_c.cs
│ │ │ ├── pcache_h.cs
│ │ │ ├── pragma_c.cs
│ │ │ ├── prepare_c.cs
│ │ │ ├── printf_c.cs
│ │ │ ├── random_c.cs
│ │ │ ├── resolve_c.cs
│ │ │ ├── rowset_c.cs
│ │ │ ├── select_c.cs
│ │ │ ├── sqlite3_h.cs
│ │ │ ├── sqliteInt_h.cs
│ │ │ ├── sqliteLimit_h.cs
│ │ │ ├── status_c.cs
│ │ │ ├── table_c.cs
│ │ │ ├── tokenize_c.cs
│ │ │ ├── trigger_c.cs
│ │ │ ├── update_c.cs
│ │ │ ├── utf_c.cs
│ │ │ ├── util_c.cs
│ │ │ ├── vacuum_c.cs
│ │ │ ├── vdbe_c.cs
│ │ │ ├── vdbeapi_c.cs
│ │ │ ├── vdbeaux_c.cs
│ │ │ ├── vdbeblob_c.cs
│ │ │ ├── vdbemem_c.cs
│ │ │ ├── vdbetrace_c.cs
│ │ │ ├── vtab_c.cs
│ │ │ ├── wal_c.cs
│ │ │ ├── wal_h.cs
│ │ │ ├── walker_c.cs
│ │ │ └── where_c.cs
│ ├── SharpChrome.csproj
│ └── lib
│ │ └── Chrome.cs
├── SharpDPAPI.cna
├── SharpDPAPI.sln
└── SharpDPAPI
│ ├── Commands
│ ├── Backupkey.cs
│ ├── Blob.cs
│ ├── Credentials.cs
│ ├── ICommand.cs
│ ├── Machinecredentials.cs
│ ├── Machinemasterkeys.cs
│ ├── Machinetriage.cs
│ ├── Machinevaults.cs
│ ├── Masterkeys.cs
│ ├── PS.cs
│ ├── RDG.cs
│ ├── Triage.cs
│ └── Vaults.cs
│ ├── Domain
│ ├── ArgumentParser.cs
│ ├── ArgumentParserResult.cs
│ ├── CommandCollection.cs
│ ├── Info.cs
│ └── Version.cs
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── SharpDPAPI.csproj
│ ├── app.config
│ └── lib
│ ├── Backup.cs
│ ├── Crypto.cs
│ ├── Dpapi.cs
│ ├── Helpers.cs
│ ├── Interop.cs
│ ├── LSADump.cs
│ ├── PBKDF2.cs
│ └── Triage.cs
├── SharpDump
├── .gitignore
├── LICENSE
├── README.md
├── SharpDump.sln
└── SharpDump
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ └── SharpDump.csproj
├── SharpRoast
├── .gitignore
├── LICENSE
├── README.md
├── SharpRoast.sln
└── SharpRoast
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ └── SharpRoast.csproj
├── SharpSploit
├── .gitattributes
├── .gitignore
├── LICENSE
├── README.md
├── SharpSploit.Tests
│ ├── SharpSploit.Tests.sln
│ └── SharpSploit.Tests
│ │ ├── Credentials
│ │ └── TokensTests.cs
│ │ ├── Enumeration
│ │ ├── DomainTests.cs
│ │ ├── HostTests.cs
│ │ └── NetworkTests.cs
│ │ ├── Execution
│ │ ├── ShellCodeTests.cs
│ │ └── ShellTests.cs
│ │ ├── LateralMovement
│ │ ├── DCOMTests.cs
│ │ └── WMITests.cs
│ │ ├── Properties
│ │ └── AssemblyInfo.cs
│ │ ├── SharpSploit.Tests.csproj
│ │ └── packages.config
├── SharpSploit.sln
└── SharpSploit
│ ├── Credentials
│ ├── Mimikatz.cs
│ └── Tokens.cs
│ ├── Enumeration
│ ├── Domain.cs
│ ├── Host.cs
│ └── Network.cs
│ ├── Execution
│ ├── Assembly.cs
│ ├── PE.cs
│ ├── Shell.cs
│ ├── ShellCode.cs
│ └── Win32.cs
│ ├── Generic
│ └── Generic.cs
│ ├── LateralMovement
│ ├── DCOM.cs
│ └── WMI.cs
│ ├── Misc
│ ├── CountdownEvent.cs
│ └── Utilities.cs
│ ├── References
│ ├── net35
│ │ ├── System.DirectoryServices.dll
│ │ ├── System.IdentityModel.dll
│ │ ├── System.Management.Automation.dll
│ │ ├── System.Management.dll
│ │ └── mscorlib.dll
│ └── net40
│ │ ├── System.DirectoryServices.dll
│ │ ├── System.IdentityModel.dll
│ │ ├── System.Management.Automation.dll
│ │ ├── System.Management.dll
│ │ └── mscorlib.dll
│ ├── Resources
│ ├── powerkatz_x64.dll
│ ├── powerkatz_x64.dll.comp
│ ├── powerkatz_x86.dll
│ └── powerkatz_x86.dll.comp
│ ├── SharpSploit - Quick Command Reference.md
│ ├── SharpSploit.csproj
│ └── SharpSploit.xml
├── SharpSploitConsole
├── .gitattributes
├── .gitignore
├── CompiledBinaries
│ ├── SharpSploitConsole_x64.exe
│ └── SharpSploitConsole_x86.exe
├── README.md
├── SharpSploitConsole.sln
├── SharpSploitConsole
│ ├── App.config
│ ├── FodyWeavers.xml
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── SharpSploitConsole.csproj
│ └── packages.config
├── sharpsploitimg1.PNG
└── sharpsploitimg2.PNG
├── SharpSql
├── .vs
│ └── SharpSql
│ │ └── v15
│ │ ├── .suo
│ │ └── Server
│ │ └── sqlite3
│ │ ├── db.lock
│ │ └── storage.ide
├── SharpSql.sln
└── SharpSql
│ ├── App.config
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── SharpSQL.csproj
│ ├── bin
│ └── Debug
│ │ ├── SharpSql.exe
│ │ ├── SharpSql.exe.config
│ │ └── SharpSql.pdb
│ └── obj
│ └── Debug
│ ├── DesignTimeResolveAssemblyReferencesInput.cache
│ ├── SharpSql.csproj.CoreCompileInputs.cache
│ ├── SharpSql.csproj.FileListAbsolute.txt
│ ├── SharpSql.csprojResolveAssemblyReference.cache
│ ├── SharpSql.exe
│ ├── SharpSql.pdb
│ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ └── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
├── SharpUp
├── .gitignore
├── LICENSE
├── README.md
├── SharpUp.sln
└── SharpUp
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ └── SharpUp.csproj
├── SharpView
├── .gitignore
├── Compiled
│ └── SharpView.exe
├── LICENSE
├── README.md
├── SharpView.sln
└── SharpView
│ ├── App.config
│ ├── Arguments
│ ├── Args_Add_DomainGroupMember.cs
│ ├── Args_Add_DomainObjectAcl.cs
│ ├── Args_Add_RemoteConnection.cs
│ ├── Args_ConvertFrom_SID.cs
│ ├── Args_ConvertFrom_UACValue.cs
│ ├── Args_ConvertTo_SID.cs
│ ├── Args_Convert_ADName.cs
│ ├── Args_Export_PowerViewCSV.cs
│ ├── Args_Find_DomainLocalGroupMember.cs
│ ├── Args_Find_DomainObjectPropertyOutlier.cs
│ ├── Args_Find_DomainProcess.cs
│ ├── Args_Find_DomainShare.cs
│ ├── Args_Find_DomainUserEvent.cs
│ ├── Args_Find_DomainUserLocation.cs
│ ├── Args_Find_InterestingDomainAcl.cs
│ ├── Args_Find_InterestingDomainShareFile.cs
│ ├── Args_Find_InterestingFile.cs
│ ├── Args_Find_LocalAdminAccess.cs
│ ├── Args_Get_Domain.cs
│ ├── Args_Get_DomainComputer.cs
│ ├── Args_Get_DomainController.cs
│ ├── Args_Get_DomainDFSShare.cs
│ ├── Args_Get_DomainDNSRecord.cs
│ ├── Args_Get_DomainDNSZone.cs
│ ├── Args_Get_DomainFileServer.cs
│ ├── Args_Get_DomainForeignGroupMember.cs
│ ├── Args_Get_DomainForeignUser.cs
│ ├── Args_Get_DomainGPO.cs
│ ├── Args_Get_DomainGPOComputerLocalGroupMapping.cs
│ ├── Args_Get_DomainGPOLocalGroup.cs
│ ├── Args_Get_DomainGPOUserLocalGroupMapping.cs
│ ├── Args_Get_DomainGUIDMap.cs
│ ├── Args_Get_DomainGroup.cs
│ ├── Args_Get_DomainGroupMember.cs
│ ├── Args_Get_DomainManagedSecurityGroup.cs
│ ├── Args_Get_DomainOU.cs
│ ├── Args_Get_DomainObject.cs
│ ├── Args_Get_DomainObjectAcl.cs
│ ├── Args_Get_DomainPolicyData.cs
│ ├── Args_Get_DomainSID.cs
│ ├── Args_Get_DomainSPNTicket.cs
│ ├── Args_Get_DomainSearcher.cs
│ ├── Args_Get_DomainSite.cs
│ ├── Args_Get_DomainSubnet.cs
│ ├── Args_Get_DomainTrust.cs
│ ├── Args_Get_DomainTrustMapping.cs
│ ├── Args_Get_DomainUser.cs
│ ├── Args_Get_DomainUserEvent.cs
│ ├── Args_Get_Forest.cs
│ ├── Args_Get_ForestDomain.cs
│ ├── Args_Get_ForestGlobalCatalog.cs
│ ├── Args_Get_GptTmpl.cs
│ ├── Args_Get_GroupsXML.cs
│ ├── Args_Get_IniContent.cs
│ ├── Args_Get_NetComputerSiteName.cs
│ ├── Args_Get_NetLocalGroup.cs
│ ├── Args_Get_NetLocalGroupMember.cs
│ ├── Args_Get_NetLoggedon.cs
│ ├── Args_Get_NetRDPSession.cs
│ ├── Args_Get_NetSession.cs
│ ├── Args_Get_NetShare.cs
│ ├── Args_Get_PathAcl.cs
│ ├── Args_Get_PrincipalContext.cs
│ ├── Args_Get_RegLoggedOn.cs
│ ├── Args_Get_WMIProcess.cs
│ ├── Args_Get_WMIRegCachedRDPConnection.cs
│ ├── Args_Get_WMIRegLastLoggedOn.cs
│ ├── Args_Get_WMIRegMountedDrive.cs
│ ├── Args_Get_WMIRegProxy.cs
│ ├── Args_Invoke_Kerberoast.cs
│ ├── Args_Invoke_UserImpersonation.cs
│ ├── Args_New_DomainGroup.cs
│ ├── Args_New_DomainUser.cs
│ ├── Args_Remove_DomainObjectAcl.cs
│ ├── Args_Remove_RemoteConnection.cs
│ ├── Args_Resolve_IPAddress.cs
│ ├── Args_Set_DomainObject.cs
│ ├── Args_Set_DomainUserPassword.cs
│ ├── Args_Test.cs
│ └── Args_Test_AdminAccess.cs
│ ├── Enums
│ ├── ADSNameType.cs
│ ├── ClassType.cs
│ ├── DnsRecordType.cs
│ ├── GroupProperty.cs
│ ├── GroupScope.cs
│ ├── GroupType.cs
│ ├── LocalGroupType.cs
│ ├── LogonType.cs
│ ├── ManagerType.cs
│ ├── MethodType.cs
│ ├── Rights.cs
│ ├── SPNTicketFormat.cs
│ ├── SamAccountType.cs
│ ├── StealthSource.cs
│ ├── TrustAttribute.cs
│ ├── UACEnum.cs
│ └── Version.cs
│ ├── FodyWeavers.xml
│ ├── Interfaces
│ ├── IDomainTrust.cs
│ └── IWinEvent.cs
│ ├── PowerView.cs
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── Returns
│ ├── ACL.cs
│ ├── AdminAccess.cs
│ ├── ApiDomainTrust.cs
│ ├── CachedRDPConnection.cs
│ ├── ComputerIPAddress.cs
│ ├── ComputerSite.cs
│ ├── DFSShare.cs
│ ├── DNSRecord.cs
│ ├── DNSZone.cs
│ ├── DomainPolicyData.cs
│ ├── ExplicitCredentialLogonEvent.cs
│ ├── FileACL.cs
│ ├── Filter.cs
│ ├── ForeignGroupMember.cs
│ ├── ForeignUser.cs
│ ├── ForestEx.cs
│ ├── FoundFile.cs
│ ├── GPO.cs
│ ├── GPOComputerLocalGroupMember.cs
│ ├── GPOGroup.cs
│ ├── GPOLocalGroupMapping.cs
│ ├── GptTmpl.cs
│ ├── GroupMember.cs
│ ├── GroupsXML.cs
│ ├── LDAPProperty.cs
│ ├── LastLoggedOnUser.cs
│ ├── LdapDomainTrust.cs
│ ├── LocalGroupAPI.cs
│ ├── LocalGroupMemberAPI.cs
│ ├── LocalGroupMemberWinNT.cs
│ ├── LocalGroupWinNT.cs
│ ├── LoggedOnUserInfo.cs
│ ├── LogonEvent.cs
│ ├── ManagedSecurityGroup.cs
│ ├── NetDomainTrust.cs
│ ├── PrincipalContextEx.cs
│ ├── PropertyOutlier.cs
│ ├── ProxySettings.cs
│ ├── RDPSessionInfo.cs
│ ├── RegLoggedOnUser.cs
│ ├── RegMountedDrive.cs
│ ├── ResolvedSID.cs
│ ├── SPNTicket.cs
│ ├── SessionInfo.cs
│ ├── ShareInfo.cs
│ ├── UserLocation.cs
│ └── UserProcess.cs
│ ├── SharpView.csproj
│ ├── Utils
│ ├── Logger.cs
│ ├── NativeMethods.cs
│ ├── NetworkCredentialConverter.cs
│ ├── ObjectDumper.cs
│ ├── PathExtension.cs
│ ├── ReflectionExtension.cs
│ ├── RegexMatch.cs
│ ├── ResultPropertyValueCollectionExtension.cs
│ ├── StringArrayConverter.cs
│ ├── StringExtension.cs
│ ├── TestConnection.cs
│ ├── TrustAttributeExtension.cs
│ ├── UACEnumExtension.cs
│ ├── ValidationExtension.cs
│ ├── WildcardMatch.cs
│ └── WmiWrapper.cs
│ └── packages.config
└── SharpWMI
├── .gitignore
├── LICENSE
├── README.md
├── SharpWMI.sln
└── SharpWMI
├── Program.cs
├── Properties
└── AssemblyInfo.cs
└── SharpWMI.csproj
/Binaries/CSExec/csexec/net35/csexec.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexec/net35/csexec.exe
--------------------------------------------------------------------------------
/Binaries/CSExec/csexec/net35/csexec.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Binaries/CSExec/csexec/net35/csexec.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexec/net35/csexec.pdb
--------------------------------------------------------------------------------
/Binaries/CSExec/csexec/net40/csexec.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexec/net40/csexec.exe
--------------------------------------------------------------------------------
/Binaries/CSExec/csexec/net40/csexec.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Binaries/CSExec/csexec/net40/csexec.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexec/net40/csexec.pdb
--------------------------------------------------------------------------------
/Binaries/CSExec/csexec/net45/csexec.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexec/net45/csexec.exe
--------------------------------------------------------------------------------
/Binaries/CSExec/csexec/net45/csexec.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Binaries/CSExec/csexec/net45/csexec.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexec/net45/csexec.pdb
--------------------------------------------------------------------------------
/Binaries/CSExec/csexecsvc/net35/csexecsvc.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexecsvc/net35/csexecsvc.exe
--------------------------------------------------------------------------------
/Binaries/CSExec/csexecsvc/net35/csexecsvc.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexecsvc/net35/csexecsvc.pdb
--------------------------------------------------------------------------------
/Binaries/CSExec/csexecsvc/net45/csexecsvc.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexecsvc/net45/csexecsvc.exe
--------------------------------------------------------------------------------
/Binaries/CSExec/csexecsvc/net45/csexecsvc.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/CSExec/csexecsvc/net45/csexecsvc.pdb
--------------------------------------------------------------------------------
/Binaries/Rubeus.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/Rubeus.exe
--------------------------------------------------------------------------------
/Binaries/SafetyKatz.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SafetyKatz.exe
--------------------------------------------------------------------------------
/Binaries/Seatbelt.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/Seatbelt.exe
--------------------------------------------------------------------------------
/Binaries/SharpChrome.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpChrome.exe
--------------------------------------------------------------------------------
/Binaries/SharpCradle/SharpCradle_x64.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpCradle/SharpCradle_x64.exe
--------------------------------------------------------------------------------
/Binaries/SharpCradle/SharpCradle_x86.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpCradle/SharpCradle_x86.exe
--------------------------------------------------------------------------------
/Binaries/SharpDPAPI.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpDPAPI.exe
--------------------------------------------------------------------------------
/Binaries/SharpDump.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpDump.exe
--------------------------------------------------------------------------------
/Binaries/SharpRoast.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpRoast.exe
--------------------------------------------------------------------------------
/Binaries/SharpSploitConsole/SharpSploitConsole_x64.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpSploitConsole/SharpSploitConsole_x64.exe
--------------------------------------------------------------------------------
/Binaries/SharpSploitConsole/SharpSploitConsole_x86.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpSploitConsole/SharpSploitConsole_x86.exe
--------------------------------------------------------------------------------
/Binaries/SharpSql.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpSql.exe
--------------------------------------------------------------------------------
/Binaries/SharpUp.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpUp.exe
--------------------------------------------------------------------------------
/Binaries/SharpView.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpView.exe
--------------------------------------------------------------------------------
/Binaries/SharpWMI.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/Binaries/SharpWMI.exe
--------------------------------------------------------------------------------
/CSExec/.vs/csexec/v15/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/.vs/csexec/v15/.suo
--------------------------------------------------------------------------------
/CSExec/.vs/csexec/v15/Server/sqlite3/db.lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/.vs/csexec/v15/Server/sqlite3/db.lock
--------------------------------------------------------------------------------
/CSExec/.vs/csexec/v15/Server/sqlite3/storage.ide:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/.vs/csexec/v15/Server/sqlite3/storage.ide
--------------------------------------------------------------------------------
/CSExec/README.md:
--------------------------------------------------------------------------------
1 | # CSExec (a C Sharp psexec implementation)
2 |
3 | This is an example for how to implement `psexec` (from SysInternals Suite) functionality, but in open source C#. This does not implement all of the psexec functionality, but it does implement the equivalent functionality to running: `psexec -s \\target-host cmd.exe`
4 |
5 | 
6 |
7 | `psexec` works by doing the following steps:
8 |
9 | * copy a windows service executable (`psexecsvc.exe`) that is embedded within the `psexec.exe` binary to `\\target-host\admin$\system32`
10 | * remotely connect to the service control manager on `\\target-host` to install and start the `psexecsvc.exe` service
11 | * connect to the named pipe on the target host: `\\target-host\pipe\psexecsvc`
12 | * send commands to the `psexecsvc` via the named pipe
13 | * receive output via the `psexecsvc` named pipe
14 | * upon exit, uninstall service, delete service executable
15 |
16 | This project `csexec` mimicks those steps in native C# with only a minimal amount of `pinvoke` for the remote service installation. It's actually surprisingly simple and takes a very minimal amount of code to implement.
17 |
18 | The primary difference between this and `psexec` is that it must determine the .NET runtime on the remote host in order to install the correctly compiled service executable.
19 |
20 | Build in Visual Studio to create .NET 3.5, 4.0, and 4.5 executables for your client preference (Win 7 - Win 10+).
21 |
--------------------------------------------------------------------------------
/CSExec/csexec/GlobalVars.cs:
--------------------------------------------------------------------------------
1 | namespace csexec
2 | {
3 | public static class GlobalVars
4 | {
5 | public const string ClientName = "csexec";
6 | public const string ServiceName = "csexecsvc";
7 | public const string ServiceDisplayName = "CSExec Service";
8 | public const string ServiceDescription = "Provides an open source implementation similar to psexec written in C#.";
9 | public const string ServiceEXE = ServiceName + ".exe";
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/CSExec/csexec/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("csexec")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("csexec")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("f3037587-1a3b-41f1-aa71-b026efdb2a82")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/CSExec/csexec/Resources/csexecsvc-net35.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/Resources/csexecsvc-net35.exe
--------------------------------------------------------------------------------
/CSExec/csexec/Resources/csexecsvc-net40.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/Resources/csexecsvc-net40.exe
--------------------------------------------------------------------------------
/CSExec/csexec/Resources/csexecsvc-net45.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/Resources/csexecsvc-net45.exe
--------------------------------------------------------------------------------
/CSExec/csexec/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/CSExec/csexec/bin/Release/net35/csexec.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/bin/Release/net35/csexec.exe
--------------------------------------------------------------------------------
/CSExec/csexec/bin/Release/net35/csexec.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/CSExec/csexec/bin/Release/net35/csexec.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/bin/Release/net35/csexec.pdb
--------------------------------------------------------------------------------
/CSExec/csexec/bin/Release/net40/csexec.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/bin/Release/net40/csexec.exe
--------------------------------------------------------------------------------
/CSExec/csexec/bin/Release/net40/csexec.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/CSExec/csexec/bin/Release/net40/csexec.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/bin/Release/net40/csexec.pdb
--------------------------------------------------------------------------------
/CSExec/csexec/bin/Release/net45/csexec.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/bin/Release/net45/csexec.exe
--------------------------------------------------------------------------------
/CSExec/csexec/bin/Release/net45/csexec.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/CSExec/csexec/bin/Release/net45/csexec.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/bin/Release/net45/csexec.pdb
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Debug/csexec-net35.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 1aa687a98339ed6f030d9106ce570ad131c05557
2 |
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Debug/csexec-net35.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Debug/csexec-net35.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Debug/csexec-net40.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | cdf3f21c7cec9eb421830de55e46c8be840c0f49
2 |
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Debug/csexec-net40.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Debug/csexec-net40.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Debug/csexec-net45.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 3204047c8176f9049dcaedc03c7b0be371771aaf
2 |
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Debug/csexec-net45.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Debug/csexec-net45.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/TempPE/Properties.Resources.Designer.cs.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/TempPE/Properties.Resources.Designer.cs.dll
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec-net35.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 1aa687a98339ed6f030d9106ce570ad131c05557
2 |
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec-net35.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec-net35.csproj.GenerateResource.cache
2 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec.Properties.Resources.resources
3 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec-net35.csproj.CoreCompileInputs.cache
4 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec.exe
5 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\bin\Release\net35\csexec.exe.config
6 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\bin\Release\net35\csexec.exe
7 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\bin\Release\net35\csexec.pdb
8 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec.pdb
9 |
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec-net35.csproj.GenerateResource.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/csexec-net35.csproj.GenerateResource.cache
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec-net40.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | cdf3f21c7cec9eb421830de55e46c8be840c0f49
2 |
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec-net40.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\bin\Release\net40\csexec.exe.config
2 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\bin\Release\net40\csexec.exe
3 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\bin\Release\net40\csexec.pdb
4 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec.Properties.Resources.resources
5 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec-net40.csproj.GenerateResource.cache
6 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec-net40.csproj.CoreCompileInputs.cache
7 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec.exe
8 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec.pdb
9 |
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec-net40.csproj.GenerateResource.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/csexec-net40.csproj.GenerateResource.cache
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec-net45.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 3204047c8176f9049dcaedc03c7b0be371771aaf
2 |
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec-net45.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec-net45.csproj.GenerateResource.cache
2 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\bin\Release\net45\csexec.exe.config
3 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\bin\Release\net45\csexec.exe
4 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\bin\Release\net45\csexec.pdb
5 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec.Properties.Resources.resources
6 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec-net45.csproj.CoreCompileInputs.cache
7 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec.exe
8 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexec\obj\Release\csexec.pdb
9 |
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec-net45.csproj.GenerateResource.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/csexec-net45.csproj.GenerateResource.cache
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec.Properties.Resources.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/csexec.Properties.Resources.resources
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/csexec.exe
--------------------------------------------------------------------------------
/CSExec/csexec/obj/Release/csexec.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexec/obj/Release/csexec.pdb
--------------------------------------------------------------------------------
/CSExec/csexecsvc/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("csexecsvc")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("csexecsvc")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("41a90a6a-f9ed-4a2f-8448-d544ec1fd753")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/bin/Release/net35/csexecsvc.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/bin/Release/net35/csexecsvc.exe
--------------------------------------------------------------------------------
/CSExec/csexecsvc/bin/Release/net35/csexecsvc.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/bin/Release/net35/csexecsvc.pdb
--------------------------------------------------------------------------------
/CSExec/csexecsvc/bin/Release/net45/csexecsvc.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/bin/Release/net45/csexecsvc.exe
--------------------------------------------------------------------------------
/CSExec/csexecsvc/bin/Release/net45/csexecsvc.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/bin/Release/net45/csexecsvc.pdb
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Debug/csexecsvc-net35.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | b50e7ef967f708a98370e258bc992d7f3d5c8fa1
2 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Debug/csexecsvc-net40.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 9800eb01b89b0fdca0cd5207734cf3503c85b24b
2 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Debug/csexecsvc-net40.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Debug/csexecsvc-net40.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Debug/csexecsvc-net45.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | f86adb631ce556f6975913dfd286bf8670ea7493
2 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Debug/csexecsvc-net45.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Debug/csexecsvc-net45.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/csexecsvc-net35.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | b50e7ef967f708a98370e258bc992d7f3d5c8fa1
2 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/csexecsvc-net35.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc-net35.csproj.CoreCompileInputs.cache
2 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc.exe
3 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\bin\Release\net35\csexecsvc.exe
4 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\bin\Release\net35\csexecsvc.pdb
5 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc.pdb
6 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/csexecsvc-net40.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 9800eb01b89b0fdca0cd5207734cf3503c85b24b
2 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/csexecsvc-net40.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\bin\Release\net40\csexecsvc.exe
2 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\bin\Release\net40\csexecsvc.pdb
3 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc-net40.csprojResolveAssemblyReference.cache
4 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc-net40.csproj.CoreCompileInputs.cache
5 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc.exe
6 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc.pdb
7 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/csexecsvc-net45.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | f86adb631ce556f6975913dfd286bf8670ea7493
2 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/csexecsvc-net45.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc-net45.csproj.CoreCompileInputs.cache
2 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc.exe
3 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\bin\Release\net45\csexecsvc.exe
4 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\bin\Release\net45\csexecsvc.pdb
5 | C:\Users\pentest\Desktop\CSExec-master\CSExec-master\csexecsvc\obj\Release\csexecsvc.pdb
6 |
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/csexecsvc.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Release/csexecsvc.exe
--------------------------------------------------------------------------------
/CSExec/csexecsvc/obj/Release/csexecsvc.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/csexecsvc/obj/Release/csexecsvc.pdb
--------------------------------------------------------------------------------
/CSExec/screen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/CSExec/screen.png
--------------------------------------------------------------------------------
/Rubeus/.gitignore:
--------------------------------------------------------------------------------
1 | .vs
2 | *.user
3 | [Dd]ebug/
4 | [Rr]elease/
5 | [Bb]in/
6 | [Oo]bj/
7 | .DS_Store
8 |
9 |
--------------------------------------------------------------------------------
/Rubeus/Rubeus.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Rubeus", "Rubeus\Rubeus.csproj", "{658C8B7F-3664-4A95-9572-A3E5871DFC06}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {658C8B7F-3664-4A95-9572-A3E5871DFC06}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {658C8B7F-3664-4A95-9572-A3E5871DFC06}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {658C8B7F-3664-4A95-9572-A3E5871DFC06}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {658C8B7F-3664-4A95-9572-A3E5871DFC06}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Asn1/AsnException.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 |
4 | namespace Asn1 {
5 |
6 | public class AsnException : IOException {
7 |
8 | public AsnException(string message)
9 | : base(message)
10 | {
11 | }
12 |
13 | public AsnException(string message, Exception nested)
14 | : base(message, nested)
15 | {
16 | }
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/Createnetonly.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 |
5 | namespace Rubeus.Commands
6 | {
7 | public class Createnetonly : ICommand
8 | {
9 | public static string CommandName => "createnetonly";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | if (arguments.ContainsKey("/program"))
14 | {
15 | if (arguments.ContainsKey("/show"))
16 | {
17 | LSA.CreateProcessNetOnly(arguments["/program"], true);
18 | }
19 | else
20 | {
21 | LSA.CreateProcessNetOnly(arguments["/program"]);
22 | }
23 | }
24 |
25 | else
26 | {
27 | Console.WriteLine("\r\n[X] A /program needs to be supplied!\r\n");
28 | }
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/Describe.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 |
5 |
6 | namespace Rubeus.Commands
7 | {
8 | public class Describe : ICommand
9 | {
10 | public static string CommandName => "describe";
11 |
12 | public void Execute(Dictionary arguments)
13 | {
14 | if (arguments.ContainsKey("/ticket"))
15 | {
16 | string kirbi64 = arguments["/ticket"];
17 |
18 | if (Helpers.IsBase64String(kirbi64))
19 | {
20 | byte[] kirbiBytes = Convert.FromBase64String(kirbi64);
21 | KRB_CRED kirbi = new KRB_CRED(kirbiBytes);
22 | LSA.DisplayTicket(kirbi, true);
23 | }
24 | else if (File.Exists(kirbi64))
25 | {
26 | byte[] kirbiBytes = File.ReadAllBytes(kirbi64);
27 | KRB_CRED kirbi = new KRB_CRED(kirbiBytes);
28 | LSA.DisplayTicket(kirbi, true);
29 | }
30 | else
31 | {
32 | Console.WriteLine("\r\n[X] /ticket:X must either be a .kirbi file or a base64 encoded .kirbi\r\n");
33 | }
34 | return;
35 | }
36 | else
37 | {
38 | Console.WriteLine("\r\n[X] A /ticket:X needs to be supplied!\r\n");
39 | return;
40 | }
41 | }
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/HarvestCommand.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 | namespace Rubeus.Commands
5 | {
6 | public class HarvestCommand : ICommand
7 | {
8 | public static string CommandName => "harvest";
9 |
10 | public void Execute(Dictionary arguments)
11 | {
12 | int intervalMinutes = 60;
13 | string registryBasePath = null;
14 | if (arguments.ContainsKey("/interval"))
15 | {
16 | intervalMinutes = Int32.Parse(arguments["/interval"]);
17 | }
18 | if (arguments.ContainsKey("/registry"))
19 | {
20 | registryBasePath = arguments["/registry"];
21 | }
22 |
23 | Harvest.HarvestTGTs(intervalMinutes, registryBasePath);
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/Hash.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 |
5 | namespace Rubeus.Commands
6 | {
7 | public class Hash : ICommand
8 | {
9 | public static string CommandName => "hash";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | string user = "";
14 | string domain = "";
15 | string password = "";
16 |
17 | if (arguments.ContainsKey("/domain"))
18 | {
19 | domain = arguments["/domain"];
20 | }
21 |
22 | if (arguments.ContainsKey("/user"))
23 | {
24 | string[] parts = arguments["/user"].Split('\\');
25 | if (parts.Length == 2)
26 | {
27 | domain = parts[0];
28 | user = parts[1];
29 | }
30 | else
31 | {
32 | user = arguments["/user"];
33 | }
34 | }
35 |
36 | if (arguments.ContainsKey("/password"))
37 | {
38 | password = arguments["/password"];
39 | }
40 | else
41 | {
42 | Console.WriteLine("[X] /password:X must be supplied!");
43 | return;
44 | }
45 |
46 | Crypto.ComputeAllKerberosPasswordHashes(password, user, domain);
47 | }
48 | }
49 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/ICommand.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace Rubeus.Commands
4 | {
5 | public interface ICommand
6 | {
7 | void Execute(Dictionary arguments);
8 | }
9 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/Klist.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 |
5 | namespace Rubeus.Commands
6 | {
7 | public class Klist : ICommand
8 | {
9 | public static string CommandName => "klist";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | Interop.LUID luid = new Interop.LUID();
14 |
15 | if (arguments.ContainsKey("/luid"))
16 | {
17 | try
18 | {
19 | luid = new Interop.LUID(arguments["/luid"]);
20 | }
21 | catch
22 | {
23 | Console.WriteLine("[X] Invalid LUID format ({0})\r\n", arguments["/luid"]);
24 | return;
25 | }
26 | }
27 |
28 | LSA.ListKerberosTickets(luid);
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/Monitor.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 | namespace Rubeus.Commands
5 | {
6 | public class Monitor : ICommand
7 | {
8 | public static string CommandName => "monitor";
9 |
10 | public void Execute(Dictionary arguments)
11 | {
12 | string targetUser = null;
13 | int interval = 60;
14 | string registryBasePath = null;
15 | if (arguments.ContainsKey("/filteruser"))
16 | {
17 | targetUser = arguments["/filteruser"];
18 | }
19 | if (arguments.ContainsKey("/interval"))
20 | {
21 | interval = Int32.Parse(arguments["/interval"]);
22 | }
23 | if (arguments.ContainsKey("/registry"))
24 | {
25 | registryBasePath = arguments["/registry"];
26 | }
27 |
28 | Harvest.Monitor4624(interval, targetUser, registryBasePath);
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/Purge.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 |
5 | namespace Rubeus.Commands
6 | {
7 | public class Purge : ICommand
8 | {
9 | public static string CommandName => "purge";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | Interop.LUID luid = new Interop.LUID();
14 |
15 | if (arguments.ContainsKey("/luid"))
16 | {
17 | try
18 | {
19 | luid = new Interop.LUID(arguments["/luid"]);
20 | }
21 | catch
22 | {
23 | Console.WriteLine("[X] Invalid LUID format ({0})\r\n", arguments["/luid"]);
24 | return;
25 | }
26 | }
27 |
28 | Console.WriteLine("Luid: {0}", luid);
29 |
30 | LSA.Purge(luid);
31 | }
32 | }
33 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/Tgtdeleg.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 |
4 | namespace Rubeus.Commands
5 | {
6 | public class Tgtdeleg : ICommand
7 | {
8 | public static string CommandName => "tgtdeleg";
9 |
10 | public void Execute(Dictionary arguments)
11 | {
12 | if (arguments.ContainsKey("/target"))
13 | {
14 | byte[] blah = LSA.RequestFakeDelegTicket(arguments["/target"]);
15 | }
16 | else
17 | {
18 | byte[] blah = LSA.RequestFakeDelegTicket();
19 | }
20 | }
21 | }
22 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Commands/Triage.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 |
5 | namespace Rubeus.Commands
6 | {
7 | public class Triage : ICommand
8 | {
9 | public static string CommandName => "triage";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | Interop.LUID luid = new Interop.LUID();
14 | string user = "";
15 | string service = "";
16 |
17 | if (arguments.ContainsKey("/luid"))
18 | {
19 | try
20 | {
21 | luid = new Interop.LUID(arguments["/luid"]);
22 | }
23 | catch
24 | {
25 | Console.WriteLine("[X] Invalid LUID format ({0})\r\n", arguments["/luid"]);
26 | return;
27 | }
28 | }
29 | if (arguments.ContainsKey("/user"))
30 | {
31 | user = arguments["/user"];
32 | }
33 | if (arguments.ContainsKey("/service"))
34 | {
35 | service = arguments["/service"];
36 | }
37 |
38 | LSA.TriageKerberosTickets(luid, user, service);
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Domain/ArgumentParser.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Diagnostics;
3 |
4 | namespace Rubeus.Domain
5 | {
6 | public static class ArgumentParser
7 | {
8 | public static ArgumentParserResult Parse(IEnumerable args)
9 | {
10 | var arguments = new Dictionary();
11 | try
12 | {
13 | foreach (var argument in args)
14 | {
15 | var idx = argument.IndexOf(':');
16 | if (idx > 0)
17 | arguments[argument.Substring(0, idx)] = argument.Substring(idx + 1);
18 | else
19 | arguments[argument] = string.Empty;
20 | }
21 |
22 | return ArgumentParserResult.Success(arguments);
23 | }
24 | catch (System.Exception ex)
25 | {
26 | Debug.WriteLine(ex.Message);
27 | return ArgumentParserResult.Failure();
28 | }
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Domain/ArgumentParserResult.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace Rubeus.Domain
4 | {
5 | public class ArgumentParserResult
6 | {
7 | public bool ParsedOk { get; }
8 | public Dictionary Arguments { get; }
9 |
10 | private ArgumentParserResult(bool parsedOk, Dictionary arguments)
11 | {
12 | ParsedOk = parsedOk;
13 | Arguments = arguments;
14 | }
15 |
16 | public static ArgumentParserResult Success(Dictionary arguments)
17 | => new ArgumentParserResult(true, arguments);
18 |
19 | public static ArgumentParserResult Failure()
20 | => new ArgumentParserResult(false, null);
21 |
22 | }
23 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Program.cs:
--------------------------------------------------------------------------------
1 | using Rubeus.Domain;
2 | using System;
3 |
4 | namespace Rubeus
5 | {
6 | public class Program
7 | {
8 | public static void Main(string[] args)
9 | {
10 | try
11 | {
12 | Info.ShowLogo();
13 |
14 | // try to parse the command line arguments, show usage on failure and then bail
15 | var parsed = ArgumentParser.Parse(args);
16 | if (parsed.ParsedOk == false)
17 | Info.ShowUsage();
18 | else
19 | {
20 | // Try to execute the command using the arguments passed in
21 |
22 | var commandName = args.Length != 0 ? args[0] : "";
23 |
24 | var commandFound = new CommandCollection().ExecuteCommand(commandName, parsed.Arguments);
25 |
26 | // show the usage if no commands were found for the command name
27 | if (commandFound == false)
28 | Info.ShowUsage();
29 | }
30 | }
31 | catch (Exception e)
32 | {
33 | Console.WriteLine("\r\n[!] Unhandled Rubeus exception:\r\n");
34 | Console.WriteLine(e);
35 | }
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/Rubeus/Rubeus/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("Rubeus")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("Rubeus")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("658c8b7f-3664-4a95-9572-a3e5871dfc06")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/Rubeus/Rubeus/lib/krb_structures/KERB_PA_PAC_REQUEST.cs:
--------------------------------------------------------------------------------
1 | using Asn1;
2 | using System;
3 | using System.Text;
4 |
5 | namespace Rubeus
6 | {
7 | //KERB-PA-PAC-REQUEST ::= SEQUENCE {
8 | // include-pac[0] BOOLEAN --If TRUE, and no pac present, include PAC.
9 | // --If FALSE, and PAC present, remove PAC
10 | //}
11 |
12 | public class KERB_PA_PAC_REQUEST
13 | {
14 | public KERB_PA_PAC_REQUEST()
15 | {
16 | // default -> include PAC
17 | include_pac = true;
18 | }
19 |
20 | public KERB_PA_PAC_REQUEST(AsnElt value)
21 | {
22 | include_pac = value.Sub[0].Sub[0].GetBoolean();
23 | }
24 |
25 | public AsnElt Encode()
26 | {
27 | AsnElt ret;
28 |
29 | if (include_pac)
30 | {
31 | ret = AsnElt.MakeBlob(new byte[] { 0x30, 0x05, 0xa0, 0x03, 0x01, 0x01, 0x01 });
32 | }
33 | else
34 | {
35 | ret = AsnElt.MakeBlob(new byte[] { 0x30, 0x05, 0xa0, 0x03, 0x01, 0x01, 0x00 });
36 | }
37 |
38 | AsnElt seq = AsnElt.Make(AsnElt.SEQUENCE, new AsnElt[] { ret });
39 |
40 | return seq;
41 | }
42 |
43 | public bool include_pac { get; set; }
44 | }
45 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/lib/krb_structures/LastReq.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Asn1;
3 | using System.Text;
4 | using System.Collections.Generic;
5 |
6 | namespace Rubeus
7 | {
8 | public class LastReq
9 | {
10 | //LastReq::= SEQUENCE OF SEQUENCE {
11 | // lr-type[0] Int32,
12 | // lr-value[1] KerberosTime
13 | //}
14 |
15 | public LastReq(AsnElt body)
16 | {
17 | foreach (AsnElt s in body.Sub[0].Sub)
18 | {
19 | switch (s.TagValue)
20 | {
21 | case 0:
22 | lr_type = Convert.ToInt32(s.Sub[0].GetInteger());
23 | break;
24 | case 1:
25 | lr_value = s.Sub[0].GetTime();
26 | break;
27 | default:
28 | break;
29 | }
30 | }
31 | }
32 |
33 | public AsnElt Encode()
34 | {
35 | // TODO: implement
36 | return null;
37 | }
38 |
39 | public Int32 lr_type { get; set; }
40 |
41 | public DateTime lr_value { get; set; }
42 | }
43 | }
--------------------------------------------------------------------------------
/Rubeus/Rubeus/lib/krb_structures/PA_ENC_TS_ENC.cs:
--------------------------------------------------------------------------------
1 | using Asn1;
2 | using System;
3 | using System.Text;
4 |
5 | namespace Rubeus
6 | {
7 | //PA-ENC-TS-ENC ::= SEQUENCE {
8 | // patimestamp[0] KerberosTime, -- client's time
9 | // pausec[1] INTEGER OPTIONAL
10 | //}
11 |
12 | public class PA_ENC_TS_ENC
13 | {
14 | public PA_ENC_TS_ENC()
15 | {
16 | patimestamp = DateTime.UtcNow;
17 | }
18 |
19 | public PA_ENC_TS_ENC(DateTime time)
20 | {
21 | patimestamp = time;
22 | }
23 |
24 | //public PA_ENC_TS_ENC(AsnElt value)
25 | //{
26 |
27 | //}
28 |
29 | public AsnElt Encode()
30 | {
31 | AsnElt patimestampAsn = AsnElt.MakeString(AsnElt.GeneralizedTime, patimestamp.ToString("yyyyMMddHHmmssZ"));
32 | AsnElt patimestampSeq = AsnElt.Make(AsnElt.SEQUENCE, new[] { patimestampAsn });
33 | patimestampSeq = AsnElt.MakeImplicit(AsnElt.CONTEXT, 0, patimestampSeq);
34 |
35 | AsnElt totalSeq = AsnElt.Make(AsnElt.SEQUENCE, new[] { patimestampSeq });
36 |
37 | return totalSeq;
38 | }
39 |
40 | public DateTime patimestamp { get; set; }
41 |
42 | public int pausec { get; set; }
43 |
44 | //public bool include_pac { get; set; }
45 | }
46 | }
--------------------------------------------------------------------------------
/SafetyKatz/.gitignore:
--------------------------------------------------------------------------------
1 | .vs
2 | *.user
3 | [Dd]ebug/
4 | [Rr]elease/
5 | [Bb]in/
6 | [Oo]bj/
7 |
--------------------------------------------------------------------------------
/SafetyKatz/SafetyKatz.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SafetyKatz", "SafetyKatz\SafetyKatz.csproj", "{8347E81B-89FC-42A9-B22C-F59A6A572DEC}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {8347E81B-89FC-42A9-B22C-F59A6A572DEC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {8347E81B-89FC-42A9-B22C-F59A6A572DEC}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {8347E81B-89FC-42A9-B22C-F59A6A572DEC}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {8347E81B-89FC-42A9-B22C-F59A6A572DEC}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/SafetyKatz/SafetyKatz/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SafetyKatz")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("SafetyKatz")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("8347e81b-89fc-42a9-b22c-f59a6a572dec")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/Seatbelt/.gitignore:
--------------------------------------------------------------------------------
1 | .vs
2 | *.user
3 | [Dd]ebug/
4 | [Rr]elease/
5 | [Bb]in/
6 | [Oo]bj/
7 |
--------------------------------------------------------------------------------
/Seatbelt/Seatbelt.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Seatbelt", "Seatbelt\Seatbelt.csproj", "{AEC32155-D589-4150-8FE7-2900DF4554C8}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {AEC32155-D589-4150-8FE7-2900DF4554C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {AEC32155-D589-4150-8FE7-2900DF4554C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {AEC32155-D589-4150-8FE7-2900DF4554C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {AEC32155-D589-4150-8FE7-2900DF4554C8}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/Seatbelt/Seatbelt/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("Seatbelt")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("Seatbelt")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("aec32155-d589-4150-8fe7-2900df4554c8")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/SharpCradle/CompiledBinaries/SharpCradle_x64.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpCradle/CompiledBinaries/SharpCradle_x64.exe
--------------------------------------------------------------------------------
/SharpCradle/CompiledBinaries/SharpCradle_x86.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpCradle/CompiledBinaries/SharpCradle_x86.exe
--------------------------------------------------------------------------------
/SharpCradle/SCradle.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpCradle/SCradle.PNG
--------------------------------------------------------------------------------
/SharpCradle/SCradle_2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpCradle/SCradle_2.PNG
--------------------------------------------------------------------------------
/SharpCradle/SharpCradle/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/SharpCradle/SharpCradle/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SharpCradle")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("SharpCradle")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("f70d2b71-4aae-4b24-9dae-55bc819c78bb")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/SharpDPAPI/.gitignore:
--------------------------------------------------------------------------------
1 | .vs
2 | *.user
3 | [Dd]ebug/
4 | [Rr]elease/
5 | [Bb]in/
6 | [Oo]bj/
7 | .DS_Store
8 | *.csproj.user
9 |
--------------------------------------------------------------------------------
/SharpDPAPI/SharpChrome/Commands/Backupkey.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 |
5 | namespace SharpChrome.Commands
6 | {
7 | public class Backupkey : ICommand
8 | {
9 | public static string CommandName => "backupkey";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | Console.WriteLine("\r\n[*] Action: Retrieve domain DPAPI backup key\r\n");
14 |
15 | string server = "";
16 | string outFile = "";
17 |
18 | if (arguments.ContainsKey("/server"))
19 | {
20 | server = arguments["/server"];
21 | Console.WriteLine("\r\n[*] Using server : {0}", server);
22 | }
23 | else
24 | {
25 | server = SharpDPAPI.Interop.GetDCName();
26 | if (String.IsNullOrEmpty(server))
27 | {
28 | return;
29 | }
30 | Console.WriteLine("\r\n[*] Using current domain controller : {0}", server);
31 | }
32 |
33 | if (arguments.ContainsKey("/file"))
34 | {
35 | // if we want the backup key piped to an output file
36 | outFile = arguments["/file"];
37 | }
38 |
39 | SharpDPAPI.Backup.GetBackupKey(server, outFile);
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpChrome/Commands/ICommand.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace SharpChrome.Commands
4 | {
5 | public interface ICommand
6 | {
7 | void Execute(Dictionary arguments);
8 | }
9 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpChrome/Domain/ArgumentParser.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Diagnostics;
3 |
4 | namespace SharpChrome.Domain
5 | {
6 | public static class ArgumentParser
7 | {
8 | public static ArgumentParserResult Parse(IEnumerable args)
9 | {
10 | var arguments = new Dictionary();
11 | try
12 | {
13 | foreach (var argument in args)
14 | {
15 | var idx = argument.IndexOf(':');
16 | if (idx > 0)
17 | arguments[argument.Substring(0, idx)] = argument.Substring(idx + 1);
18 | else
19 | arguments[argument] = string.Empty;
20 | }
21 |
22 | return ArgumentParserResult.Success(arguments);
23 | }
24 | catch (System.Exception ex)
25 | {
26 | Debug.WriteLine(ex.Message);
27 | return ArgumentParserResult.Failure();
28 | }
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/SharpDPAPI/SharpChrome/Domain/ArgumentParserResult.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace SharpChrome.Domain
4 | {
5 | public class ArgumentParserResult
6 | {
7 | public bool ParsedOk { get; }
8 | public Dictionary Arguments { get; }
9 |
10 | private ArgumentParserResult(bool parsedOk, Dictionary arguments)
11 | {
12 | ParsedOk = parsedOk;
13 | Arguments = arguments;
14 | }
15 |
16 | public static ArgumentParserResult Success(Dictionary arguments)
17 | => new ArgumentParserResult(true, arguments);
18 |
19 | public static ArgumentParserResult Failure()
20 | => new ArgumentParserResult(false, null);
21 |
22 | }
23 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpChrome/Program.cs:
--------------------------------------------------------------------------------
1 | using SharpChrome.Domain;
2 | using System;
3 | using System.Collections.Generic;
4 | using SQLite;
5 |
6 | namespace SharpChrome
7 | {
8 | class Program
9 | {
10 | static void Main(string[] args)
11 | {
12 | try
13 | {
14 | Info.Logo();
15 |
16 | // try to parse the command line arguments, show usage on failure and then bail
17 | var parsed = ArgumentParser.Parse(args);
18 | if (parsed.ParsedOk == false)
19 | Info.ShowUsage();
20 | else
21 | {
22 | // Try to execute the command using the arguments passed in
23 |
24 | var commandName = args.Length != 0 ? args[0] : "";
25 |
26 | var commandFound = new CommandCollection().ExecuteCommand(commandName, parsed.Arguments);
27 |
28 | // show the usage if no commands were found for the command name
29 | if (commandFound == false)
30 | Info.ShowUsage();
31 | }
32 | }
33 | catch (Exception e)
34 | {
35 | Console.WriteLine("\r\n[!] Unhandled SharpChrome exception:\r\n");
36 | Console.WriteLine(e);
37 | }
38 | }
39 | }
40 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpDPAPI", "SharpDPAPI\SharpDPAPI.csproj", "{5F026C27-F8E6-4052-B231-8451C6A73838}"
7 | EndProject
8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpChrome", "SharpChrome\SharpChrome.csproj", "{2F00A05B-263D-4FCC-846B-DA82BD684603}"
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 | Debug|Any CPU = Debug|Any CPU
13 | Release|Any CPU = Release|Any CPU
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {5F026C27-F8E6-4052-B231-8451C6A73838}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
17 | {5F026C27-F8E6-4052-B231-8451C6A73838}.Debug|Any CPU.Build.0 = Debug|Any CPU
18 | {5F026C27-F8E6-4052-B231-8451C6A73838}.Release|Any CPU.ActiveCfg = Release|Any CPU
19 | {5F026C27-F8E6-4052-B231-8451C6A73838}.Release|Any CPU.Build.0 = Release|Any CPU
20 | {2F00A05B-263D-4FCC-846B-DA82BD684603}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
21 | {2F00A05B-263D-4FCC-846B-DA82BD684603}.Debug|Any CPU.Build.0 = Debug|Any CPU
22 | {2F00A05B-263D-4FCC-846B-DA82BD684603}.Release|Any CPU.ActiveCfg = Release|Any CPU
23 | {2F00A05B-263D-4FCC-846B-DA82BD684603}.Release|Any CPU.Build.0 = Release|Any CPU
24 | EndGlobalSection
25 | GlobalSection(SolutionProperties) = preSolution
26 | HideSolutionNode = FALSE
27 | EndGlobalSection
28 | EndGlobal
29 |
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Commands/Backupkey.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 |
5 | namespace SharpDPAPI.Commands
6 | {
7 | public class Backupkey : ICommand
8 | {
9 | public static string CommandName => "backupkey";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | Console.WriteLine("\r\n[*] Action: Retrieve domain DPAPI backup key\r\n");
14 |
15 | string server = "";
16 | string outFile = "";
17 |
18 | if (arguments.ContainsKey("/server"))
19 | {
20 | server = arguments["/server"];
21 | Console.WriteLine("\r\n[*] Using server : {0}", server);
22 | }
23 | else
24 | {
25 | server = Interop.GetDCName();
26 | if (String.IsNullOrEmpty(server))
27 | {
28 | return;
29 | }
30 | Console.WriteLine("\r\n[*] Using current domain controller : {0}", server);
31 | }
32 |
33 | if (arguments.ContainsKey("/file"))
34 | {
35 | // if we want the backup key piped to an output file
36 | outFile = arguments["/file"];
37 | }
38 |
39 | Backup.GetBackupKey(server, outFile);
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Commands/ICommand.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace SharpDPAPI.Commands
4 | {
5 | public interface ICommand
6 | {
7 | void Execute(Dictionary arguments);
8 | }
9 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Commands/Machinecredentials.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 |
5 | namespace SharpDPAPI.Commands
6 | {
7 | public class Machinecredentials : ICommand
8 | {
9 | public static string CommandName => "machinecredentials";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | Console.WriteLine("\r\n[*] Action: Machine DPAPI Credential Triage\r\n");
14 |
15 | if (!Helpers.IsHighIntegrity())
16 | {
17 | Console.WriteLine("[X] Must be elevated to triage SYSTEM DPAPI Credentials!");
18 | }
19 | else
20 | {
21 | Dictionary mappings = Triage.TriageSystemMasterKeys();
22 |
23 | Console.WriteLine("\r\n[*] SYSTEM master key cache:\r\n");
24 | foreach (KeyValuePair kvp in mappings)
25 | {
26 | Console.WriteLine("{0}:{1}", kvp.Key, kvp.Value);
27 | }
28 | Console.WriteLine();
29 |
30 | Triage.TriageSystemCreds(mappings);
31 | }
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Commands/Machinemasterkeys.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 |
5 | namespace SharpDPAPI.Commands
6 | {
7 | public class Machinemasterkeys : ICommand
8 | {
9 | public static string CommandName => "machinemasterkeys";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | Console.WriteLine("\r\n[*] Action: Machine DPAPI Masterkey File Triage\r\n");
14 |
15 | Dictionary mappings = Triage.TriageSystemMasterKeys(false);
16 |
17 | if (mappings.Count == 0)
18 | {
19 | Console.WriteLine("\r\n[!] No master keys decrypted!\r\n");
20 | }
21 | else
22 | {
23 | Console.WriteLine("\r\n[*] SYSTEM master key cache:\r\n");
24 | foreach (KeyValuePair kvp in mappings)
25 | {
26 | Console.WriteLine("{0}:{1}", kvp.Key, kvp.Value);
27 | }
28 | }
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Commands/Machinetriage.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 |
5 | namespace SharpDPAPI.Commands
6 | {
7 | public class Machinetriage : ICommand
8 | {
9 | public static string CommandName => "machinetriage";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | Console.WriteLine("\r\n[*] Action: Machine DPAPI Credential and Vault Triage\r\n");
14 | arguments.Remove("triage");
15 |
16 | Dictionary mappings = Triage.TriageSystemMasterKeys();
17 |
18 | Triage.TriageSystemCreds(mappings);
19 | Triage.TriageSystemVaults(mappings);
20 | }
21 | }
22 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Commands/Machinevaults.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 |
5 | namespace SharpDPAPI.Commands
6 | {
7 | public class Machinevaults : ICommand
8 | {
9 | public static string CommandName => "machinevaults";
10 |
11 | public void Execute(Dictionary arguments)
12 | {
13 | Console.WriteLine("\r\n[*] Action: Machine DPAPI Vault Triage\r\n");
14 |
15 | if (!Helpers.IsHighIntegrity())
16 | {
17 | Console.WriteLine("[X] Must be elevated to triage SYSTEM DPAPI Credentials!");
18 | }
19 | else
20 | {
21 | Dictionary mappings = Triage.TriageSystemMasterKeys();
22 |
23 | Console.WriteLine("\r\n[*] SYSTEM master key cache:\r\n");
24 | foreach (KeyValuePair kvp in mappings)
25 | {
26 | Console.WriteLine("{0}:{1}", kvp.Key, kvp.Value);
27 | }
28 | Console.WriteLine();
29 |
30 | Triage.TriageSystemVaults(mappings);
31 | }
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Domain/ArgumentParser.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Diagnostics;
3 |
4 | namespace SharpDPAPI.Domain
5 | {
6 | public static class ArgumentParser
7 | {
8 | public static ArgumentParserResult Parse(IEnumerable args)
9 | {
10 | var arguments = new Dictionary();
11 | try
12 | {
13 | foreach (var argument in args)
14 | {
15 | var idx = argument.IndexOf(':');
16 | if (idx > 0)
17 | arguments[argument.Substring(0, idx)] = argument.Substring(idx + 1);
18 | else
19 | arguments[argument] = string.Empty;
20 | }
21 |
22 | return ArgumentParserResult.Success(arguments);
23 | }
24 | catch (System.Exception ex)
25 | {
26 | Debug.WriteLine(ex.Message);
27 | return ArgumentParserResult.Failure();
28 | }
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Domain/ArgumentParserResult.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace SharpDPAPI.Domain
4 | {
5 | public class ArgumentParserResult
6 | {
7 | public bool ParsedOk { get; }
8 | public Dictionary Arguments { get; }
9 |
10 | private ArgumentParserResult(bool parsedOk, Dictionary arguments)
11 | {
12 | ParsedOk = parsedOk;
13 | Arguments = arguments;
14 | }
15 |
16 | public static ArgumentParserResult Success(Dictionary arguments)
17 | => new ArgumentParserResult(true, arguments);
18 |
19 | public static ArgumentParserResult Failure()
20 | => new ArgumentParserResult(false, null);
21 |
22 | }
23 | }
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Domain/Version.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace SharpDPAPI
4 | {
5 | public static class Version
6 | {
7 | public static string version = "1.5.0";
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Program.cs:
--------------------------------------------------------------------------------
1 | using SharpDPAPI.Domain;
2 | using System;
3 |
4 | namespace SharpDPAPI
5 | {
6 | class Program
7 | {
8 | static void Main(string[] args)
9 | {
10 | try
11 | {
12 | Info.Logo();
13 |
14 | // try to parse the command line arguments, show usage on failure and then bail
15 | var parsed = ArgumentParser.Parse(args);
16 | if (parsed.ParsedOk == false)
17 | Info.ShowUsage();
18 | else
19 | {
20 | // Try to execute the command using the arguments passed in
21 |
22 | var commandName = args.Length != 0 ? args[0] : "";
23 |
24 | var commandFound = new CommandCollection().ExecuteCommand(commandName, parsed.Arguments);
25 |
26 | // show the usage if no commands were found for the command name
27 | if (commandFound == false)
28 | Info.ShowUsage();
29 | }
30 | }
31 | catch (Exception e)
32 | {
33 | Console.WriteLine("\r\n[!] Unhandled SharpDPAPI exception:\r\n");
34 | Console.WriteLine(e);
35 | }
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SharpDPAPI")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("SharpDPAPI")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("5f026c27-f8e6-4052-b231-8451c6a73838")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/SharpDPAPI/SharpDPAPI/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/SharpDump/.gitignore:
--------------------------------------------------------------------------------
1 | .vs
2 | *.user
3 | [Dd]ebug/
4 | [Rr]elease/
5 | [Bb]in/
6 | [Oo]bj/
7 |
--------------------------------------------------------------------------------
/SharpDump/SharpDump.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpDump", "SharpDump\SharpDump.csproj", "{79C9BBA3-A0EA-431C-866C-77004802D8A0}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {79C9BBA3-A0EA-431C-866C-77004802D8A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {79C9BBA3-A0EA-431C-866C-77004802D8A0}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {79C9BBA3-A0EA-431C-866C-77004802D8A0}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {79C9BBA3-A0EA-431C-866C-77004802D8A0}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/SharpDump/SharpDump/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SharpDump")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("SharpDump")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("79c9bba3-a0ea-431c-866c-77004802d8a0")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/SharpRoast/.gitignore:
--------------------------------------------------------------------------------
1 | .vs
2 | *.user
3 | [Dd]ebug/
4 | [Rr]elease/
5 | [Bb]in/
6 | [Oo]bj/
7 |
--------------------------------------------------------------------------------
/SharpRoast/SharpRoast.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpRoast", "SharpRoast\SharpRoast.csproj", "{FD6BDF7A-FEF4-4B28-9027-5BF750F08048}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {FD6BDF7A-FEF4-4B28-9027-5BF750F08048}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {FD6BDF7A-FEF4-4B28-9027-5BF750F08048}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {FD6BDF7A-FEF4-4B28-9027-5BF750F08048}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {FD6BDF7A-FEF4-4B28-9027-5BF750F08048}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/SharpRoast/SharpRoast/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SharpRoast")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("SharpRoast")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("fd6bdf7a-fef4-4b28-9027-5bf750f08048")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/SharpSploit/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright 2018, Ryan Cobb (@cobbr_io)
2 |
3 | Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
4 |
5 | 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
6 |
7 | 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
8 |
9 | 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
10 |
11 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit.Tests/SharpSploit.Tests.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 15
4 | VisualStudioVersion = 15.0.27130.2010
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpSploit.Tests", "SharpSploit.Tests\SharpSploit.Tests.csproj", "{7760248F-9247-4206-BE42-A6952AA46DA2}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {7760248F-9247-4206-BE42-A6952AA46DA2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {7760248F-9247-4206-BE42-A6952AA46DA2}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {7760248F-9247-4206-BE42-A6952AA46DA2}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {7760248F-9247-4206-BE42-A6952AA46DA2}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {455193E0-615E-4004-8715-30FAAE74E430}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit.Tests/SharpSploit.Tests/LateralMovement/DCOMTests.cs:
--------------------------------------------------------------------------------
1 | // Author: Ryan Cobb (@cobbr_io)
2 | // Project: SharpSploit (https://github.com/cobbr/SharpSploit)
3 | // License: BSD 3-Clause
4 |
5 | using Microsoft.VisualStudio.TestTools.UnitTesting;
6 |
7 | using SharpSploit.LateralMovement;
8 |
9 | namespace SharpSploit.Tests.LateralMovement
10 | {
11 | [TestClass]
12 | public class DCOMTests
13 | {
14 | [TestMethod]
15 | public void TestDCOMExecute()
16 | {
17 | Assert.IsTrue(DCOM.DCOMExecute("localhost", "calc.exe", "", "C:\\WINDOWS\\System32\\", DCOM.DCOMMethod.MMC20_Application));
18 | Assert.IsTrue(System.Diagnostics.Process.GetProcessesByName("Calculator").Length >= 1);
19 | Assert.IsTrue(DCOM.DCOMExecute("localhost", "calc.exe", "", "C:\\WINDOWS\\System32\\", DCOM.DCOMMethod.ShellBrowserWindow));
20 | Assert.IsTrue(System.Diagnostics.Process.GetProcessesByName("Calculator").Length >= 2);
21 | Assert.IsTrue(DCOM.DCOMExecute("localhost", "calc.exe", "", "C:\\WINDOWS\\System32\\", DCOM.DCOMMethod.ShellWindows));
22 | Assert.IsTrue(System.Diagnostics.Process.GetProcessesByName("Calculator").Length >= 3);
23 | Assert.IsTrue(DCOM.DCOMExecute("localhost", "calc.exe", "", "C:\\WINDOWS\\System32\\", DCOM.DCOMMethod.ExcelDDE));
24 | Assert.IsTrue(System.Diagnostics.Process.GetProcessesByName("Calculator").Length >= 4);
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit.Tests/SharpSploit.Tests/LateralMovement/WMITests.cs:
--------------------------------------------------------------------------------
1 | // Author: Ryan Cobb (@cobbr_io)
2 | // Project: SharpSploit (https://github.com/cobbr/SharpSploit)
3 | // License: BSD 3-Clause
4 |
5 | using Microsoft.VisualStudio.TestTools.UnitTesting;
6 |
7 | using SharpSploit.LateralMovement;
8 |
9 | namespace SharpSploit.Tests.LateralMovement
10 | {
11 | [TestClass]
12 | public class WMITests
13 | {
14 | [TestMethod]
15 | public void TestWMIExecute()
16 | {
17 | Assert.IsTrue(WMI.WMIExecute("win16", "powershell.exe", "DEV-COBBR\\TestAdmin", "Password123!"));
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit.Tests/SharpSploit.Tests/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("SharpSploit.Framework.Tests")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("SharpSploit.Framework.Tests")]
10 | [assembly: AssemblyCopyright("Copyright © 2018")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 |
14 | [assembly: ComVisible(false)]
15 |
16 | [assembly: Guid("7760248f-9247-4206-be42-a6952aa46da2")]
17 |
18 | // [assembly: AssemblyVersion("1.0.*")]
19 | [assembly: AssemblyVersion("1.0.0.0")]
20 | [assembly: AssemblyFileVersion("1.0.0.0")]
21 |
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit.Tests/SharpSploit.Tests/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net35/System.DirectoryServices.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net35/System.DirectoryServices.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net35/System.IdentityModel.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net35/System.IdentityModel.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net35/System.Management.Automation.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net35/System.Management.Automation.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net35/System.Management.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net35/System.Management.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net35/mscorlib.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net35/mscorlib.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net40/System.DirectoryServices.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net40/System.DirectoryServices.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net40/System.IdentityModel.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net40/System.IdentityModel.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net40/System.Management.Automation.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net40/System.Management.Automation.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net40/System.Management.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net40/System.Management.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/References/net40/mscorlib.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/References/net40/mscorlib.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/Resources/powerkatz_x64.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/Resources/powerkatz_x64.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/Resources/powerkatz_x64.dll.comp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/Resources/powerkatz_x64.dll.comp
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/Resources/powerkatz_x86.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/Resources/powerkatz_x86.dll
--------------------------------------------------------------------------------
/SharpSploit/SharpSploit/Resources/powerkatz_x86.dll.comp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploit/SharpSploit/Resources/powerkatz_x86.dll.comp
--------------------------------------------------------------------------------
/SharpSploitConsole/CompiledBinaries/SharpSploitConsole_x64.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploitConsole/CompiledBinaries/SharpSploitConsole_x64.exe
--------------------------------------------------------------------------------
/SharpSploitConsole/CompiledBinaries/SharpSploitConsole_x86.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploitConsole/CompiledBinaries/SharpSploitConsole_x86.exe
--------------------------------------------------------------------------------
/SharpSploitConsole/SharpSploitConsole/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/SharpSploitConsole/SharpSploitConsole/FodyWeavers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/SharpSploitConsole/SharpSploitConsole/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SharpSploitConsole")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("SharpSploitConsole")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("3787435b-8352-4bd8-a1c6-e5a1b73921f4")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/SharpSploitConsole/SharpSploitConsole/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/SharpSploitConsole/sharpsploitimg1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploitConsole/sharpsploitimg1.PNG
--------------------------------------------------------------------------------
/SharpSploitConsole/sharpsploitimg2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSploitConsole/sharpsploitimg2.PNG
--------------------------------------------------------------------------------
/SharpSql/.vs/SharpSql/v15/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/.vs/SharpSql/v15/.suo
--------------------------------------------------------------------------------
/SharpSql/.vs/SharpSql/v15/Server/sqlite3/db.lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/.vs/SharpSql/v15/Server/sqlite3/db.lock
--------------------------------------------------------------------------------
/SharpSql/.vs/SharpSql/v15/Server/sqlite3/storage.ide:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/.vs/SharpSql/v15/Server/sqlite3/storage.ide
--------------------------------------------------------------------------------
/SharpSql/SharpSql.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 15
4 | VisualStudioVersion = 15.0.27428.2037
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpSQL", "SharpSql\SharpSQL.csproj", "{B59C7741-D522-4A41-BF4D-9BADDDEBB84A}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {B59C7741-D522-4A41-BF4D-9BADDDEBB84A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {B59C7741-D522-4A41-BF4D-9BADDDEBB84A}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {B59C7741-D522-4A41-BF4D-9BADDDEBB84A}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {B59C7741-D522-4A41-BF4D-9BADDDEBB84A}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {53336769-5F0E-4DB5-BCE6-7A992A6B7A51}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/SharpSql/SharpSql/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/SharpSql/SharpSql/bin/Debug/SharpSql.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/SharpSql/bin/Debug/SharpSql.exe
--------------------------------------------------------------------------------
/SharpSql/SharpSql/bin/Debug/SharpSql.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/SharpSql/SharpSql/bin/Debug/SharpSql.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/SharpSql/bin/Debug/SharpSql.pdb
--------------------------------------------------------------------------------
/SharpSql/SharpSql/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/SharpSql/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/SharpSql/SharpSql/obj/Debug/SharpSql.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 2a36fb1d6ac36a935140e238b5537ed54c9e9eea
2 |
--------------------------------------------------------------------------------
/SharpSql/SharpSql/obj/Debug/SharpSql.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\pentest\source\repos\SharpSql\SharpSql\bin\Debug\SharpSql.exe.config
2 | C:\Users\pentest\source\repos\SharpSql\SharpSql\bin\Debug\SharpSql.exe
3 | C:\Users\pentest\source\repos\SharpSql\SharpSql\bin\Debug\SharpSql.pdb
4 | C:\Users\pentest\source\repos\SharpSql\SharpSql\obj\Debug\SharpSql.csprojResolveAssemblyReference.cache
5 | C:\Users\pentest\source\repos\SharpSql\SharpSql\obj\Debug\SharpSql.csproj.CoreCompileInputs.cache
6 | C:\Users\pentest\source\repos\SharpSql\SharpSql\obj\Debug\SharpSql.exe
7 | C:\Users\pentest\source\repos\SharpSql\SharpSql\obj\Debug\SharpSql.pdb
8 |
--------------------------------------------------------------------------------
/SharpSql/SharpSql/obj/Debug/SharpSql.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/SharpSql/obj/Debug/SharpSql.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/SharpSql/SharpSql/obj/Debug/SharpSql.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/SharpSql/obj/Debug/SharpSql.exe
--------------------------------------------------------------------------------
/SharpSql/SharpSql/obj/Debug/SharpSql.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/SharpSql/obj/Debug/SharpSql.pdb
--------------------------------------------------------------------------------
/SharpSql/SharpSql/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/SharpSql/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/SharpSql/SharpSql/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/SharpSql/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/SharpSql/SharpSql/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpSql/SharpSql/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/SharpUp/.gitignore:
--------------------------------------------------------------------------------
1 | .vs
2 | *.user
3 | [Dd]ebug/
4 | [Rr]elease/
5 | [Bb]in/
6 | [Oo]bj/
7 |
--------------------------------------------------------------------------------
/SharpUp/SharpUp.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpUp", "SharpUp\SharpUp.csproj", "{FDD654F5-5C54-4D93-BF8E-FAF11B00E3E9}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {FDD654F5-5C54-4D93-BF8E-FAF11B00E3E9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {FDD654F5-5C54-4D93-BF8E-FAF11B00E3E9}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {FDD654F5-5C54-4D93-BF8E-FAF11B00E3E9}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {FDD654F5-5C54-4D93-BF8E-FAF11B00E3E9}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/SharpUp/SharpUp/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SharpUp")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("SharpUp")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("fdd654f5-5c54-4d93-bf8e-faf11b00e3e9")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/SharpView/Compiled/SharpView.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lexus89/SharpPack/a85b05d62fb1c6867061c5de3f8a22532e7bae17/SharpView/Compiled/SharpView.exe
--------------------------------------------------------------------------------
/SharpView/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 Tevora-Threat
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/SharpView/SharpView.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 15
4 | VisualStudioVersion = 15.0.27703.2026
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpView", "SharpView\SharpView.csproj", "{22A156EA-2623-45C7-8E50-E864D9FC44D3}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {22A156EA-2623-45C7-8E50-E864D9FC44D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {22A156EA-2623-45C7-8E50-E864D9FC44D3}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {22A156EA-2623-45C7-8E50-E864D9FC44D3}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {22A156EA-2623-45C7-8E50-E864D9FC44D3}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {C89051C4-3526-4925-9CC3-9C7E9C2DD633}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/SharpView/SharpView/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Add_DomainGroupMember.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Add_DomainGroupMember
13 | {
14 | public string Identity { get; set; }
15 | public string GroupName { get { return Identity; } set { Identity = value; } }
16 | public string GroupIdentity { get { return Identity; } set { Identity = value; } }
17 |
18 | public string[] Members { get; set; }
19 | public string[] MemberIdentity { get { return Members; } set { Members = value; } }
20 | public string[] Member { get { return Members; } set { Members = value; } }
21 | public string[] DistinguishedName { get { return Members; } set { Members = value; } }
22 |
23 | public string Domain { get; set; }
24 |
25 | public NetworkCredential Credential { get; set; }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Add_RemoteConnection.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 | using SharpView.Utils;
10 |
11 | namespace SharpView.Arguments
12 | {
13 | public class Args_Add_RemoteConnection
14 | {
15 | public string[] ComputerName { get; set; }
16 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
18 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
19 |
20 | private string[] _path;
21 | public string[] Path
22 | {
23 | get
24 | {
25 | return _path;
26 | }
27 | set
28 | {
29 | if (value != null)
30 | {
31 | foreach (var item in value)
32 | {
33 | if (!item.IsRegexMatch(@"\\\\.*\\.*"))
34 | throw new ArgumentException(@"Should be '\\\\.*\\.*' as pattern", nameof(Path));
35 | }
36 | }
37 | _path = value;
38 | }
39 | }
40 |
41 | public NetworkCredential Credential { get; set; }
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_ConvertFrom_SID.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Net;
6 | using System.Text;
7 | using System.Threading.Tasks;
8 |
9 | namespace SharpView.Arguments
10 | {
11 | public class Args_ConvertFrom_SID
12 | {
13 | public string[] ObjectSID { get; set; }
14 | public string[] SID { get { return ObjectSID; } set { ObjectSID = value; } }
15 |
16 | public string Domain { get; set; }
17 |
18 | public string Server { get; set; }
19 | public string DomainController { get { return Server; } set { Server = value; } }
20 |
21 | public NetworkCredential Credential { get; set; }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_ConvertFrom_UACValue.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_ConvertFrom_UACValue
13 | {
14 | public int Value { get; set; }
15 | public int UAC { get { return Value; } set { Value = value; } }
16 | public int useraccountcontrol { get { return Value; } set { Value = value; } }
17 |
18 | public bool ShowAll { get; set; }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_ConvertTo_SID.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_ConvertTo_SID
13 | {
14 | public string[] ObjectName { get; set; }
15 | public string[] Name { get { return ObjectName; } set { ObjectName = value; } }
16 | public string[] Identity { get { return ObjectName; } set { ObjectName = value; } }
17 |
18 | public string Domain { get; set; }
19 |
20 | public string Server { get; set; }
21 | public string DomainController { get { return Server; } set { Server = value; } }
22 |
23 | public NetworkCredential Credential { get; set; }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Convert_ADName.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Net;
6 | using System.Text;
7 | using System.Threading.Tasks;
8 |
9 | namespace SharpView.Arguments
10 | {
11 | public class Args_Convert_ADName
12 | {
13 | public string[] Identity { get; set; }
14 | public string[] Name { get { return Identity; } set { Identity = value; } }
15 | public string[] ObjectName { get { return Identity; } set { Identity = value; } }
16 |
17 | public ADSNameType? OutputType { get; set; }
18 |
19 | public string Domain { get; set; }
20 |
21 | public string Server { get; set; }
22 | public string DomainController { get { return Server; } set { Server = value; } }
23 |
24 | public NetworkCredential Credential { get; set; }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Export_PowerViewCSV.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Export_PowerViewCSV
13 | {
14 | public object[] InputObject { get; set; }
15 |
16 | public string Path { get; set; }
17 |
18 | public Char Delimiter { get; set; } = ',';
19 |
20 | public bool Append { get; set; }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Find_InterestingFile.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Find_InterestingFile
13 | {
14 | public string[] Path { get; set; } = { @".\" };
15 |
16 | public string[] Include { get; set; } = { @"*password*", @"*sensitive*", @"*admin*", @"*login*", @"*secret*", @"unattend*.xml", @"*.vmdk", @"*creds*", @"*credential*", @"*.config" };
17 | public string[] SearchTerms { get { return Include; } set { Include = value; } }
18 | public string[] Terms { get { return Include; } set { Include = value; } }
19 |
20 | public DateTime? LastAccessTime { get; set; }
21 |
22 | public DateTime? LastWriteTime { get; set; }
23 |
24 | public DateTime? CreationTime { get; set; }
25 |
26 | public bool OfficeDocs { get; set; }
27 |
28 | public bool FreshEXEs { get; set; }
29 |
30 | public bool ExcludeFolders { get; set; }
31 |
32 | public bool ExcludeHidden { get; set; }
33 |
34 | public bool CheckWriteAccess { get; set; }
35 |
36 | public NetworkCredential Credential { get; set; }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_Domain.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Net;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace SharpView.Arguments
9 | {
10 | public class Args_Get_Domain
11 | {
12 | public string Domain { get; set; }
13 | public NetworkCredential Credential { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_DomainController.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_DomainController
13 | {
14 | public string Domain { get; set; }
15 |
16 | public string Server { get; set; }
17 | public string DomainController { get { return Server; } set { Server = value; } }
18 |
19 | public bool LDAP { get; set; }
20 |
21 | public NetworkCredential Credential { get; set; }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_DomainGUIDMap.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_DomainGUIDMap
13 | {
14 | public string Domain { get; set; }
15 |
16 | public string LDAPFilter { get; set; }
17 | public string Filter { get { return LDAPFilter; } set { LDAPFilter = value; } }
18 |
19 | public string Server { get; set; }
20 | public string DomainController { get { return Server; } set { Server = value; } }
21 |
22 | private int _ResultPageSize = 200;
23 | public int ResultPageSize
24 | {
25 | get { return _ResultPageSize; }
26 | set
27 | {
28 | if (value < 1 || value > 10000) throw new ArgumentOutOfRangeException("ResultPageSize");
29 | _ResultPageSize = value;
30 | }
31 | }
32 |
33 | private int? _ServerTimeLimit;
34 | public int? ServerTimeLimit
35 | {
36 | get { return _ServerTimeLimit; }
37 | set
38 | {
39 | if (value < 1 || value > 10000) throw new ArgumentOutOfRangeException("ServerTimeLimit");
40 | _ServerTimeLimit = value;
41 | }
42 | }
43 |
44 | public NetworkCredential Credential { get; set; }
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_DomainPolicyData.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_DomainPolicyData
13 | {
14 | public string Policy { get; set; } = @"Domain";
15 | public string Source { get { return Policy; } set { Policy = value; } }
16 | public string Name { get { return Policy; } set { Policy = value; } }
17 |
18 | public string Domain { get; set; }
19 |
20 | public string Server { get; set; }
21 | public string DomainController { get { return Server; } set { Server = value; } }
22 |
23 | private int? _ServerTimeLimit;
24 | public int? ServerTimeLimit
25 | {
26 | get { return _ServerTimeLimit; }
27 | set
28 | {
29 | if (value < 1 || value > 10000) throw new ArgumentOutOfRangeException("ServerTimeLimit");
30 | _ServerTimeLimit = value;
31 | }
32 | }
33 |
34 | public NetworkCredential Credential { get; set; }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_DomainSID.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_DomainSID
13 | {
14 | public string Domain { get; set; }
15 |
16 | public string Server { get; set; }
17 | public string DomainController { get { return Server; } set { Server = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_DomainSPNTicket.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using SharpView.Returns;
3 | using System;
4 | using System.Collections.Generic;
5 | using System.DirectoryServices;
6 | using System.Linq;
7 | using System.Net;
8 | using System.Text;
9 | using System.Threading.Tasks;
10 |
11 | namespace SharpView.Arguments
12 | {
13 | public class Args_Get_DomainSPNTicket
14 | {
15 | public string[] SPN { get; set; }
16 | public string[] Name { get { return SPN; } set { SPN = value; } }
17 | public string[] ServicePrincipalName { get { return SPN; } set { SPN = value; } }
18 |
19 | public LDAPProperty User { get; set; }
20 |
21 | public SPNTicketFormat OutputFormat { get; set; }
22 |
23 | public NetworkCredential Credential { get; set; }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_DomainUserEvent.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_DomainUserEvent
13 | {
14 | public string[] ComputerName { get; set; } = new[] { Environment.GetEnvironmentVariable("COMPUTERNAME") };
15 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public DateTime StartTime { get; set; } = DateTime.Now.AddDays(-1);
20 |
21 | public DateTime EndTime { get; set; } = DateTime.Now;
22 |
23 | private int _MaxEvents = 5000;
24 | public int MaxEvents
25 | {
26 | get { return _MaxEvents; }
27 | set
28 | {
29 | if (value < 1 || value > 1000000) throw new ArgumentOutOfRangeException(nameof(MaxEvents));
30 | _MaxEvents = value;
31 | }
32 | }
33 |
34 | public NetworkCredential Credential { get; set; }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_Forest.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_Forest
13 | {
14 | public string Forest { get; set; }
15 | public string Name { get { return Forest; } set { Forest = value; } }
16 |
17 | public NetworkCredential Credential { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_ForestDomain.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_ForestDomain
13 | {
14 | public string Forest { get; set; }
15 |
16 | public NetworkCredential Credential { get; set; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_ForestGlobalCatalog.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_ForestGlobalCatalog
13 | {
14 | public string Forest { get; set; }
15 |
16 | public NetworkCredential Credential { get; set; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_GptTmpl.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_GptTmpl
13 | {
14 | public string GptTmplPath { get; set; }
15 | public string gpcfilesyspath { get { return GptTmplPath; } set { GptTmplPath = value; } }
16 | public string Path { get { return GptTmplPath; } set { GptTmplPath = value; } }
17 |
18 | public NetworkCredential Credential { get; set; }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_GroupsXML.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_GroupsXML
13 | {
14 | public string GroupsXMLPath { get; set; }
15 | public string Path { get { return GroupsXMLPath; } set { GroupsXMLPath = value; } }
16 |
17 | public NetworkCredential Credential { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_IniContent.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 | using SharpView.Utils;
10 |
11 | namespace SharpView.Arguments
12 | {
13 | public class Args_Get_IniContent
14 | {
15 | public string[] Path { get; set; }
16 | public string[] FullName { get { return Path; } set { Path = value; } }
17 | public string[] Name { get { return Path; } set { Path = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_NetComputerSiteName.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_NetComputerSiteName
13 | {
14 | public string[] ComputerName { get; set; } = new[] { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_NetLocalGroup.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_NetLocalGroup
13 | {
14 | public string[] ComputerName { get; set; } = { Environment.GetEnvironmentVariable("COMPUTERNAME") };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public MethodType Method { get; set; } = MethodType.API;
20 | public MethodType CollectionMethod { get { return Method; } set { Method = value; } }
21 |
22 | public NetworkCredential Credential { get; set; }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_NetLocalGroupMember.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_NetLocalGroupMember
13 | {
14 | public string[] ComputerName { get; set; } = { Environment.GetEnvironmentVariable("COMPUTERNAME") };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public string GroupName { get; set; } = "Administrators";
20 |
21 | public MethodType Method { get; set; } = MethodType.API;
22 | public MethodType CollectionMethod { get { return Method; } set { Method = value; } }
23 |
24 | public NetworkCredential Credential { get; set; }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_NetLoggedon.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_NetLoggedon
13 | {
14 | public string[] ComputerName { get; set; } = { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_NetRDPSession.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_NetRDPSession
13 | {
14 | public string[] ComputerName { get; set; } = new[] { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_NetSession.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_NetSession
13 | {
14 | public string[] ComputerName { get; set; } = { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_NetShare.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_NetShare
13 | {
14 | public string[] ComputerName { get; set; } = { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_PathAcl.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_PathAcl
13 | {
14 | public string[] Path { get; set; }
15 | public string[] FullName { get { return Path; } set { Path = value; } }
16 |
17 | public NetworkCredential Credential { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_PrincipalContext.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_PrincipalContext
13 | {
14 | public string Identity { get; set; }
15 | public string GroupName { get { return Identity; } set { Identity = value; } }
16 | public string GroupIdentity { get { return Identity; } set { Identity = value; } }
17 |
18 | public string Domain { get; set; }
19 |
20 | public NetworkCredential Credential { get; set; }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_RegLoggedOn.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_RegLoggedOn
13 | {
14 | public string[] ComputerName { get; set; } = new[] { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_WMIProcess.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_WMIProcess
13 | {
14 | public string[] ComputerName { get; set; } = new[] { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_WMIRegCachedRDPConnection.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_WMIRegCachedRDPConnection
13 | {
14 | public string[] ComputerName { get; set; } = new[] { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_WMIRegLastLoggedOn.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_WMIRegLastLoggedOn
13 | {
14 | public string[] ComputerName { get; set; } = new[] { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_WMIRegMountedDrive.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_WMIRegMountedDrive
13 | {
14 | public string[] ComputerName { get; set; } = new[] { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Get_WMIRegProxy.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Get_WMIRegProxy
13 | {
14 | public string[] ComputerName { get; set; } = new[] { Environment.GetEnvironmentVariable("COMPUTERNAME") };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Invoke_UserImpersonation.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Invoke_UserImpersonation
13 | {
14 | public NetworkCredential Credential { get; set; }
15 |
16 | public IntPtr TokenHandle { get; set; }
17 |
18 | public bool Quiet { get; set; }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_New_DomainGroup.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_New_DomainGroup
13 | {
14 | public string SamAccountName { get; set; }
15 |
16 | public string Name { get; set; }
17 |
18 | public string DisplayName { get; set; }
19 |
20 | public string Description { get; set; }
21 |
22 | public string Domain { get; set; }
23 |
24 | public NetworkCredential Credential { get; set; }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_New_DomainUser.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_New_DomainUser
13 | {
14 | public string SamAccountName { get; set; }
15 |
16 | public System.Security.SecureString AccountPassword { get; set; }
17 | public System.Security.SecureString Password { get { return AccountPassword; } set { AccountPassword = value; } }
18 |
19 | public string Name { get; set; }
20 |
21 | public string DisplayName { get; set; }
22 |
23 | public string Description { get; set; }
24 |
25 | public string Domain { get; set; }
26 |
27 | public NetworkCredential Credential { get; set; }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Remove_RemoteConnection.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 | using SharpView.Utils;
10 |
11 | namespace SharpView.Arguments
12 | {
13 | public class Args_Remove_RemoteConnection
14 | {
15 | public string[] ComputerName { get; set; }
16 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
18 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
19 |
20 | public string[] _path;
21 | public string[] Path
22 | {
23 | get
24 | {
25 | return _path;
26 | }
27 | set
28 | {
29 | if (value != null)
30 | {
31 | foreach (var item in value)
32 | {
33 | if (!item.IsRegexMatch(@"\\\\.*\\.*"))
34 | throw new ArgumentException(@"Should be '\\\\.*\\.*' as pattern", nameof(Path));
35 | }
36 | }
37 | _path = value;
38 | }
39 | }
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Resolve_IPAddress.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Resolve_IPAddress
13 | {
14 | public string[] ComputerName { get; set; } = new[] { Environment.GetEnvironmentVariable("COMPUTERNAME") };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Set_DomainUserPassword.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Set_DomainUserPassword
13 | {
14 | public string Identity { get; set; }
15 | public string UserName { get { return Identity; } set { Identity = value; } }
16 | public string UserIdentity { get { return Identity; } set { Identity = value; } }
17 | public string User { get { return Identity; } set { Identity = value; } }
18 |
19 | public System.Security.SecureString AccountPassword { get; set; }
20 | public System.Security.SecureString Password { get { return AccountPassword; } set { AccountPassword = value; } }
21 |
22 | public string Domain { get; set; }
23 |
24 | public NetworkCredential Credential { get; set; }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Test.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace SharpView.Arguments
9 | {
10 |
11 | public class Args_Test
12 | {
13 | public bool TestBool { get; set; }
14 | public string TestString { get; set; }
15 | public string[] TestStringArray { get; set; }
16 | public GroupType TestIntEnum { get; set; }
17 | public Rights TestEnum { get; set; }
18 | public Rights? TestPointEnum { get; set; }
19 | public System.Net.NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Arguments/Args_Test_AdminAccess.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.DirectoryServices;
5 | using System.Linq;
6 | using System.Net;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Arguments
11 | {
12 | public class Args_Test_AdminAccess
13 | {
14 | public string[] ComputerName { get; set; } = new[] { "localhost" };
15 | public string[] HostName { get { return ComputerName; } set { ComputerName = value; } }
16 | public string[] dnshostname { get { return ComputerName; } set { ComputerName = value; } }
17 | public string[] name { get { return ComputerName; } set { ComputerName = value; } }
18 |
19 | public NetworkCredential Credential { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/ClassType.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum ClassType
10 | {
11 | User,
12 | Group,
13 | Computer
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/DnsRecordType.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum DnsRecordType
10 | {
11 | A,
12 | NS,
13 | MD,
14 | MF,
15 | CNAME,
16 | SOA,
17 | MB,
18 | MG,
19 | MR,
20 | NULL,
21 | WKS,
22 | PTR,
23 | HINFO,
24 | MINFO,
25 | MX,
26 | TXT,
27 | RP,
28 | AFSDB,
29 | X25,
30 | ISDN,
31 | RT,
32 | NSAP,
33 | NSAPPTR,
34 | SIG,
35 | KEY,
36 | PX,
37 | GPOS,
38 | AAAA,
39 | LOC,
40 | NXT,
41 | EID,
42 | NIMLOC,
43 | SRV,
44 | ATMA,
45 | NAPTR,
46 | KX,
47 | CERT,
48 | A6,
49 | DNAME,
50 | SINK,
51 | OPT,
52 | APL,
53 | DS,
54 | SSHFP,
55 | IPSECKEY,
56 | RRSIG,
57 | NSEC,
58 | DNSKEY,
59 | DHCID,
60 | NSEC3,
61 | NSEC3PARAM,
62 | HIP,
63 | SPF,
64 | UINFO,
65 | UID,
66 | GID,
67 | UNSPEC,
68 | ANY,
69 | TA,
70 | DLV,
71 | UNKNOWN
72 | }
73 | }
74 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/GroupProperty.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum GroupProperty
10 | {
11 | Security,
12 | Distribution,
13 | CreatedBySystem,
14 | NotCreatedBySystem
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/GroupScope.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum GroupScope
10 | {
11 | DomainLocal,
12 | NotDomainLocal,
13 | Global,
14 | NotGlobal,
15 | Universal,
16 | NotUniversal
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/GroupType.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | [Flags]
10 | public enum GroupType : Int32
11 | {
12 | CREATED_BY_SYSTEM = 0x00000001,
13 | GLOBAL_SCOPE = ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_GLOBAL_GROUP,
14 | DOMAIN_LOCAL_SCOPE = ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP,
15 | UNIVERSAL_SCOPE = ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_UNIVERSAL_GROUP,
16 | APP_BASIC = 0x00000010,
17 | APP_QUERY = 0x00000020,
18 | SECURITY = ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_SECURITY_ENABLED
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/LocalGroupType.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel;
4 | using System.Linq;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace SharpView.Enums
9 | {
10 | public enum LocalGroupType
11 | {
12 | [Description("Administrators")]
13 | Administrators,
14 | [Description("S-1-5-32-544")]
15 | S_1_5_32_544,
16 | [Description("RDP")]
17 | RDP,
18 | [Description("Remote Desktop Users")]
19 | RemoteDesktopUsers,
20 | [Description("S-1-5-32-555")]
21 | S_1_5_32_555
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/ManagerType.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum ManagerType
10 | {
11 | Group,
12 | User
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/MethodType.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum MethodType
10 | {
11 | API,
12 | WinNT
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/Rights.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum Rights
10 | {
11 | All,
12 | ResetPassword,
13 | WriteMembers,
14 | DCSync
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/SPNTicketFormat.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum SPNTicketFormat
10 | {
11 | John,
12 | Hashcat
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/SamAccountType.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum SamAccountType : Int32
10 | {
11 | DOMAIN_OBJECT = 0x00000000,
12 | GROUP_OBJECT = 0x10000000,
13 | NON_SECURITY_GROUP_OBJECT = 0x10000001,
14 | ALIAS_OBJECT = 0x20000000,
15 | NON_SECURITY_ALIAS_OBJECT = 0x20000001,
16 | USER_OBJECT = 0x30000000,
17 | MACHINE_ACCOUNT = 0x30000001,
18 | TRUST_ACCOUNT = 0x30000002,
19 | APP_BASIC_GROUP = 0x40000000,
20 | APP_QUERY_GROUP = 0x40000001,
21 | ACCOUNT_TYPE_MAX = 0x7fffffff
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/StealthSource.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum StealthSource
10 | {
11 | DFS,
12 | DC,
13 | File,
14 | All
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/TrustAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | [Flags]
10 | public enum TrustAttribute : UInt32
11 | {
12 | NON_TRANSITIVE = 0x00000001,
13 | UPLEVEL_ONLY = 0x00000002,
14 | FILTER_SIDS = 0x00000004,
15 | FOREST_TRANSITIVE = 0x00000008,
16 | CROSS_ORGANIZATION= 0x00000010,
17 | WITHIN_FOREST= 0x00000020,
18 | TREAT_AS_EXTERNAL= 0x00000040,
19 | TRUST_USES_RC4_ENCRYPTION= 0x00000080,
20 | TRUST_USES_AES_KEYS= 0x00000100,
21 | CROSS_ORGANIZATION_NO_TGT_DELEGATION = 0x00000200,
22 | PIM_TRUST= 0x00000400
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Enums/Version.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Enums
8 | {
9 | public enum Version
10 | {
11 | All,
12 | V1,
13 | V2
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SharpView/SharpView/FodyWeavers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Interfaces/IDomainTrust.cs:
--------------------------------------------------------------------------------
1 | namespace SharpView.Interfaces
2 | {
3 | public interface IDomainTrust
4 | {
5 | string SourceName { get; set; }
6 | string TargetName { get; set; }
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Interfaces/IWinEvent.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace SharpView.Interfaces
4 | {
5 | public interface IWinEvent
6 | {
7 | string ComputerName { get; set; }
8 |
9 | DateTime? TimeCreated { get; set; }
10 |
11 | int EventId { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ACL.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Security.AccessControl;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class ACL : ResolvedSID
11 | {
12 | public string ObjectDN { get; set; }
13 |
14 | public GenericAce Ace { get; set; }
15 |
16 | public string ObjectSID { get; set; }
17 |
18 | public System.DirectoryServices.ActiveDirectoryRights ActiveDirectoryRights { get; set; }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/AdminAccess.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class AdminAccess
10 | {
11 | public string ComputerName { get; set; }
12 |
13 | public bool IsAdmin { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ApiDomainTrust.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Interfaces;
2 | using SharpView.Utils;
3 | using System;
4 |
5 | namespace SharpView.Returns
6 | {
7 | public class ApiDomainTrust : IDomainTrust
8 | {
9 | public string SourceName { get; set; }
10 |
11 | public string TargetName { get; set; }
12 |
13 | public string TargetNetbiosName { get; set; }
14 |
15 | public uint Flags { get; set; }
16 |
17 | public uint ParentIndex { get; set; }
18 |
19 | public NativeMethods.DS_DOMAIN_TRUST_TYPE TrustType { get; set; }
20 |
21 | public uint TrustAttributes { get; set; }
22 |
23 | public string TargetSid { get; set; }
24 |
25 | public Guid TargetGuid { get; set; }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/CachedRDPConnection.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class CachedRDPConnection
10 | {
11 | public string ComputerName { get; set; }
12 |
13 | public string UserName { get; set; }
14 |
15 | public string UserSID { get; set; }
16 |
17 | public string TargetServer { get; set; }
18 |
19 | public string UsernameHint { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ComputerIPAddress.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class ComputerIPAddress
10 | {
11 | public string ComputerName { get; set; }
12 |
13 | public string IPAddress { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ComputerSite.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class ComputerSite
10 | {
11 | public string ComputerName { get; set; }
12 | public string IPAddress { get; set; }
13 | public string SiteName { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/DFSShare.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Security.AccessControl;
5 | using System.Security.Principal;
6 | using System.Text;
7 | using System.Threading.Tasks;
8 |
9 | namespace SharpView.Returns
10 | {
11 | public class DFSShare
12 | {
13 | public string Name { get; set; }
14 |
15 | public string RemoteServerName { get; set; }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/DNSRecord.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Security.AccessControl;
6 | using System.Security.Principal;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Returns
11 | {
12 | public class DNSRecord
13 | {
14 | public DnsRecordType? RecordType { get; set; }
15 |
16 | public uint? UpdatedAtSerial { get; set; }
17 |
18 | public uint? TTL { get; set; }
19 |
20 | public uint? Age { get; set; }
21 |
22 | public object TimeStamp { get; set; } // DateTime or string ("[static]")
23 |
24 | public string Data { get; set; }
25 |
26 | public string ZoneName { get; set; }
27 |
28 | public string name { get; set; }
29 |
30 | public string distinguishedname { get; set; }
31 |
32 | public object dnsrecord { get; set; }
33 |
34 | public DateTime? whencreated { get; set; }
35 |
36 | public DateTime? whenchanged { get; set; }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/DomainPolicyData.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class DomainPolicyData : GptTmpl
10 | {
11 | public string GPOName { get; set; }
12 |
13 | public string GPODisplayName { get; set; }
14 |
15 | public DomainPolicyData()
16 | {
17 |
18 | }
19 |
20 | public DomainPolicyData(Dictionary> obj) : base(obj)
21 | {
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ExplicitCredentialLogonEvent.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Interfaces;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class ExplicitCredentialLogonEvent : IWinEvent
11 | {
12 | public string ComputerName { get; set; }
13 |
14 | public DateTime? TimeCreated { get; set; }
15 |
16 | public int EventId { get; set; }
17 |
18 | public string SubjectDomainName { get; set; }
19 |
20 | public string SubjectLogonId { get; set; }
21 |
22 | public string SubjectUserName { get; set; }
23 |
24 | public string SubjectUserSid { get; set; }
25 |
26 | public string TargetDomainName { get; set; }
27 |
28 | public string TargetLogonId { get; set; }
29 |
30 | public string TargetLogonGuid { get; set; }
31 |
32 | public string TargetUserName { get; set; }
33 |
34 | public string TargetUserSid { get; set; }
35 |
36 | public string TargetServerName { get; set; }
37 |
38 | public string LogonGuid { get; set; }
39 |
40 | public string TargetInfo { get; set; }
41 |
42 | public string ProcessId { get; set; }
43 |
44 | public string ProcessName { get; set; }
45 |
46 | public string IpAddress { get; set; }
47 |
48 | public string IpPort { get; set; }
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/FileACL.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Security.AccessControl;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 | using static SharpView.Utils.NativeMethods;
8 |
9 | namespace SharpView.Returns
10 | {
11 | public class FileACL
12 | {
13 | public string Path { get; set; }
14 | public string FileSystemRights { get; set; }
15 | public IEnumerable IdentityReference { get; set; }
16 | public string IdentitySID { get; set; }
17 | public AccessControlType AccessControlType { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/Filter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class Filter
10 | {
11 | public string Type { get; set; }
12 |
13 | public string Value { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ForeignGroupMember.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Security.AccessControl;
6 | using System.Security.Principal;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Returns
11 | {
12 | public class ForeignGroupMember
13 | {
14 | public string GroupDomain { get; set; }
15 |
16 | public string GroupName { get; set; }
17 |
18 | public string GroupDistinguishedName { get; set; }
19 |
20 | public string MemberDomain { get; set; }
21 |
22 | public string MemberName { get; set; }
23 |
24 | public string MemberDistinguishedName { get; set; }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ForeignUser.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Security.AccessControl;
6 | using System.Security.Principal;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Returns
11 | {
12 | public class ForeignUser
13 | {
14 | public string UserDomain { get; set; }
15 |
16 | public string UserName { get; set; }
17 |
18 | public string UserDistinguishedName { get; set; }
19 |
20 | public string GroupDomain { get; set; }
21 |
22 | public string GroupName { get; set; }
23 |
24 | public string GroupDistinguishedName { get; set; }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ForestEx.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class ForestEx
10 | {
11 | public System.DirectoryServices.ActiveDirectory.Forest Forest { get; set; }
12 | public string RootDomainSid { get; set; }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/FoundFile.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class FoundFile
10 | {
11 | public string Path { get; set; }
12 | public string Owner { get; set; }
13 | public DateTime LastAccessTime { get; set; }
14 | public DateTime LastWriteTime { get; set; }
15 | public DateTime CreationTime { get; set; }
16 | public long Length { get; set; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/GPO.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class GPO : LDAPProperty
10 | {
11 | public string gpcfilesyspath { get; set; }
12 |
13 | public GPO()
14 | {
15 |
16 | }
17 |
18 | public GPO(LDAPProperty property)
19 | :base(property)
20 | {
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/GPOComputerLocalGroupMember.cs:
--------------------------------------------------------------------------------
1 |
2 |
3 | using SharpView.Enums;
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Linq;
7 | using System.Security.AccessControl;
8 | using System.Security.Principal;
9 | using System.Text;
10 | using System.Threading.Tasks;
11 |
12 | namespace SharpView.Returns
13 | {
14 | public class GPOComputerLocalGroupMember
15 | {
16 | public IEnumerable ComputerName { get; set; }
17 |
18 | public string ObjectName { get; set; }
19 |
20 | public string ObjectDN { get; set; }
21 |
22 | public string[] ObjectSID { get; set; }
23 |
24 | public bool IsGroup { get; set; }
25 |
26 | public string GPODisplayName { get; set; }
27 |
28 | public string GPOGuid { get; set; }
29 |
30 | public string GPOPath { get; set; }
31 |
32 | public string GPOType { get; set; }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/GPOGroup.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Security.AccessControl;
6 | using System.Security.Principal;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Returns
11 | {
12 | public class GPOGroup
13 | {
14 | public string GPODisplayName { get; set; }
15 |
16 | public string GPOName { get; set; }
17 |
18 | public string GPOPath { get; set; }
19 |
20 | public string GPOType { get; set; }
21 |
22 | public IEnumerable Filters { get; set; }
23 |
24 | public string GroupName { get; set; }
25 |
26 | public string GroupSID { get; set; }
27 |
28 | public IEnumerable GroupMemberOf { get; set; }
29 |
30 | public IEnumerable GroupMembers { get; set; }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/GPOLocalGroupMapping.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Security.AccessControl;
6 | using System.Security.Principal;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Returns
11 | {
12 | public class GPOLocalGroupMapping
13 | {
14 | public string GPODisplayName { get; set; }
15 |
16 | public string GPOName { get; set; }
17 |
18 | public string GPOPath { get; set; }
19 |
20 | public string GPOType { get; set; }
21 |
22 | public IEnumerable Filters { get; set; }
23 |
24 | public string GroupName { get; set; }
25 |
26 | public string GroupSID { get; set; }
27 |
28 | public IEnumerable GroupMemberOf { get; set; }
29 |
30 | public IEnumerable GroupMembers { get; set; }
31 |
32 | public string ObjectName { get; set; }
33 |
34 | public string ObjectDN { get; set; }
35 |
36 | public string[] ObjectSID { get; set; }
37 |
38 | public string Domain { get; set; }
39 |
40 | public bool IsGroup { get; set; }
41 |
42 | public string GPOGuid { get; set; }
43 |
44 | public string ContainerName { get; set; }
45 |
46 | public IEnumerable ComputerName { get; set; }
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/GptTmpl.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class GptTmpl : Dictionary>
10 | {
11 | public string Path { get; set; }
12 |
13 | public GptTmpl()
14 | {
15 |
16 | }
17 |
18 | public GptTmpl(Dictionary> obj)
19 | {
20 | foreach (var value in obj)
21 | {
22 | Add(value.Key, value.Value);
23 | }
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/GroupMember.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Security.AccessControl;
6 | using System.Security.Principal;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Returns
11 | {
12 | public class GroupMember
13 | {
14 | public string GroupDomain { get; set; }
15 |
16 | public string GroupName { get; set; }
17 |
18 | public string GroupDistinguishedName { get; set; }
19 |
20 | public string MemberDomain { get; set; }
21 |
22 | public string MemberName { get; set; }
23 |
24 | public string MemberDistinguishedName { get; set; }
25 |
26 | public string MemberObjectClass { get; set; }
27 |
28 | public string MemberSID { get; set; }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/GroupsXML.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class GroupsXML
10 | {
11 | public string GPOPath { get; set; }
12 |
13 | public IEnumerable Filters { get; set; }
14 |
15 | public string GroupName { get; set; }
16 |
17 | public string GroupSID { get; set; }
18 |
19 | public IEnumerable GroupMemberOf { get; set; }
20 |
21 | public IEnumerable GroupMembers { get; set; }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/LastLoggedOnUser.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class LastLoggedOnUser
10 | {
11 | public string ComputerName { get; set; }
12 |
13 | public string LastLoggedOn { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/LdapDomainTrust.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using SharpView.Interfaces;
3 | using System.DirectoryServices.ActiveDirectory;
4 |
5 | namespace SharpView.Returns
6 | {
7 | public class LdapDomainTrust : IDomainTrust
8 | {
9 | public string SourceName { get; set; }
10 |
11 | public string TargetName { get; set; }
12 |
13 | public TrustType TrustType { get; set; }
14 |
15 | public TrustDirection TrustDirection { get; set; }
16 |
17 | public TrustAttribute TrustAttributes { get; set; }
18 |
19 | public object WhenCreated { get; set; }
20 |
21 | public object WhenChanged { get; set; }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/LocalGroupAPI.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using static SharpView.Utils.NativeMethods;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class LocalGroupAPI
11 | {
12 | public string ComputerName { get; set; }
13 | public string GroupName { get; set; }
14 | public string Comment { get; set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/LocalGroupMemberAPI.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using static SharpView.Utils.NativeMethods;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class LocalGroupMemberAPI
11 | {
12 | public string ComputerName { get; set; }
13 | public string GroupName { get; set; }
14 | public string MemberName { get; set; }
15 | public string SID { get; set; }
16 | public bool IsGroup { get; set; }
17 | public string IsDomain { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/LocalGroupMemberWinNT.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using static SharpView.Utils.NativeMethods;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class LocalGroupMemberWinNT
11 | {
12 | public string ComputerName { get; set; }
13 | public string GroupName { get; set; }
14 | public string AccountName { get; set; }
15 | public string SID { get; set; }
16 | public bool IsGroup { get; set; }
17 | public bool IsDomain { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/LocalGroupWinNT.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using static SharpView.Utils.NativeMethods;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class LocalGroupWinNT
11 | {
12 | public string ComputerName { get; set; }
13 | public string GroupName { get; set; }
14 | public string SID { get; set; }
15 | public string Comment { get; set; }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/LoggedOnUserInfo.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using static SharpView.Utils.NativeMethods;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class LoggedOnUserInfo
11 | {
12 | public string UserName { get; set; }
13 | public string LogonDomain { get; set; }
14 | public string AuthDomains { get; set; }
15 | public string LogonServer { get; set; }
16 | public string ComputerName { get; set; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ManagedSecurityGroup.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Security.AccessControl;
6 | using System.Security.Principal;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace SharpView.Returns
11 | {
12 | public class ManagedSecurityGroup
13 | {
14 | public string GroupName { get; set; }
15 |
16 | public string GroupDistinguishedName { get; set; }
17 |
18 | public string ManagerName { get; set; }
19 |
20 | public string ManagerDistinguishedName { get; set; }
21 |
22 | public ManagerType? ManagerType { get; set; }
23 |
24 | public string ManagerCanWrite { get; set; }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/NetDomainTrust.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Interfaces;
2 | using System.DirectoryServices.ActiveDirectory;
3 |
4 | namespace SharpView.Returns
5 | {
6 | public class NetDomainTrust : IDomainTrust
7 | {
8 | public string SourceName { get; set; }
9 | public string TargetName { get; set; }
10 | public TrustDirection TrustDirection { get; set; }
11 | public TrustType TrustType { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/PrincipalContextEx.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using static SharpView.Utils.NativeMethods;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class PrincipalContextEx
11 | {
12 | public System.DirectoryServices.AccountManagement.PrincipalContext Context { get; set; }
13 |
14 | public string Identity { get; set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/PropertyOutlier.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class PropertyOutlier
10 | {
11 | public string SamAccountName { get; set; }
12 | public string Property { get; set; }
13 | public object Value { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ProxySettings.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class ProxySettings
10 | {
11 | public string ComputerName { get; set; }
12 |
13 | public string ProxyServer { get; set; }
14 |
15 | public string AutoConfigURL { get; set; }
16 |
17 | public string Wpad { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/RDPSessionInfo.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using static SharpView.Utils.NativeMethods;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class RDPSessionInfo
11 | {
12 | public string ComputerName { get; set; }
13 |
14 | public string SessionName { get; set; }
15 |
16 | public string UserName { get; set; }
17 |
18 | public Int32 ID { get; set; }
19 |
20 | public WTS_CONNECTSTATE_CLASS State { get; set; }
21 |
22 | public string SourceIP { get; set; }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/RegLoggedOnUser.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class RegLoggedOnUser
10 | {
11 | public string ComputerName { get; set; }
12 |
13 | public string UserDomain { get; set; }
14 |
15 | public string UserName { get; set; }
16 |
17 | public string UserSID { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/RegMountedDrive.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class RegMountedDrive
10 | {
11 | public string ComputerName { get; set; }
12 |
13 | public string UserName { get; set; }
14 |
15 | public string UserSID { get; set; }
16 |
17 | public string DriveLetter { get; set; }
18 |
19 | public string ProviderName { get; set; }
20 |
21 | public string RemotePath { get; set; }
22 |
23 | public string DriveUserName { get; set; }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ResolvedSID.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class ResolvedSID
10 | {
11 | public string IdentityReferenceName { get; set; }
12 |
13 | public string IdentityReferenceDomain { get; set; }
14 |
15 | public string IdentityReferenceDN { get; set; }
16 |
17 | public string IdentityReferenceClass { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/SPNTicket.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class SPNTicket
10 | {
11 | public string TicketByteHexStream { get; set; }
12 |
13 | public string Hash { get; set; }
14 |
15 | public string SamAccountName { get; set; }
16 |
17 | public string DistinguishedName { get; set; }
18 |
19 | public string ServicePrincipalName { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/SessionInfo.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using static SharpView.Utils.NativeMethods;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class SessionInfo
11 | {
12 | public string ComputerName { get; set; }
13 | public string CName { get; set; }
14 | public string UserName { get; set; }
15 | public uint Time { get; set; }
16 | public uint IdleTime { get; set; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/ShareInfo.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using static SharpView.Utils.NativeMethods;
7 |
8 | namespace SharpView.Returns
9 | {
10 | public class ShareInfo
11 | {
12 | public string Name { get; set; }
13 | public uint Type { get; set; }
14 | public string Remark { get; set; }
15 | public string ComputerName { get; set; }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/UserLocation.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class UserLocation
10 | {
11 | public string UserDomain { get; set; }
12 | public string UserName { get; set; }
13 | public string ComputerName { get; set; }
14 | public string IPAddress { get; set; }
15 | public string SessionFrom { get; set; }
16 | public string SessionFromName { get; set; }
17 | public bool LocalAdmin { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Returns/UserProcess.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Returns
8 | {
9 | public class UserProcess
10 | {
11 | public string ComputerName { get; set; }
12 |
13 | public string ProcessName { get; set; }
14 |
15 | public string ProcessID { get; set; }
16 |
17 | public string Domain { get; set; }
18 |
19 | public string User { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Utils/NetworkCredentialConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel;
4 | using System.Globalization;
5 | using System.Linq;
6 | using System.Text;
7 | using System.Threading.Tasks;
8 |
9 | namespace SharpView.Utils
10 | {
11 | public class NetworkCredentialConverter : TypeConverter
12 | {
13 | public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType)
14 | {
15 | if (sourceType == typeof(System.Net.NetworkCredential))
16 | {
17 | return true;
18 | }
19 |
20 | return base.CanConvertFrom(context, sourceType);
21 | }
22 |
23 | public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
24 | {
25 | string s = value as string;
26 |
27 | if (!string.IsNullOrEmpty(s))
28 | {
29 | string user = string.Empty, password = string.Empty;
30 | var posPass = s.IndexOf("/");
31 | if (posPass >= 0)
32 | {
33 | user = s.Substring(0, posPass);
34 | password = s.Substring(posPass + 1);
35 | }
36 | else user = s;
37 | return new System.Net.NetworkCredential(user, password);
38 | }
39 |
40 | return base.ConvertFrom(context, culture, value);
41 | }
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Utils/ReflectionExtension.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Utils
8 | {
9 | public static class ReflectionExtension
10 | {
11 | public static T GetPropValue(this object obj, string propName)
12 | {
13 | return (T)obj.GetType().GetProperty(propName)?.GetValue(obj, null);
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Utils/ResultPropertyValueCollectionExtension.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.DirectoryServices;
4 | using System.Linq;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace SharpView.Utils
9 | {
10 | public static class ResultPropertyValueCollectionExtension
11 | {
12 | public static IEnumerable GetValues(this ResultPropertyValueCollection collection)
13 | {
14 | var values = new List();
15 | foreach (T value in collection)
16 | {
17 | values.Add(value);
18 | }
19 | return values;
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Utils/StringArrayConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel;
4 | using System.Globalization;
5 | using System.Linq;
6 | using System.Text;
7 | using System.Threading.Tasks;
8 |
9 | namespace SharpView.Utils
10 | {
11 | public class StringArrayConverter : ArrayConverter
12 | {
13 | public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType)
14 | {
15 | if (sourceType == typeof(string))
16 | {
17 | return true;
18 | }
19 |
20 | return base.CanConvertFrom(context, sourceType);
21 | }
22 |
23 | public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
24 | {
25 | string s = value as string;
26 |
27 | if (!string.IsNullOrEmpty(s))
28 | {
29 | return ((string)value).Split(',');
30 | }
31 |
32 | return base.ConvertFrom(context, culture, value);
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Utils/StringExtension.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Utils
8 | {
9 | public static class StringExtension
10 | {
11 | public static string ShortenString(this string s, int length)
12 | {
13 | string ret;
14 | if (s.Length > length)
15 | {
16 | ret = s.Substring(0, length - 3);
17 | ret = ret.PadRight(length, '.');
18 | }
19 | else
20 | ret = s;
21 |
22 | ret = ret.PadRight(length, ' ');
23 | return ret;
24 | }
25 |
26 | public static string ToJoinedString(this string[] ss, string separator = ",")
27 | {
28 | return string.Join(separator, ss);
29 | }
30 |
31 | public static bool ContainsNoCase(this string[] ss, string pattern)
32 | {
33 | return ss.Any(x => x.Equals(pattern, StringComparison.OrdinalIgnoreCase));
34 | }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Utils/TestConnection.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Net.NetworkInformation;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace SharpView.Utils
9 | {
10 | public static class TestConnection
11 | {
12 | public static bool Ping(string host, int count = 1)
13 | {
14 | Ping pingSender = new Ping();
15 | PingOptions options = new PingOptions();
16 |
17 | options.DontFragment = true;
18 |
19 | byte[] data = { 0x20, 0x20 };
20 | int timeout = 120;
21 |
22 | for (int i = 0; i < count; i++)
23 | {
24 | try
25 | {
26 | PingReply reply = pingSender.Send(host, timeout, data, options);
27 | if (reply.Status == IPStatus.Success)
28 | {
29 | return true;
30 | }
31 | }
32 | catch
33 | {
34 | }
35 | }
36 |
37 | return false;
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Utils/TrustAttributeExtension.cs:
--------------------------------------------------------------------------------
1 | using SharpView.Enums;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace SharpView.Utils
9 | {
10 | public static class TrustAttributeExtension
11 | {
12 | public static IEnumerable ExtractValues(this TrustAttribute attr)
13 | {
14 | var ui32 = (UInt32)attr;
15 | var values = new List();
16 | for (int i = 0; i < ui32; i++)
17 | {
18 | var val = ui32 & ((UInt64)1 << i);
19 | if (val != 0)
20 | values.Add((TrustAttribute)val);
21 | }
22 | return values;
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/SharpView/SharpView/Utils/ValidationExtension.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace SharpView.Utils
8 | {
9 | public static class ValidationExtension
10 | {
11 | public static bool IsNullOrWhiteSpace(this string s)
12 | {
13 | return string.IsNullOrWhiteSpace(s);
14 | }
15 |
16 | public static bool IsNotNullOrWhiteSpace(this string s)
17 | {
18 | return !IsNullOrWhiteSpace(s);
19 | }
20 |
21 | public static bool IsNullOrEmpty(this string s)
22 | {
23 | return string.IsNullOrEmpty(s);
24 | }
25 |
26 | public static bool IsNotNullOrEmpty(this string s)
27 | {
28 | return !IsNullOrEmpty(s);
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/SharpView/SharpView/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/SharpWMI/.gitignore:
--------------------------------------------------------------------------------
1 | .vs
2 | *.user
3 | [Dd]ebug/
4 | [Rr]elease/
5 | [Bb]in/
6 | [Oo]bj/
7 |
--------------------------------------------------------------------------------
/SharpWMI/SharpWMI.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpWMI", "SharpWMI\SharpWMI.csproj", "{6DD22880-DAC5-4B4D-9C91-8C35CC7B8180}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {6DD22880-DAC5-4B4D-9C91-8C35CC7B8180}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {6DD22880-DAC5-4B4D-9C91-8C35CC7B8180}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {6DD22880-DAC5-4B4D-9C91-8C35CC7B8180}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {6DD22880-DAC5-4B4D-9C91-8C35CC7B8180}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/SharpWMI/SharpWMI/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SharpWMI")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("SharpWMI")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("6dd22880-dac5-4b4d-9c91-8c35cc7b8180")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------