👶Introduction to Web Applications

Web Applications vs. Websites

Here are the different layouts of a web app:

Category

Description

Web Application Infrastructure

Describes the structure of required components, such as the database, needed for the web application to function as intended. Since the web application can be set up to run on a separate server, it is essential to know which database server it needs to access.

Web Application Components

The components that make up a web application represent all the components that the web application interacts with. These are divided into the following three areas: UI/UX, Client, and Server components.

Web Application Architecture

Architecture comprises all the relationships between the various web application components.

For the infrastructure part, web apps can choose different models such as:

  • Client-Server

  • One Server

the riskiest design since all eggs are in one basket

  • Many Servers - One Database

It allows different web apps access to the same data without syncing the data between them.

  • Many Servers - Many Databases

if any web server or database goes offline, a backup will run in its place to reduce downtime as much as possible

Front End vs. Back End

The front end includes everything that the user sees and interacts with, like the page's main elements such as the title and text HTML, the design and animation of all elements CSS, and what function each part of a page performs JavaScript.

Whereas the back end drives all of the core web application functionalities, all of which is executed at the back end server, which processes everything required for the web application to run correctly.

Here are the four main back end components for web apps:

Component

Description

Back end Servers

The hardware and operating system that hosts all other components and are usually run on operating systems like Linux, Windows, or using Containers.

Web Servers

Web servers handle HTTP requests and connections. Some examples are Apache, NGINX, and IIS.

Databases

Databases (DBs) store and retrieve the web application data. Some examples of relational databases are MySQL, MSSQL, Oracle, PostgreSQL, while examples of non-relational databases include NoSQL and MongoDB.

Development Frameworks

Development Frameworks are used to develop the core Web Application. Some well-known frameworks include Laravel (PHP), ASP.NET (C#), Spring (Java), Django (Python), and Express (NodeJS JavaScript).

Here are the 20 most comment in web apps:

No.

Mistake

1.

Permitting Invalid Data to Enter the Database

2.

Focusing on the System as a Whole

3.

Establishing Personally Developed Security Methods

4.

Treating Security to be Your Last Step

5.

Developing Plain Text Password Storage

6.

Creating Weak Passwords

7.

Storing Unencrypted Data in the Database

8.

Depending Excessively on the Client Side

9.

Being Too Optimistic

10.

Permitting Variables via the URL Path Name

11.

Trusting third-party code

12.

Hard-coding backdoor accounts

13.

Unverified SQL injections

14.

Remote file inclusions

15.

Insecure data handling

16.

Failing to encrypt data properly

17.

Not using a secure cryptographic system

18.

Ignoring layer 8

19.

Review user actions

Last updated