{"id":6571,"date":"2023-01-23T06:33:29","date_gmt":"2023-01-23T06:33:29","guid":{"rendered":"https:\/\/pariswells.com\/blog\/?p=6571"},"modified":"2026-03-11T21:50:43","modified_gmt":"2026-03-11T21:50:43","slug":"health-check","status":"publish","type":"post","link":"https:\/\/pariswells.com\/blog\/research\/health-check","title":{"rendered":"Security Best Practice \\ Health Check"},"content":{"rendered":"\n<p><\/p>\n\n\n\n<p><br><strong>Assets<\/strong><br>Internal IP&#8217;s<br>External IP&#8217;s<br>Network Devices &#8211; Switches \\ Routers \\ AP&#8217;s<br>Storage Devices<br>Hypervisor Versions<\/p>\n\n\n\n<p><strong>Business Process<\/strong><br>New User and Leaver Guide <br>Password Management Tool<br>Vulnerability Management<br>Change Management<br>Monitor HaveIBeenPwned<br>Ransomware Readiness Assesment<br>SOC Assesment<br>Compromise Assessment<\/p>\n\n\n\n<p><strong>Data<\/strong><br>DLP?<br>Review Permissions and Changes?<br>SAN? Storage Snapshots?<br>Blobs Public?<br><a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/storage\/blobs\/security-recommendations\">Security recommendations for Blob storage &#8211; Azure Storage | Microsoft Learn<\/a><\/p>\n\n\n\n<p><strong>Identity<\/strong><br>MFA?<br>Admin Count? <a href=\"https:\/\/pariswells.com\/blog\/research\/powershell-for-fixing-admincount-variable-for-users-who-have-left-privledged-roles-onprem\">https:\/\/pariswells.com\/blog\/research\/powershell-for-fixing-admincount-variable-for-users-who-have-left-privledged-roles-onprem<\/a><br>Logging Level in Azure AD ( Default 30 days ) <br>Logging Level in AD<br>Domain Admin Group<br>Azure AD Identity Review Reports for Guest Access<br>Defender for Identity ( if Licensed )<br>Separate Domain Admin Accounts<br><a title=\"Find Old Inactive or Active Computer and User Accounts in Active Directory through DSQuery\/Powershell\" href=\"https:\/\/pariswells.com\/blog\/random\/find-old-computer-and-user-accounts-in-active-directory-through-dsquery\">Stale Computer Accounts<\/a> ( Not Disabled ) <br><a title=\"Find Old Inactive or Active Computer and User Accounts in Active Directory through DSQuery\/Powershell\" href=\"https:\/\/pariswells.com\/blog\/random\/find-old-computer-and-user-accounts-in-active-directory-through-dsquery\">Stale User Accounts <\/a>( Not Disabled ) <br>Protected Users?<br>SSO SAML for Apps<br>Password Policies ( <a href=\"https:\/\/activedirectorypro.com\/how-to-configure-a-domain-password-policy\/\">https:\/\/activedirectorypro.com\/how-to-configure-a-domain-password-policy\/<\/a> ) <br>Password Strength ( <a href=\"https:\/\/evotec.xyz\/strengthening-password-security-in-active-directory-a-powershell-powered-approach\/\">https:\/\/evotec.xyz\/strengthening-password-security-in-active-directory-a-powershell-powered-approach\/<\/a> ) <br>Password Crack <a href=\"https:\/\/bluewantingred.com\/post\/ad-password-audit-in-kali\/\">https:\/\/bluewantingred.com\/post\/ad-password-audit-in-kali\/<\/a><br>Lockout Policies ! ( https:\/\/activedirectorypro.com\/account-lockout-policy\/ ) <br>AD \\ Azure Active Directory password protection ( Banned Password List for Company Name ) <br>AADconnect Version<br>Managed Service Account<br>dcdiag<br>Risky Sign in behaviour Alerting<br>Canary Files ( Honey Tokens ) https:\/\/canarytokens.org\/generate<br>Device Compliance (assuming Microsoft Endpoint Manager (Intune) is in play) ( <a href=\"https:\/\/pariswells.com\/blog\/research\/intune-best-practices\">Intune Best Prac<\/a> ) <br>Privileged Identity Management (PIM)<br>Accounts set to Not Expire &#8211; get-aduser -filter * -properties Name, PasswordNeverExpires | where {$_.passwordNeverExpires -eq &#8220;true&#8221; } | Select-Object DistinguishedName,Name,Enabled<br>Break Glass Account<br><a href=\"https:\/\/www.michev.info\/blog\/post\/5608\/azure-ad-previews-step-up-authentication-for-admins-via-protected-actions\n\">https:\/\/www.michev.info\/blog\/post\/5608\/azure-ad-previews-step-up-authentication-for-admins-via-protected-actions<br><\/a><a href=\"https:\/\/github.com\/ClaudioMerola\/ADxRay\">https:\/\/github.com\/ClaudioMerola\/ADxRay<\/a> &#8211; Health Check<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><br><a>Enable Self Service Password Reset<\/a><br><br><br><strong>Servers<\/strong><br>Backup? Monitoring \\ Restores \\ Item Level \\ Notifications 321 Rule<br>Business RPO and RTO Sign off <br>LAPS?<br>Hypervisor Versions<br>Ilo? Versons<br>AV? EDR?<br>ADCS?&#8211; https:\/\/github.com\/GhostPack\/Certify \\ https:\/\/github.com\/ly4k\/Certipy<br>Warranty?<br>DR?<br><a href=\"https:\/\/pariswells.com\/blog\/research\/internet-information-services-iis-securing-best-prac\" title=\"Internet Information Services&nbsp;(IIS)&nbsp;Securing Best Prac\">Internet Information Services&nbsp;(IIS)&nbsp;Securing Best Prac<br><\/a>Monitoring Useage?<br>Licensing <br><a href=\"https:\/\/pariswells.com\/blog\/research\/rate-limiting-remote-desktop-service-gateway\" title=\"Rate Limiting Remote Desktop Service Gateway\">RDS Rate Limiting<\/a>?<br>Radius Lockouts? <a href=\"https:\/\/www.intrust-it.com\/enabling-account-lock-out-radius-based-authentication\/\">RADIUS Based Authentication: Enabling Account Lock-Out &#8211; Intrust IT (intrust-it.com)<\/a><br>GPOs and Best Prac <br>TLS 1.0\\1.1 ( CVE-2014-3566 (POODLE) ) <br>Diffie-Hellman prime is less than 2048 bits<br>mDNS \\ Netbios<br>WPAD<br>IPV6<br>Patching<br>HTTP Header &#8211; <a href=\"https:\/\/securityheaders.com\/\">https:\/\/securityheaders.com\/<\/a><br>Expired SSL Certs \\ <a href=\"https:\/\/www.ssllabs.com\/ssltest\/\">https:\/\/www.ssllabs.com\/ssltest\/<\/a><br>Good Size SSL Cert ( 2048 + )<\/p>\n\n\n\n<p>Crack Access on PC -&gt; <a href=\"https:\/\/dannyda.com\/2023\/05\/24\/some-microsoft-windows-system-network-information-and-password-gathering-methods\/\">https:\/\/dannyda.com\/2023\/05\/24\/some-microsoft-windows-system-network-information-and-password-gathering-methods\/<\/a><\/p>\n\n\n\n<p>Windows Updates?<\/p>\n\n\n\n<p><br><strong>Network<\/strong><br>Backup?  <br>Make and Model of Network Devices ( AP&#8217;s \\ Switches Routers )  \\ Firmware Up To Date?<br>HA Hardware and Internet <br>Remote Access 2fa?<br>Least Privilege?<br>VLANS?<br>Web Filtering?<br>DDOS?<br>IPS?<br>Wireless Auth Radius? IDS \\ IPS?<br>Firewall Rules<br>Internet Usage<br>Web browsers do not process web advertisements from the internet.<br>Physical Access Control on Switches ( NAC ) <br>Ports open ?<br>DNSSEC is not configured ?<br>VPN Encryption Length<br><\/p>\n\n\n\n<p><strong>Physical<\/strong><\/p>\n\n\n\n<p>Unsecured Networking &amp; Server Equipment<br>Shared PIN Access Code<br>DefaultApplicationCredentials<br>Password Reuse on Shared User Accounts<br>Excessive Close Time on Main Entry Door<br>Guest Wireless Network Without Intra\u0002Segmentation<\/p>\n\n\n\n<p><br><strong>Email<\/strong><br>365 See Best Prac<br>Backup? 321 Rule<br>SPF\\DKIM\\Dmarc<br>SPAM Filter<br>Archive<br>Office Version<br><br><strong>Workstations<\/strong><br>AV? EDR?<br>Powershell in Constraint Language Model<br>Disable CMD for Admins<br>AppLocker<br>Third Party App Updates \\ Drivers \\ Browser ( Chrome ) <br>Intune Updates for Windows Drivers?<br>Office Updates ( config.microsoft.com ) <br>Bitlocker?<br>OneDrive?<br>Silverlight Installed?<br>Shadow IT? Cloud Apps<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Moibile<\/strong><br>MAM?<br><em>Block enrollment and access for other devices<\/em><br><em>Enable web-only access<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>AssetsInternal IP&#8217;sExternal IP&#8217;sNetwork Devices &#8211; Switches \\ Routers \\ AP&#8217;sStorage DevicesHypervisor Versions Business ProcessNew User and Leaver Guide Password Management ToolVulnerability ManagementChange ManagementMonitor HaveIBeenPwnedRansomware Readiness AssesmentSOC AssesmentCompromise [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[4189,1889],"class_list":["post-6571","post","type-post","status-publish","format-standard","hentry","category-research","tag-prac","tag-security"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/posts\/6571","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/comments?post=6571"}],"version-history":[{"count":56,"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/posts\/6571\/revisions"}],"predecessor-version":[{"id":9478,"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/posts\/6571\/revisions\/9478"}],"wp:attachment":[{"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/media?parent=6571"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/categories?post=6571"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pariswells.com\/blog\/wp-json\/wp\/v2\/tags?post=6571"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}