<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Adekunle Oluwafemi Joshua on Medium]]></title>
        <description><![CDATA[Stories by Adekunle Oluwafemi Joshua on Medium]]></description>
        <link>https://medium.com/@joshuaphilips329?source=rss-67bee52886a9------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/0*AXJNm18_7AN39jfV</url>
            <title>Stories by Adekunle Oluwafemi Joshua on Medium</title>
            <link>https://medium.com/@joshuaphilips329?source=rss-67bee52886a9------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 01:15:19 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@joshuaphilips329/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Security Engineering / Architecture
Hands-On Learning Documentation]]></title>
            <link>https://medium.com/@joshuaphilips329/security-engineering-architecture-hands-on-learning-documentation-97922a8aca86?source=rss-67bee52886a9------2</link>
            <guid isPermaLink="false">https://medium.com/p/97922a8aca86</guid>
            <dc:creator><![CDATA[Adekunle Oluwafemi Joshua]]></dc:creator>
            <pubDate>Fri, 11 Sep 2026 17:15:50 GMT</pubDate>
            <atom:updated>2026-09-11T17:15:50.139Z</atom:updated>
            <content:encoded><![CDATA[<h3><strong>Progress Documentation — Linux, Networking &amp; DNS Foundations</strong></h3><p><strong>1. Security Fundamentals</strong></p><p><strong>CIA Triad</strong></p><p><strong>Confidentiality: </strong>Protecting information from unauthorized access or disclosure.</p><p><strong>Integrity: </strong>Protecting information from unauthorized modification or destruction.</p><p><strong>Availability: </strong>Ensuring systems and information are accessible when needed.</p><p><strong>Threats, Vulnerabilities, Assets and Risk</strong></p><p><strong>Asset: </strong>Something valuable that needs protection, such as data, systems, accounts or services.</p><p><strong>Threat: </strong>A potential cause of harm to an asset.</p><p><strong>Vulnerability: </strong>A weakness that could be exploited by a threat.</p><p><strong>Risk: </strong>The potential for a threat to exploit a vulnerability and cause harm.</p><p><strong>Authentication vs Authorization</strong></p><p>Authentication answers: “Who are you?”</p><p>Authorization answers: “What are you allowed to do?”</p><p><strong>Defense in Depth</strong></p><p>Defense in depth uses multiple layers of security controls so that if one control fails, other controls can still reduce the impact of an attack.</p><p><strong>Security Controls</strong></p><p><strong>Preventive: </strong>Designed to stop or reduce an unwanted event before it occurs.</p><p><strong>Detective: </strong>Designed to identify suspicious or unwanted activity.</p><p><strong>Corrective: </strong>Designed to restore or improve the system after an incident.</p><p><strong>2. Linux Users, Groups and Permissions</strong></p><p>The hands-on lab uses an Ubuntu-based Docker environment with a non-root user named analyst. Running the lab as a non-root user reinforces least privilege.</p><p>Important permission concepts learned:</p><p>File permissions are divided into owner, group and others.</p><p>r = read, w = write, x = execute.</p><p>Numeric permissions such as 700 and 777 represent combinations of these permissions.</p><p>777 grants read, write and execute permissions to owner, group and others and should not be used unnecessarily.</p><p>Restricting permissions is an application of the principle of least privilege.</p><p><strong>3. Processes and Process Investigation</strong></p><p>Commands practiced:</p><p><strong>ps: </strong>Shows processes associated with the current terminal/session.</p><p><strong>ps aux: </strong>Shows a detailed process list including users and command lines.</p><p><strong>ps -ef: </strong>Shows processes with parent-process relationships and command information.</p><p><strong>ps -eo pid,user,stat,cmd: </strong>Displays selected process fields useful for investigation.</p><p><strong>ps -p 1 -f: </strong>Inspects a specific process in detail, including PID 1.</p><p><strong>Process IDs and Parent Processes</strong></p><p>PID identifies a process. PPID identifies the process that created or launched it. Understanding process relationships helps a security engineer investigate what is running and how processes were started.</p><p>Process states encountered:</p><p><strong>R: </strong>Running or runnable.</p><p><strong>S: </strong>Sleeping/waiting.</p><p><strong>s: </strong>Session leader.</p><p><strong>+: </strong>Foreground process group.</p><p><strong>4. Services, Ports and Attack Surface</strong></p><p>A network service that listens for connections creates a potential point of exposure. Security engineering therefore includes identifying unnecessary services and reducing the attack surface.</p><p><strong>Ports Discussed</strong></p><p><strong>21/TCP — FTP: </strong>File transfer; should be disabled/removed when not required.</p><p><strong>22/TCP — SSH: </strong>Remote administration.</p><p><strong>80/TCP — HTTP: </strong>Unencrypted web traffic; may be intentionally used for redirects.</p><p><strong>443/TCP — HTTPS: </strong>Encrypted web traffic.</p><p><strong>53/UDP — DNS: </strong>Common DNS transport; DNS can also use TCP in some situations.</p><p><strong>Socket Inspection</strong></p><p><strong>ss -tuln: </strong>Lists listening TCP/UDP sockets without resolving names.</p><p><strong>ss -tulnp: </strong>Adds process information where available.</p><p>The lab was checked for listening sockets and showed no active listeners at the time of the exercise. This demonstrated how a security engineer can inspect exposed services.</p><p><strong>5. IP Addressing and Network Interfaces</strong></p><p><strong>Interfaces Observed in the Ubuntu VM</strong></p><p><strong>lo — 127.0.0.1/8: </strong>Loopback interface; the machine communicating with itself.</p><p><strong>enp0s3–10.0.2.15/24: </strong>Main VM network interface.</p><p><strong>docker0–172.17.0.1/16: </strong>Docker bridge interface used for Docker networking.</p><p><strong>Private and Loopback Addressing</strong></p><p>127.0.0.1 is a loopback address and does not represent the VM’s external network address. 10.0.2.15 is the VM’s main network address in the observed setup. Docker uses the 172.17.0.0/16 network.</p><p><strong>Routing</strong></p><p>The observed route table included:</p><p>default via 10.0.2.2 dev enp0s3 — default gateway.</p><p>10.0.2.0/24 dev enp0s3 — local network.</p><p>172.17.0.0/16 dev docker0 — Docker network.</p><p>When traffic is destined for a network without a more specific route, the system uses the default route and sends the traffic toward the default gateway.</p><p><strong>6. TCP and UDP</strong></p><p>TCP is connection-oriented and designed for reliable, ordered delivery. UDP is connectionless and has lower protocol overhead but does not provide TCP’s built-in reliability and ordering.</p><p>Examples learned:</p><p>SSH commonly uses TCP port 22.</p><p>HTTPS commonly uses TCP port 443.</p><p>DNS commonly uses UDP port 53, while TCP can be used in specific cases.</p><p><strong>7. DNS Fundamentals</strong></p><p>DNS (Domain Name System) translates human-readable domain names into information such as IP addresses. This allows users and applications to use names such as google.com instead of manually using IP addresses.</p><p><strong>Local DNS Resolver</strong></p><p>The Ubuntu system used 127.0.0.53 as its local DNS stub resolver. The “#53” notation identifies DNS port 53.</p><p><strong>DNS Lookups Practiced</strong></p><p><strong>nslookup fb.com: </strong>Returned IPv4 and IPv6 addresses for the domain.</p><p><strong>nslookup google.com: </strong>Returned IPv4 and IPv6 addresses.</p><p><strong>nslookup -type=MX google.com: </strong>Returned an MX record pointing to smtp.google.com with priority 10.</p><p><strong>nslookup -type=A google.com: </strong>Returned multiple IPv4 addresses.</p><p><strong>nslookup -type=AAAA google.com: </strong>Returned multiple IPv6 addresses.</p><p><strong>nslookup -type=CNAME </strong><a href="http://www.google.com/"><strong>www.google.com:</strong></a><strong> </strong>Returned SERVFAIL from the local resolver during the exercise.</p><p><strong>DNS Record Types</strong></p><p><strong>A: </strong>Maps a hostname/domain to an IPv4 address.</p><p><strong>AAAA: </strong>Maps a hostname/domain to an IPv6 address.</p><p><strong>MX: </strong>Identifies mail-exchange servers responsible for email delivery for a domain.</p><p><strong>CNAME: </strong>Creates an alias from one hostname to another hostname.</p><p><strong>DNS Response Concepts</strong></p><p><strong>Non-authoritative answer: </strong>The response came through a resolver rather than directly from the domain’s authoritative DNS server.</p><p><strong>SERVFAIL: </strong>The resolver failed to successfully complete a DNS query; it does not automatically mean the website is down.</p><p><strong>NXDOMAIN: </strong>Indicates that the requested DNS name/domain does not exist.</p><p><strong>Timeout: </strong>A response was not received within the expected time.</p><p><strong>8. ICMP and Ping</strong></p><p>ICMP (Internet Control Message Protocol) is used for network control, diagnostics and error reporting. The ping utility commonly uses ICMP Echo Request and Echo Reply messages.</p><p><strong>External Connectivity Test</strong></p><p>Command used:</p><p><strong><em>ping -c 4 8.8.8.8</em></strong></p><p>Observed result: 4 packets transmitted, 4 received, 0% packet loss, with an average round-trip time of approximately 59 ms.</p><p><strong>Loopback Connectivity Test</strong></p><p>Command used:</p><p><strong><em>ping -c 4 127.0.0.1</em></strong></p><p>Observed result: 4 packets transmitted, 4 received, 0% packet loss, with an average round-trip time of approximately 0.077 ms.</p><p>The much lower loopback latency is expected because the traffic remains within the local machine rather than traveling through the external network.</p><p><strong>Understanding Ping Output</strong></p><p><strong>Packets transmitted: </strong>Number of ICMP packets sent.</p><p><strong>Packets received: </strong>Number of replies received.</p><p><strong>Packet loss: </strong>Percentage of sent packets for which no reply was received.</p><p><strong>time: </strong>Round-trip response time for an individual packet.</p><p><strong>rtt min/avg/max: </strong>Minimum, average and maximum round-trip times.</p><p><strong>TTL: </strong>Time To Live; a packet field that limits how many network hops a packet can make.</p><p>A successful ping confirms ICMP reachability for that test, but a failed ping does not automatically prove that a host is offline because ICMP may be filtered or blocked.</p><p><strong>9. Network Exposure: 127.0.0.1 vs 0.0.0.0</strong></p><p><strong>127.0.0.1: </strong>Loopback; a service bound here is intended for local access.</p><p><strong>0.0.0.0: </strong>All available IPv4 interfaces for a listening service.</p><p>If an application only needs to be accessed locally, binding it to 127.0.0.1 generally reduces network exposure compared with binding it to 0.0.0.0.</p><p>This connects least privilege to networking: a service should be reachable only from the interfaces and networks where access is actually required.</p><p><strong>10. Security Engineering Lessons From the Lab</strong></p><p>Understand what a command does before relying on it.</p><p>Reduce attack surface by removing or restricting unnecessary services.</p><p>Use least privilege for both users and network exposure.</p><p>Inspect processes, ports, interfaces and routes when investigating a system.</p><p>Use DNS information to understand how services and infrastructure are organized.</p><p>Treat DNS and ICMP results as evidence that must be interpreted in context.</p><p>A single successful or failed network test does not prove the complete health or security of a system.</p><p>Hands-on commands should reinforce the underlying security concepts rather than replace conceptual learning.</p><p><strong>11. Current Learning Position</strong></p><p>Current focus: Security Engineering / Architecture — Linux and Networking Foundations. The next practical topic is deeper inspection of listening addresses, ports and services using ss, with the concept explained first and the hands-on operation performed one step at a time.</p><p><strong>12. Personal Learning Method</strong></p><p>The preferred learning workflow is: learn the concept → understand the security relevance → perform one hands-on operation → interpret the output → complete a knowledge check → apply the concept to a small security task.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=97922a8aca86" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[My Cybersecurity Journey: Week 1 — Building the Security Foundations]]></title>
            <link>https://medium.com/@joshuaphilips329/my-cybersecurity-journey-week-1-building-the-security-foundations-5334656cdca7?source=rss-67bee52886a9------2</link>
            <guid isPermaLink="false">https://medium.com/p/5334656cdca7</guid>
            <category><![CDATA[network-security]]></category>
            <category><![CDATA[devsecops]]></category>
            <category><![CDATA[information-security]]></category>
            <category><![CDATA[cybersecurity]]></category>
            <category><![CDATA[linux]]></category>
            <dc:creator><![CDATA[Adekunle Oluwafemi Joshua]]></dc:creator>
            <pubDate>Sun, 30 Aug 2026 21:04:27 GMT</pubDate>
            <atom:updated>2026-08-30T21:04:27.642Z</atom:updated>
            <content:encoded><![CDATA[<p>I’ve officially started my cybersecurity learning journey with a <strong>Security Engineering / Architecture</strong> focus.</p><p>My goal is not simply to learn cybersecurity tools or memorize commands. I want to understand <strong>why security controls exist, how systems can be protected, how risks are identified, and how security decisions are made</strong>.</p><p>I’m committing approximately <strong>15 hours per week</strong> to structured learning, combining theory with hands-on practice in a controlled Linux and Docker lab environment.</p><p>This is my documentation of what I’ve learned and practiced so far.</p><h3>1. Understanding Cybersecurity</h3><p>One of the first things I learned is that cybersecurity is much broader than simply “hacking.”</p><p>Cybersecurity involves protecting:</p><ul><li>Systems</li><li>Networks</li><li>Applications</li><li>Devices</li><li>Data</li><li>Users</li><li>Business operations</li></ul><p>from unauthorized access, modification, disruption, destruction, or other forms of harm.</p><p>The mindset I’m beginning to develop is:</p><blockquote><strong><em>What are we protecting? What could threaten it? What weaknesses exist? What is the risk? And what controls can reduce that risk?</em></strong></blockquote><p>This way of thinking is particularly important for someone pursuing security engineering.</p><h3>2. The CIA Triad</h3><p>One of the first foundational concepts I studied was the <strong>CIA Triad</strong>.</p><p>CIA stands for:</p><h3>Confidentiality</h3><p>Confidentiality means ensuring that information is only accessible to people or systems that are authorized to access it.</p><p>Examples of controls that support confidentiality include:</p><ul><li>Passwords</li><li>Access controls</li><li>Encryption</li><li>File permissions</li></ul><p>A confidentiality violation could occur if an unauthorized person gains access to confidential customer information.</p><h3>Integrity</h3><p>Integrity means ensuring that information remains accurate, trustworthy, and protected from unauthorized modification.</p><p>For example, if someone changes a company’s financial records without authorization, the integrity of that information has been compromised.</p><p>Controls that help protect integrity include:</p><ul><li>Hashing</li><li>Digital signatures</li><li>Access controls</li><li>File permissions</li><li>Audit logs</li></ul><h3>Availability</h3><p>Availability means ensuring that authorized users can access systems and information when they need them.</p><p>For example, if a company’s website becomes unavailable because of an attack, availability has been affected.</p><p>Controls that support availability include:</p><ul><li>Backups</li><li>Redundancy</li><li>Disaster recovery</li><li>Load balancing</li><li>DDoS protection</li></ul><h3>My takeaway</h3><p>I learned to remember the CIA Triad with three simple questions:</p><p><strong>Confidentiality:</strong> Who can see it?</p><p><strong>Integrity:</strong> Can I trust that it hasn’t been changed?</p><p><strong>Availability:</strong> Can I access it when I need it?</p><h3>3. Assets, Threats, Vulnerabilities and Risk</h3><p>After learning the CIA Triad, I started looking at cybersecurity from a risk perspective.</p><h3>Assets</h3><p>An asset is something valuable that needs protection.</p><p>Examples include:</p><ul><li>Customer information</li><li>Servers</li><li>Applications</li><li>Laptops</li><li>Databases</li><li>Network infrastructure</li><li>Intellectual property</li></ul><p>The question I ask is:</p><blockquote><strong><em>What are we trying to protect?</em></strong></blockquote><h3>Threats</h3><p>A threat is something that could potentially cause harm to an asset.</p><p>Examples include:</p><ul><li>Attackers</li><li>Malware</li><li>Phishing</li><li>Insider misuse</li><li>Hardware failures</li><li>Natural disasters</li></ul><p>The question becomes:</p><blockquote><strong><em>What could hurt this asset?</em></strong></blockquote><h3>Vulnerabilities</h3><p>A vulnerability is a weakness that could potentially be exploited.</p><p>Examples include:</p><ul><li>Weak passwords</li><li>Unpatched software</li><li>Misconfigured systems</li><li>Excessive permissions</li><li>Exposed services</li></ul><p>The question becomes:</p><blockquote><strong><em>What weakness could allow the threat to succeed?</em></strong></blockquote><h3>Risk</h3><p>Risk represents the possibility that a threat could exploit a vulnerability and cause harm.</p><p>A simple way of thinking about it is:</p><p><strong>Risk ≈ Likelihood × Impact</strong></p><p>For example:</p><p><strong>Asset:</strong> Customer information</p><p><strong>Threat:</strong> Attacker</p><p><strong>Vulnerability:</strong> Outdated software with a known weakness</p><p><strong>Risk:</strong> Unauthorized access</p><p><strong>Potential impact:</strong> Customer data compromise</p><p>This helped me understand that simply finding a vulnerability isn’t the end of a security assessment. I need to understand <strong>what asset is affected, what could exploit the weakness, and what the consequences could be.</strong></p><h3>4. Authentication vs Authorization</h3><p>Another important distinction I learned is the difference between authentication and authorization.</p><h3>Authentication</h3><p>Authentication answers:</p><blockquote><strong><em>Who are you?</em></strong></blockquote><p>Examples include:</p><ul><li>Passwords</li><li>PINs</li><li>Fingerprints</li><li>Security keys</li><li>Multi-factor authentication</li></ul><p>When I log into a system using my credentials, the system is authenticating my identity.</p><h3>Authorization</h3><p>Authorization answers:</p><blockquote><strong><em>What are you allowed to do?</em></strong></blockquote><p>For example, a user may be authorized to:</p><ul><li>View a file</li><li>Submit reports</li><li>Access a particular application</li></ul><p>but may not be authorized to:</p><ul><li>Delete the database</li><li>Modify administrator accounts</li><li>Access confidential information belonging to another department</li></ul><h3>Easy way to remember:</h3><p><strong>Authentication = WHO?</strong></p><p><strong>Authorization = WHAT CAN YOU DO?</strong></p><h3>5. The Principle of Least Privilege</h3><p>One of the most important security principles I learned is <strong>least privilege</strong>.</p><p>Least privilege means giving a user, application, or system <strong>only the permissions required to perform its legitimate task — and no more.</strong></p><p>For example, if an employee only needs to read a document, there is no reason to give that employee:</p><ul><li>Write access</li><li>Delete access</li><li>Administrator privileges</li></ul><p>Giving unnecessary permissions increases the potential damage if that account is compromised.</p><p>This concept became especially relevant during my Linux hands-on work.</p><h3>6. Defense in Depth</h3><p>I also learned about <strong>defense in depth</strong>.</p><p>The basic idea is simple:</p><blockquote><strong><em>Don’t depend on a single security control.</em></strong></blockquote><p>A company could protect a server using multiple layers:</p><ol><li>Firewall</li><li>Strong authentication</li><li>Least-privilege permissions</li><li>Endpoint security</li><li>Monitoring and logging</li><li>Backups</li></ol><p>If one layer fails, the other layers can still provide protection.</p><p>This changed how I think about security.</p><p>Instead of asking:</p><blockquote><em>“What security solution do we have?”</em></blockquote><p>I should also ask:</p><blockquote><strong><em>“What happens if that security control fails?”</em></strong></blockquote><p>That is a much more useful security engineering mindset.</p><h3>7. Preventive, Detective and Corrective Controls</h3><p>I learned to classify security controls into three basic categories.</p><h3>Preventive Controls</h3><p>Designed to stop an unwanted event from occurring.</p><p>Examples:</p><ul><li>Firewalls</li><li>Strong passwords</li><li>Access controls</li><li>MFA</li></ul><h3>Detective Controls</h3><p>Designed to identify suspicious activity or determine that something has happened.</p><p>Examples:</p><ul><li>Security logs</li><li>Intrusion detection</li><li>Monitoring</li><li>Alerts</li></ul><h3>Corrective Controls</h3><p>Designed to fix or restore a system after an incident.</p><p>Examples:</p><ul><li>Restoring from backups</li><li>Patching vulnerable software</li><li>Removing malware</li><li>Rebuilding a compromised system</li></ul><p>The simple model I use is:</p><blockquote><strong><em>Prevent → Detect → Correct</em></strong></blockquote><h3>8. Setting Up My Hands-On Security Environment</h3><p>To move beyond theory, I’ve been working with <strong>Ubuntu and Docker</strong> to create a controlled cybersecurity learning environment.</p><p>My lab includes a Docker-based hardened security environment.</p><p>One of the important lessons here has been understanding the difference between my Ubuntu host environment and the Docker container.</p><p>Inside the hardened lab, I work as the:</p><p>analyst</p><p>user rather than automatically operating as root.</p><p>This reinforces the principle of <strong>least privilege</strong>.</p><h3>9. Linux Users, Groups and Privileges</h3><p>Inside the hardened lab, I checked my user identity.</p><p>The account had:</p><ul><li><strong>UID:</strong> 1001</li><li><strong>GID:</strong> 1001</li><li><strong>Group:</strong> analyst</li></ul><p>Most importantly, the account was <strong>not root</strong>.</p><p>Linux represents root with UID 0.</p><p>This gave me a practical demonstration of least privilege:</p><blockquote><em>A user doesn’t need unrestricted administrative privileges simply because they’re working on a security system.</em></blockquote><p>Understanding users, groups and privileges is going to become increasingly important as I progress into system security and security engineering.</p><h3>10. Linux File Permissions</h3><p>One of my first practical Linux security exercises involved file permissions.</p><p>I examined:</p><p>security-test.txt</p><p>Initially, its permissions were:</p><p>-rw-r--r--</p><p>This corresponds to:</p><p><strong>644</strong></p><p>Breaking that down:</p><ul><li>Owner → rw-</li><li>Group → r--</li><li>Others → r--</li></ul><p>The owner could read and write, while everyone else could read.</p><p>That might be acceptable for a public document, but it would be inappropriate for a file containing confidential information.</p><h3>11. Identifying a Permission Vulnerability</h3><p>I then considered a scenario where the file contained sensitive customer information.</p><p>The security assessment was:</p><p><strong>Asset:</strong> Customer information</p><p><strong>Threat:</strong> Attacker</p><p><strong>Vulnerability:</strong> Excessive permissions allowing unauthorized users to read the file</p><p><strong>Risk:</strong> Unauthorized access to the information</p><p><strong>Potential impact:</strong> Data compromise</p><p>This was an important lesson because I wasn’t simply looking at the permission numbers. I was connecting the technical configuration to the actual security risk.</p><h3>12. Hardening the File</h3><p>Since the file should only be accessible by the analyst user, I changed its permissions from:</p><p>644</p><p>to:</p><p>600</p><p>I used:</p><pre>chmod 600 security-test.txt</pre><p>Afterwards, the permissions became:</p><p>-rw-------</p><p>This means:</p><p><strong>Owner:</strong> Read + Write</p><p><strong>Group:</strong> No access</p><p><strong>Others:</strong> No access</p><p>This was my first practical example of Linux security hardening.</p><h3>13. Understanding Linux Numeric Permissions</h3><p>During the exercise, I also learned how Linux converts permissions into numbers.</p><p>The basic values are:</p><p>PermissionValueRead (r)4Write (w)2Execute (x)1No permission (-)0</p><p>For example:</p><p>rwx = 4 + 2 + 1 = 7</p><p>rw- = 4 + 2 = 6</p><p>r-x = 4 + 1 = 5</p><p>r-- = 4</p><p>Therefore:</p><p>-rwxr-xr--</p><p>becomes:</p><p><strong>754</strong></p><p>And:</p><p>-rw-------</p><p>becomes:</p><p><strong>600</strong></p><p>I also learned that:</p><p>-rwx------</p><p>is:</p><p><strong>700</strong></p><h3>14. A Security Assessment Exercise</h3><p>I then analyzed the following permissions:</p><p>-rwxrwxrwx</p><p>This corresponds to:</p><p><strong>777</strong></p><p>That means the owner, group, and others all have:</p><ul><li>Read</li><li>Write</li><li>Execute</li></ul><p>For sensitive credentials, this would be a serious permissions problem.</p><p>The important lesson wasn’t simply that <strong>777 is bad</strong>.</p><p>The deeper lesson was:</p><blockquote><strong><em>Permissions should match the requirements of the asset.</em></strong></blockquote><p>A configuration should provide enough access for legitimate work while minimizing unnecessary privileges.</p><h3>15. What I’ve Learned So Far</h3><p>This first stage has already changed the way I look at cybersecurity.</p><p>I’m beginning to understand that cybersecurity isn’t only about attacking systems.</p><p>It’s also about:</p><ul><li>Understanding assets</li><li>Identifying threats</li><li>Finding vulnerabilities</li><li>Evaluating risk</li><li>Designing controls</li><li>Limiting privileges</li><li>Protecting confidentiality</li><li>Maintaining integrity</li><li>Ensuring availability</li><li>Monitoring systems</li><li>Planning for failure</li><li>Hardening configurations</li></ul><p>The biggest lesson so far is that <strong>security is a process of managing risk</strong>, not simply installing security tools.</p><h3>16. What’s Next?</h3><p>My learning plan is structured around approximately <strong>15 hours per week</strong>.</p><p>The next stage will take me deeper into Linux and networking.</p><p>Upcoming topics include:</p><ul><li>Linux processes</li><li>System services</li><li>Process monitoring</li><li>Networking fundamentals</li><li>IP addresses</li><li>TCP and UDP</li><li>Ports</li><li>DNS</li><li>HTTP/HTTPS</li><li>Firewalls</li><li>Network security controls</li><li>Practical network investigation</li></ul><p>Eventually, I’ll progress into areas such as:</p><ul><li>Secure system design</li><li>Network security architecture</li><li>Identity and access management</li><li>Cloud security</li><li>Security automation</li><li>Threat modeling</li><li>Vulnerability management</li><li>Detection and monitoring</li><li>Security architecture</li><li>Security engineering projects</li></ul><h3>Final Thoughts</h3><p>This is only the beginning of my cybersecurity journey.</p><p>I’m intentionally documenting the process — including mistakes, corrections, experiments, and lessons learned — because I want this to become more than a collection of certificates.</p><p>I want to be able to look back and see the progression from <strong>learning individual commands and concepts to understanding how secure systems are actually designed.</strong></p><p>For now, the foundation is being built one concept and one lab exercise at a time.</p><p><strong>Week 1: In progress. 🔒</strong></p><p>#Cybersecurity #SecurityEngineering #Linux #Docker #CyberSecurityLearning #InformationSecurity #DevSecOps #NetworkSecurity #CybersecurityJourney</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=5334656cdca7" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>