Security Management System Development
Budget: £1,500 – £3,000 GBP
Project Overview:
We are seeking a skilled freelancer to continue the development of our Security Management System for our clients. The system consists of a web portal hosted on our servers and a client-side application installed on each client machine. The project is partially complete; however, the previous developer is no longer available. We have access to the existing web portal files and the client application. We are an IT support company and want this tool so we can assure adequate security controls are in place for the machines we look after and have antivirus regularly ran and updates to ensure all systems are patched. The system will also show us what end users are doing on the average day.
Currently, the system links client machines to the web portal using a generated code. The master admin can manage multiple companies, while company-specific managers can oversee their own machines. The system currently monitors internet activity, categorizing visited websites as productive or unproductive.
We need to finalize the existing features and implement new functionality as described below.
Required Enhancements:
1) Cyber Essentials Security
We require a new panel within the application to enable and disable specific security controls via Command Prompt commands or PowerShell scripts (which will be provided). These scripts should run with administrative privileges.
Security Controls to Implement:
Disable USB Storage
Disable Built-in Administrator Account
Create acsadmin User
Convert Accounts to Non-Admin
Configure Account Lockout Policies
Enforce Password Policies and Next Logon
Configure Screen Timeout
Disable Autorun/Autoplay
Cleanup Temp Files and Group Policy Updates
Check if Hard Drive is Encrypted with BitLocker (if not, encrypt it and store the recovery key)
Requirements:
Visual indicators showing which controls are enabled/disabled.
2) Anti-Virus Management
Enhance the system to monitor and enforce Windows Defender security policies.
Features to Implement:
Ensure Windows Defender is enabled.
Enable Network Protection.
Enable Controlled Folder Access (Anti-Ransomware Protection).
Configure Potentially Unwanted Application (PUA) Protection.
Schedule daily updates for virus definitions.
Schedule twice-weekly system scans.
Automatically remove detected threats (if removal fails, trigger an email alert).
Log and Visual Requirements:
Log showing updates performed (date and time).
Log showing scan results (date and time).
Visual status indicators:
Confirmation that updates are current.
Confirmation of successful scans.
Alert if infections are found.
3) System Updates Management
Ensure the client machines are kept up to date with Microsoft and third-party updates.
Features to Implement:
Download and install Microsoft updates twice a week.
Display a list of installed updates.
Use Winget to update all third-party applications.
Log and Visual Requirements:
Display the status of updates.
Log detailing what was updated and when.
Additional Requirements:
The new features should be integrated seamlessly into the existing client-side application.
The security, antivirus, and update functionalities should be controlled at the user level.
The interface should allow administrators to click on a username or PC name and navigate to these options.
Graphical representations should be included for productive/unproductive time tracking, security status, antivirus status, and update compliance.
The client application should install missing dependencies (e.g., Winget) during initial setup.
Attachments:
Cyber Essentials Security Scripts
Windows Updates and Winget Update Scripts
Original Codebase for Reference
Ideal Freelancer Requirements:
Strong experience in Windows application development (C#, .NET, or similar).
Proficiency in PowerShell scripting and Windows security policies.
Knowledge of web portals and data synchronization.
Experience with Windows Defender and antivirus integrations.
Ability to work with and extend an existing codebase.
Excellent debugging and problem-solving skills.
Ability to provide regular updates and documentation on progress.
We are seeking a skilled freelancer to continue the development of our Security Management System for our clients. The system consists of a web portal hosted on our servers and a client-side application installed on each client machine. The project is partially complete; however, the previous developer is no longer available. We have access to the existing web portal files and the client application. We are an IT support company and want this tool so we can assure adequate security controls are in place for the machines we look after and have antivirus regularly ran and updates to ensure all systems are patched. The system will also show us what end users are doing on the average day.
Currently, the system links client machines to the web portal using a generated code. The master admin can manage multiple companies, while company-specific managers can oversee their own machines. The system currently monitors internet activity, categorizing visited websites as productive or unproductive.
We need to finalize the existing features and implement new functionality as described below.
Required Enhancements:
1) Cyber Essentials Security
We require a new panel within the application to enable and disable specific security controls via Command Prompt commands or PowerShell scripts (which will be provided). These scripts should run with administrative privileges.
Security Controls to Implement:
Disable USB Storage
Disable Built-in Administrator Account
Create acsadmin User
Convert Accounts to Non-Admin
Configure Account Lockout Policies
Enforce Password Policies and Next Logon
Configure Screen Timeout
Disable Autorun/Autoplay
Cleanup Temp Files and Group Policy Updates
Check if Hard Drive is Encrypted with BitLocker (if not, encrypt it and store the recovery key)
Requirements:
Visual indicators showing which controls are enabled/disabled.
2) Anti-Virus Management
Enhance the system to monitor and enforce Windows Defender security policies.
Features to Implement:
Ensure Windows Defender is enabled.
Enable Network Protection.
Enable Controlled Folder Access (Anti-Ransomware Protection).
Configure Potentially Unwanted Application (PUA) Protection.
Schedule daily updates for virus definitions.
Schedule twice-weekly system scans.
Automatically remove detected threats (if removal fails, trigger an email alert).
Log and Visual Requirements:
Log showing updates performed (date and time).
Log showing scan results (date and time).
Visual status indicators:
Confirmation that updates are current.
Confirmation of successful scans.
Alert if infections are found.
3) System Updates Management
Ensure the client machines are kept up to date with Microsoft and third-party updates.
Features to Implement:
Download and install Microsoft updates twice a week.
Display a list of installed updates.
Use Winget to update all third-party applications.
Log and Visual Requirements:
Display the status of updates.
Log detailing what was updated and when.
Additional Requirements:
The new features should be integrated seamlessly into the existing client-side application.
The security, antivirus, and update functionalities should be controlled at the user level.
The interface should allow administrators to click on a username or PC name and navigate to these options.
Graphical representations should be included for productive/unproductive time tracking, security status, antivirus status, and update compliance.
The client application should install missing dependencies (e.g., Winget) during initial setup.
Attachments:
Cyber Essentials Security Scripts
Windows Updates and Winget Update Scripts
Original Codebase for Reference
Ideal Freelancer Requirements:
Strong experience in Windows application development (C#, .NET, or similar).
Proficiency in PowerShell scripting and Windows security policies.
Knowledge of web portals and data synchronization.
Experience with Windows Defender and antivirus integrations.
Ability to work with and extend an existing codebase.
Excellent debugging and problem-solving skills.
Ability to provide regular updates and documentation on progress.