What is cybersecurity?
Cybersecurity is the work of keeping digital systems trustworthy when people, software and networks do things you didn't expect.
That definition is broad on purpose. It can include bank fraud, malware, phishing, cloud infrastructure, network defense, privacy, incident response and a dozen other specialisms. This handbook isn't trying to cover all of that.
This handbook is about application security for developers: the security of the code you write, review and ship.
That's enough to start. You don't have to learn every security job at once.
That means we care about questions like these:
- What happens if a user changes a hidden form field before sending it?
- Can one customer read another customer's order?
- What happens if a login token leaks?
- Can one route be called thousands of times until the app slows down?
- Does the server check the data, or does it only trust the browser?
Why these questions?
They sit inside the codebase, the API, the database query, the session cookie and the validation schema. That is the developer-sized part of cybersecurity this handbook teaches.
How we got here
The word is newer than the problem. Computers started as shared machines in labs, then moved into offices, homes, phones and payment systems. Once software began carrying money, identity and private records, breaking the software stopped being a prank and became a way to steal, spy, disrupt or impersonate.
The web sharpened that shift. A browser is a friendly front door, but it sends text your server has to interpret: URLs, headers, cookies, forms, JSON bodies, file uploads.
Every request is a little story the browser tells your server, and the server has to decide how much of it to believe.
Why developers need it
Early websites were mostly documents. You visited a page, read it, clicked a link and moved on. Modern web apps are different. They take payments, store personal data, manage identity, call APIs, upload files and make decisions on behalf of users.
A normal feature can become a security bug when it trusts the wrong thing. A search box can become an injection point. A profile page can leak someone else's data. A useful export button can become a denial-of-service problem if one request asks the database for too much work.
The good news is that most of this is learnable. You don't need to become a cryptographer or a network engineer to write safer backend code. You need a few habits:
- Notice where input enters the system.
- Check decisions on the server.
- Treat identity and permissions as separate questions.
- Think about what could go wrong before the feature ships.
- Know the common bug classes well enough to recognise them.
That is the path this handbook follows.
The server has to ask, "Do I know that myself?" That one question carries a lot of the course.
The path from here
The path starts with a simple idea: secure code begins with how we think.
That is why the first section starts with STRIDE and OWASP. STRIDE helps you ask what could go wrong while an app is still being designed. OWASP gives you names for the bugs that show up once real apps are running in the world.
First we build the mindset, then we move into the concrete developer work: unsafe input, XSS, SQL injection, validation, authentication, tokens, OAuth, rate limiting and throttling.
After that, the chapters turn those questions into code.
This isn't a full cybersecurity survey. We are not covering malware analysis, penetration-testing tooling, network defense, compliance frameworks or security operations.
Those topics matter. They sit outside the job this handbook is doing.
The job here is narrower and more practical: help you build backend applications that are harder to misuse, easier to reason about and safer to put in front of real users.
That means routes, schemas, cookies, tokens, queries and middleware. Plenty to learn, without pretending one handbook can teach every security field.
Where this goes next
The word is narrowed: application security, the code you write, review and ship. The scope is set, and the questions worth asking are on the table.
What's missing is the habit of asking them. How to think about security is where that starts, with trust boundaries and the reflex of looking at your own code the way somebody unfriendly would.

