Skip to content

Commit

Permalink
Bugfixes for gPLinks module
Browse files Browse the repository at this point in the history
  • Loading branch information
prashant3535 committed Sep 28, 2018
1 parent bad6e2c commit 5bfe0e3
Showing 1 changed file with 28 additions and 24 deletions.
52 changes: 28 additions & 24 deletions ADRecon.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -379,6 +379,7 @@ namespace ADRecon

public static Object[] GroupMemberParser(Object[] AdGroups, Object[] AdGroupMembers, String DomainSID, int numOfThreads)
{
ADWSClass.AdGroupDictionary = new Dictionary<String, String>();
runProcessor(AdGroups, numOfThreads, "GroupsDictionary");
ADWSClass.DomainSID = DomainSID;
Object[] ADRObj = runProcessor(AdGroupMembers, numOfThreads, "GroupMembers");
Expand All @@ -399,6 +400,7 @@ namespace ADRecon

public static Object[] SOMParser(Object[] AdGPOs, Object[] AdSOMs, int numOfThreads)
{
ADWSClass.AdGPODictionary = new Dictionary<String, String>();
runProcessor(AdGPOs, numOfThreads, "GPOsDictionary");
Object[] ADRObj = runProcessor(AdSOMs, numOfThreads, "SOMs");
return ADRObj;
Expand Down Expand Up @@ -1146,27 +1148,27 @@ namespace ADRecon
SOMObj.Members.Add(new PSNoteProperty("Name", AdSOM.Members["Name"].Value));
SOMObj.Members.Add(new PSNoteProperty("Depth", Depth));
SOMObj.Members.Add(new PSNoteProperty("DistinguishedName", AdSOM.Members["DistinguishedName"].Value));
SOMObj.Members.Add(new PSNoteProperty("GPO BlockInheritance", BlockInheritance));
SOMObj.Members.Add(new PSNoteProperty("GPO LinkEnabled", LinkEnabled));
SOMObj.Members.Add(new PSNoteProperty("GPO Enforced", Enforced));
SOMObj.Members.Add(new PSNoteProperty("GPO Name", GPOName));
SOMObj.Members.Add(new PSNoteProperty("GPO Order", null));
SOMObj.Members.Add(new PSNoteProperty("Link Order", null));
SOMObj.Members.Add(new PSNoteProperty("GPO", GPOName));
SOMObj.Members.Add(new PSNoteProperty("Enforced", Enforced));
SOMObj.Members.Add(new PSNoteProperty("Link Enabled", LinkEnabled));
SOMObj.Members.Add(new PSNoteProperty("BlockInheritance", BlockInheritance));
SOMObj.Members.Add(new PSNoteProperty("gPLink", gPLink));
SOMObj.Members.Add(new PSNoteProperty("gPOptions", AdSOM.Members["gPOptions"].Value));
SOMsList.Add( SOMObj );
}
foreach (String link in GPLinks)
{
String[] linksplit = link.Split('/', ';');
if (linksplit[3].Equals("0"))
if (!Convert.ToBoolean((Convert.ToInt32(linksplit[3]) & 1)))
{
LinkEnabled = true;
}
else
{
LinkEnabled = false;
}
if (linksplit[3].Equals("2"))
if (Convert.ToBoolean((Convert.ToInt32(linksplit[3]) & 2)))
{
Enforced = true;
}
Expand All @@ -1186,11 +1188,11 @@ namespace ADRecon
SOMObj.Members.Add(new PSNoteProperty("Name", AdSOM.Members["Name"].Value));
SOMObj.Members.Add(new PSNoteProperty("Depth", Depth));
SOMObj.Members.Add(new PSNoteProperty("DistinguishedName", AdSOM.Members["DistinguishedName"].Value));
SOMObj.Members.Add(new PSNoteProperty("GPO BlockInheritance", BlockInheritance));
SOMObj.Members.Add(new PSNoteProperty("GPO LinkEnabled", LinkEnabled));
SOMObj.Members.Add(new PSNoteProperty("GPO Enforced", Enforced));
SOMObj.Members.Add(new PSNoteProperty("GPO Name", GPOName));
SOMObj.Members.Add(new PSNoteProperty("GPO Order", Order));
SOMObj.Members.Add(new PSNoteProperty("Link Order", Order));
SOMObj.Members.Add(new PSNoteProperty("GPO", GPOName));
SOMObj.Members.Add(new PSNoteProperty("Enforced", Enforced));
SOMObj.Members.Add(new PSNoteProperty("Link Enabled", LinkEnabled));
SOMObj.Members.Add(new PSNoteProperty("BlockInheritance", BlockInheritance));
SOMObj.Members.Add(new PSNoteProperty("gPLink", gPLink));
SOMObj.Members.Add(new PSNoteProperty("gPOptions", AdSOM.Members["gPOptions"].Value));
SOMsList.Add( SOMObj );
Expand Down Expand Up @@ -1623,6 +1625,7 @@ namespace ADRecon

public static Object[] GroupMemberParser(Object[] AdGroups, Object[] AdGroupMembers, String DomainSID, int numOfThreads)
{
LDAPClass.AdGroupDictionary = new Dictionary<String, String>();
runProcessor(AdGroups, numOfThreads, "GroupsDictionary");
LDAPClass.DomainSID = DomainSID;
Object[] ADRObj = runProcessor(AdGroupMembers, numOfThreads, "GroupMembers");
Expand All @@ -1643,6 +1646,7 @@ namespace ADRecon

public static Object[] SOMParser(Object[] AdGPOs, Object[] AdSOMs, int numOfThreads)
{
LDAPClass.AdGPODictionary = new Dictionary<String, String>();
runProcessor(AdGPOs, numOfThreads, "GPOsDictionary");
Object[] ADRObj = runProcessor(AdSOMs, numOfThreads, "SOMs");
return ADRObj;
Expand Down Expand Up @@ -2392,27 +2396,27 @@ namespace ADRecon
SOMObj.Members.Add(new PSNoteProperty("Name", AdSOM.Properties["name"][0]));
SOMObj.Members.Add(new PSNoteProperty("Depth", Depth));
SOMObj.Members.Add(new PSNoteProperty("DistinguishedName", AdSOM.Properties["distinguishedname"][0]));
SOMObj.Members.Add(new PSNoteProperty("GPO BlockInheritance", BlockInheritance));
SOMObj.Members.Add(new PSNoteProperty("GPO LinkEnabled", LinkEnabled));
SOMObj.Members.Add(new PSNoteProperty("GPO Enforced", Enforced));
SOMObj.Members.Add(new PSNoteProperty("GPO Name", GPOName));
SOMObj.Members.Add(new PSNoteProperty("GPO Order", null));
SOMObj.Members.Add(new PSNoteProperty("Link Order", null));
SOMObj.Members.Add(new PSNoteProperty("GPO", GPOName));
SOMObj.Members.Add(new PSNoteProperty("Enforced", Enforced));
SOMObj.Members.Add(new PSNoteProperty("Link Enabled", LinkEnabled));
SOMObj.Members.Add(new PSNoteProperty("BlockInheritance", BlockInheritance));
SOMObj.Members.Add(new PSNoteProperty("gPLink", gPLink));
SOMObj.Members.Add(new PSNoteProperty("gPOptions", (AdSOM.Properties["gpoptions"].Count != 0 ? AdSOM.Properties["gpoptions"][0] : "")));
SOMsList.Add( SOMObj );
}
foreach (String link in GPLinks)
{
String[] linksplit = link.Split('/', ';');
if (linksplit[3].Equals("0"))
if (!Convert.ToBoolean((Convert.ToInt32(linksplit[3]) & 1)))
{
LinkEnabled = true;
}
else
{
LinkEnabled = false;
}
if (linksplit[3].Equals("2"))
if (Convert.ToBoolean((Convert.ToInt32(linksplit[3]) & 2)))
{
Enforced = true;
}
Expand All @@ -2432,11 +2436,11 @@ namespace ADRecon
SOMObj.Members.Add(new PSNoteProperty("Name", AdSOM.Properties["name"][0]));
SOMObj.Members.Add(new PSNoteProperty("Depth", Depth));
SOMObj.Members.Add(new PSNoteProperty("DistinguishedName", AdSOM.Properties["distinguishedname"][0]));
SOMObj.Members.Add(new PSNoteProperty("GPO BlockInheritance", BlockInheritance));
SOMObj.Members.Add(new PSNoteProperty("GPO LinkEnabled", LinkEnabled));
SOMObj.Members.Add(new PSNoteProperty("GPO Enforced", Enforced));
SOMObj.Members.Add(new PSNoteProperty("GPO Name", GPOName));
SOMObj.Members.Add(new PSNoteProperty("GPO Order", Order));
SOMObj.Members.Add(new PSNoteProperty("Link Order", Order));
SOMObj.Members.Add(new PSNoteProperty("GPO", GPOName));
SOMObj.Members.Add(new PSNoteProperty("Enforced", Enforced));
SOMObj.Members.Add(new PSNoteProperty("Link Enabled", LinkEnabled));
SOMObj.Members.Add(new PSNoteProperty("BlockInheritance", BlockInheritance));
SOMObj.Members.Add(new PSNoteProperty("gPLink", gPLink));
SOMObj.Members.Add(new PSNoteProperty("gPOptions", (AdSOM.Properties["gpoptions"].Count != 0 ? AdSOM.Properties["gpoptions"][0] : "")));
SOMsList.Add( SOMObj );
Expand Down

0 comments on commit 5bfe0e3

Please sign in to comment.