{"id":2029,"date":"2025-02-17T10:06:52","date_gmt":"2025-02-17T10:06:52","guid":{"rendered":"https:\/\/serisec.com\/index.php\/2025\/02\/17\/purplelab-a-free-cybersecurity-lab-for-security-teams-to-detect-analyze-simulate-threats\/"},"modified":"2025-02-17T10:06:52","modified_gmt":"2025-02-17T10:06:52","slug":"purplelab-a-free-cybersecurity-lab-for-security-teams-to-detect-analyze-simulate-threats","status":"publish","type":"post","link":"https:\/\/serisec.com\/index.php\/2025\/02\/17\/purplelab-a-free-cybersecurity-lab-for-security-teams-to-detect-analyze-simulate-threats\/","title":{"rendered":"PurpleLab \u2013 A Free Cybersecurity Lab for Security Teams to Detect, Analyze &amp; Simulate Threats"},"content":{"rendered":"\n<div>PurpleLab \u2013 A Free Cybersecurity Lab for Security Teams to Detect, Analyze &#038; Simulate Threats<\/div>\n<p> \t<BR><br \/>\n<BR><\/BR><br \/>\n    <!-- no image --><br \/>\n \t<BR><br \/>\n<BR><\/BR><\/p>\n<div>\n<p>In a significant step forward for cybersecurity professionals, PurpleLab offers an innovative open-source cybersecurity lab for creating and testing detection rules, simulating logs, and running malware tests. <\/p>\n<p>Designed as an all-in-one lab environment, PurpleLab equips analysts with tools to enhance their threat detection capabilities while providing a sandboxed space for experimentation.<\/p>\n<h2 class=\"wp-block-heading\"><strong>What is PurpleLab?<\/strong><\/h2>\n<p>PurpleLab is a cybersecurity lab that integrates various tools and technologies to support analysts in testing detection rules and simulating real-world cyber threats. <\/p>\n<p>The platform includes a web interface, a Windows 10 virtual machine (VM) preloaded with forensic tools, a Flask backend, MySQL database, and an Elasticsearch server. Its primary goal is to streamline the process of threat hunting and incident response.<\/p>\n<h2 class=\"wp-block-heading\"><strong>Key Features<\/strong><\/h2>\n<ol class=\"wp-block-list\">\n<li>\n<strong>Web Interface<\/strong>: A user-friendly control panel for managing features.<\/li>\n<li>\n<strong>Windows 10 VM<\/strong>: Preconfigured with forensic tools and Atomic Red Team modules.<\/li>\n<li>\n<strong>Log Simulation<\/strong>: Generates realistic traffic logs for analysis.<\/li>\n<li>\n<strong>Malware Testing<\/strong>: Downloads or uploads malware samples for execution in a controlled environment.<\/li>\n<li>\n<strong>Integration with SIEMs<\/strong>: Supports ELK stack configuration for log analysis.<\/li>\n<\/ol>\n<h2 class=\"wp-block-heading\"><strong>PurpleLab Integration App for Splunk<\/strong><\/h2>\n<p><strong><a href=\"https:\/\/github.com\/Krook9d\/TA-Purplelab-Splunk\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">TA-PurpleLab-Splunk<\/a><\/strong> is a free, all-in-one cybersecurity lab designed for security teams to detect, analyze, and simulate threats using Splunk. This toolkit provides hands-on threat intelligence, log analysis, and SIEM capabilities to enhance security operations. <\/p>\n<p>Perfect for training, research, and real-world threat detection, TA-PurpleLab-Splunk empowers teams to strengthen their cybersecurity defenses efficiently.<\/p>\n<h2 class=\"wp-block-heading\"><strong>Installation Process<\/strong><\/h2>\n<p>Setting up PurpleLab requires a clean installation of Ubuntu Server 22.04 and hardware virtualization enabled on the host machine. Users can clone the repository from GitHub and execute the installation script. <\/p>\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiCD-b7F8P65OWEL4d_Bmw6QFZGtbAi7eVSNn5ndoo0Lk7BbDCEjnvSDB4mpud7uftAow5aw3hSh1XuaTBcpRuro9LQrMNy5Sq8vhTaQDOrAI7OA9t3-N6SBPaThlKcIB8PniHkxsj8MrtS2FRm48j6cyRoUqTTsxf5hRLOpnizf9eiJt2YSbU-TaOQk5Hh\/s16000\/connexion.webp?ssl=1\" alt=\"\"><\/figure>\n<p>The setup process includes configuring accounts, integrating the ELK stack, and connecting to the Windows VM for log collection.<\/p>\n<p>However, users are cautioned that PurpleLab is not hardened for security by default. \u201cDo not connect it to sensitive networks without implementing additional security measures,\u201d the developers warn.<\/p>\n<h2 class=\"wp-block-heading\"><strong>Pages and Functionalities<\/strong><\/h2>\n<p>PurpleLab\u2019s interface is divided into several specialized pages:<\/p>\n<ul class=\"wp-block-list\">\n<li>\n<strong>Home Page<\/strong>: Displays key performance indicators (KPIs) like event counts and detected MITRE ATT&amp;CK techniques.<\/li>\n<\/ul>\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiFF0EnuE_k85sguYJvY2b2E8aJpgW93vNh7bg6fxBqm1K5CPG_FgdZkLGXg3ApnMUNh_e0UHR5YpqJdSAtcx_hQcvsQV38isENgIyybzF9BMgsuiQwS1vbegIMUajr8MGXOt5-vnf0AJbsWzxIcG2W2bwfEN7lyFgIsvHoJzaMgeJL0gcTvM98JhJVoNAK\/s16000\/home_page.webp?ssl=1\" alt=\"\"><\/figure>\n<ul class=\"wp-block-list\">\n<li>\n<strong>Hunting Page<\/strong>: Redirects users to Kibana for log analysis.<\/li>\n<li>\n<strong><a href=\"https:\/\/cybersecuritynews.com\/mitre-engenuity-attck\/\" target=\"_blank\" rel=\"noreferrer noopener\">MITRE ATT&amp;CK<\/a> Page<\/strong>: Allows users to simulate attack techniques using Invoke-Atomic tools.<\/li>\n<\/ul>\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEihavpQRjbvEJx4fQrLAgrceviLbgVi5pTUvcm4CPB3dtAxdMOyqCBKE93sEPoGflmUnTemZFRDje2lq8Gw7NyyuF6rvcdRIWQ4hbwy-fZTjIkPYxPV0IxmsooDpKZ9RRbiFv88zeMxZkcyrvlH09A0cqWJ5W48jBGz8Ype22sCCySs_bb0cedK5fy6whFb\/s16000\/mitre.webp?ssl=1\" alt=\"\"><\/figure>\n<ul class=\"wp-block-list\">\n<li>\n<strong>Malware Page<\/strong>: Enables downloading or uploading malware samples for testing.<\/li>\n<\/ul>\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEhEvBfD-pXaimh3pV73jJ3_W4YwA9DpVJegECGtakvzDmku8h6m5tHSgJHl2LvmnUOXpGlVVqn5VByhDUbjMNc3wcyiAGxkKXIGkEE5oY0hhG4cvYqBMNM5xAOVATi_Z2egCssYnqEOOpLAc1VyJnZWR1kYExoWSrhai2C5_8FmuUWHpDklbinP1JZ7MZjg\/s16000\/malware.webp?ssl=1\" alt=\"\"><\/figure>\n<ul class=\"wp-block-list\">\n<li>\n<strong>Log Simulation Page<\/strong>: Generates firewall or Ubuntu logs to mimic real-world scenarios.<\/li>\n<\/ul>\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEgp8fjmKeF21KpGcGj2nhkwistw4UWoLWqmADZUBW4_hMobWZJ-WnN3gxGvPjCg7g05uymG949Yru8jGnWW_7CuOdyVEfKWqniSxTHwoR-gV9MltkKys9Z72qK0ISLkJad0WTC80Fo9ihMtvn_6antzcEhQyaKxnSupfy3FWLi5XP-adWO-u3JlmnsVxNGx\/s16000\/log_simulation.webp?ssl=1\" alt=\"\"><\/figure>\n<ul class=\"wp-block-list\">\n<li>\n<strong>Usage Case Page<\/strong>: Provides prebuilt compromise scenarios for training purposes.<\/li>\n<li>\n<strong>Sigma Page<\/strong>: Searches Sigma rules by keywords and converts them into Splunk or Lucene queries.<\/li>\n<li>\n<strong>Health Page<\/strong>: Monitors system components like Kibana, Logstash, VirtualBox, and Flask backend.<\/li>\n<\/ul>\n<h2 class=\"wp-block-heading\"><strong>Admin Capabilities<\/strong><\/h2>\n<p>Administrators can configure LDAP settings for centralized authentication and generate API keys for secure communication between components. The platform also supports seamless integration with Splunk through its dedicated app.<\/p>\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEj1V-Rp2u_I9ZFfcpIBBJOFQr98TIZZdb54zjjMLXDrn-lqHJQj6el5SdjtreZwA6iy2DtpUF9kdLWvbxPS9E_YjyQ9GrlPOyN4012eYhKnRvQZ-YMk6DX2kkQJFANZbwQZbCbbkShaF-kzwd4UiDhKvwAYhDVYDbZNz35XKi0NMGaIgjE2USv_MPvx25hO\/s16000\/admin.webp?ssl=1\" alt=\"\"><\/figure>\n<p>To install and use <strong>PurpleLab<\/strong>, a comprehensive cybersecurity lab, follow these detailed steps:<\/p>\n<h2 class=\"wp-block-heading\"><strong>Installation Process<\/strong><\/h2>\n<h3 class=\"wp-block-heading\"><strong>1. Requirements<\/strong><\/h3>\n<p>Before installation, ensure your system meets the following criteria:<\/p>\n<p><strong>Hardware specifications<\/strong>:<\/p>\n<ul class=\"wp-block-list\">\n<li>200GB storage<\/li>\n<li>8 CPU cores<\/li>\n<li>13GB RAM<\/li>\n<li>Operating System: A clean installation of Ubuntu Server 22.04 (Ubuntu 23.10 is not supported due to Python library issues).<\/li>\n<li>Hardware Virtualization: Enable virtualization in your BIOS\/UEFI settings or within your virtualization software (e.g., VMware or VirtualBox).<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\"><strong>2. Download the Repository<\/strong><\/h3>\n<p>Run the following commands in your home directory to download the PurpleLab repository and move the installation script:<\/p>\n<pre class=\"wp-block-code\"><code>git clone https:\/\/github.com\/Krook9d\/PurpleLab.git &amp;&amp; mv PurpleLab\/install.sh .<\/code><\/pre>\n<h3 class=\"wp-block-heading\"><strong>3. Start Installation<\/strong><\/h3>\n<p>Execute the installation script:<\/p>\n<pre class=\"wp-block-code\"><code>sudo bash install.sh<\/code><\/pre>\n<p>During the installation, you will be prompted to:<\/p>\n<ol class=\"wp-block-list\">\n<li>Choose whether to install the default ELK stack (recommended for first-time users).<\/li>\n<li>Select the network interface for the application.<\/li>\n<\/ol>\n<p><strong>Important Notes<\/strong>:<\/p>\n<ul class=\"wp-block-list\">\n<li>If you skip ELK installation, PHP errors may appear on the home page unless you edit the code.<\/li>\n<li>The lab is not hardened for security; avoid connecting it to sensitive networks without additional protections.<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\"><strong>4. Configure Accounts<\/strong><\/h3>\n<p>After installation:<\/p>\n<ol class=\"wp-block-list\">\n<li>Visit the server\u2019s IP address in a browser.<\/li>\n<li>Register a user account by filling in details such as name, password (minimum 8 characters with complexity), and avatar (&lt;1MB size).<\/li>\n<\/ol>\n<p>An admin account is created by default, with credentials stored in <code>admin.txt<\/code> in your home directory.<\/p>\n<h2 class=\"wp-block-heading\"><strong>Post-Installation Configuration<\/strong><\/h2>\n<h3 class=\"wp-block-heading\"><strong>1. ELK Stack Setup<\/strong><\/h3>\n<p>Run the following commands on the server to configure Elasticsearch and Kibana:<\/p>\n<pre class=\"wp-block-code\"><code>sudo \/usr\/share\/elasticsearch\/bin\/elasticsearch-create-enrollment-token --scope kibana<\/code><\/pre>\n<p>Copy the token into Kibana (accessible via the \u201cHunting\u201d page). When prompted for a verification code, generate it using:<\/p>\n<pre class=\"wp-block-code\"><code>sudo \/usr\/share\/kibana\/bin\/kibana-verification-code<\/code><\/pre>\n<p>Restart Elasticsearch if needed:<\/p>\n<pre class=\"wp-block-code\"><code>service elasticsearch restart<\/code><\/pre>\n<h3 class=\"wp-block-heading\"><strong>2. Windows VM Logs Configuration<\/strong><\/h3>\n<ol class=\"wp-block-list\">\n<li>Connect to the Windows VM using its IP address (visible on the \u201cHealth\u201d page).<\/li>\n<li>Edit <code>winlogbeats.yml<\/code> on the VM to update:<\/li>\n<\/ol>\n<ul class=\"wp-block-list\">\n<li>Password: Use the \u201celastic built-in superuser\u201d password from <code>admin.txt<\/code>.<\/li>\n<li>IP addresses: Replace placeholders with your ELK server\u2019s IP.<\/li>\n<li>CA fingerprint: Generate it on the PurpleLab server with: <code>sudo openssl x509 -fingerprint -sha256 -in \/etc\/elasticsearch\/certs\/http_ca.crt | awk -F '=' '\/Fingerprint\/{print $2}' | tr -d ':'<\/code>\n<\/li>\n<\/ul>\n<ol class=\"wp-block-list\">\n<li>Test and set up Winlogbeat configuration using PowerShell commands.<\/li>\n<li>Restart the VM and take a snapshot named \u201cSnapshot1\u201d:<\/li>\n<\/ol>\n<pre class=\"wp-block-code\"><code>   sudo VBoxManage snapshot \"sandbox\" take \"Snapshot1\" --description \"snapshot before the mess\"<\/code><\/pre>\n<h2 class=\"wp-block-heading\"><strong>Using PurpleLab<\/strong><\/h2>\n<h3 class=\"wp-block-heading\"><strong>1. Launch Services<\/strong><\/h3>\n<p>Start PurpleLab\u2019s Flask backend:<\/p>\n<pre class=\"wp-block-code\"><code>sudo python3 \/home\/$(logname)\/app.py<\/code><\/pre>\n<p>Ensure the VM is running:<\/p>\n<pre class=\"wp-block-code\"><code>sudo VBoxManage startvm sandbox --type headless<\/code><\/pre>\n<p>Alternatively, manage services from the \u201cHealth Page.\u201d<\/p>\n<h3 class=\"wp-block-heading\"><strong>2. Explore Features<\/strong><\/h3>\n<p>PurpleLab provides multiple pages for different functionalities:<\/p>\n<ul class=\"wp-block-list\">\n<li>\n<strong>Home Page<\/strong>: Monitor KPIs like event counts and detected MITRE ATT&amp;CK techniques.<\/li>\n<li>\n<strong>Hunting Page<\/strong>: Redirects to Kibana for log analysis.<\/li>\n<li>\n<strong>MITRE ATT&amp;CK Page<\/strong>: Simulate attack techniques using Invoke-Atomic tools.<\/li>\n<li>\n<strong>Malware Page<\/strong>: Download or upload malware samples for testing.<\/li>\n<li>\n<strong>Log Simulation Page<\/strong>: Generate logs (e.g., firewall) for analysis.<\/li>\n<li>\n<strong>Usage Case Page<\/strong>: Execute predefined compromise scenarios.<\/li>\n<li>\n<strong>Sigma Page<\/strong>: Search and convert Sigma rules into Splunk or Lucene queries.<\/li>\n<li>\n<strong>Health Page<\/strong>: Monitor resources and manage components like Kibana and VirtualBox.<\/li>\n<\/ul>\n<p>By completing these steps, you can fully install and utilize PurpleLab as a cybersecurity lab for testing detection rules, simulating attacks, and analyzing logs effectively.<\/p>\n<h2 class=\"wp-block-heading\"><strong>A Tool for Cybersecurity Enthusiasts<\/strong><\/h2>\n<p>PurpleLab fills a critical gap in cybersecurity training by offering an accessible platform for hands-on practice in threat detection and response. <\/p>\n<p>With features like malware execution, log simulation, and MITRE ATT&amp;CK integration, it provides analysts with valuable resources to sharpen their skills. For more information or to download PurpleLab, visit its <a href=\"https:\/\/github.com\/Krook9d\/TA-Purplelab-Splunk\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">GitHub repository<\/a>.<\/p>\n<p>The post <a href=\"https:\/\/cybersecuritynews.com\/purplelab\/\">PurpleLab \u2013 A Free Cybersecurity Lab for Security Teams to Detect, Analyze &amp; Simulate Threats<\/a> appeared first on <a href=\"https:\/\/cybersecuritynews.com\/\">Cyber Security News<\/a>.<\/p>\n<\/div>\n<p> \t<BR><br \/>\n <BR><\/BR><br \/>\n    Balaji N<br \/>\n \t<BR><br \/>\n<BR><\/BR><br \/>\n<a href=\"https:\/\/cybersecuritynews.com\/purplelab\/\">Go to cyber-security-news<\/a><br \/>\n \t<BR><br \/>\n <BR><\/BR><\/p>\n","protected":false},"excerpt":{"rendered":"<p>PurpleLab \u2013 A Free Cybersecurity Lab for Security Teams to Detect, Analyze &#038; Simulate Threats In a significant step forward for cybersecurity professionals, PurpleLab offers an innovative open-source cybersecurity lab for creating and testing detection rules, simulating logs, and running malware tests. Designed as an all-in-one lab environment, PurpleLab equips analysts with tools to enhance [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[129,63,647],"tags":[130],"class_list":["post-2029","post","type-post","status-publish","format-standard","hentry","category-cyber-security","category-cyber-security-news","category-what-is","tag-cyber-security-news"],"_links":{"self":[{"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/posts\/2029"}],"collection":[{"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/comments?post=2029"}],"version-history":[{"count":0,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/posts\/2029\/revisions"}],"wp:attachment":[{"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/media?parent=2029"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/categories?post=2029"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/tags?post=2029"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}