One Navy commander was reviewing how well his subordinates clean their uniform every morning at the training camp. And no matter how hard the soldiers tried, the commander always ended up punishing somebody by ordering them to swim in the ocean, roll over the sand, and keep going in wet dirty uniform until the rest of the day. When the training came to end, the commander confessed: the guys had been perfectly clean every single morning. 

The “punishment” had another purpose. The commander wanted to teach his trainees that it doesn’t matter how well prepared you are, because something still can go wrong and you should be ready for this. 

The JatApp team shares the same mentality when it comes to IT outsourcing security. Customers are reasonably concerned about securing their software products, which is why it’s our duty to calm everybody down and take the brunt of data protection on our shoulders. In this article, we’re going to describe what we do to protect your software from hackers, so you can be sure that your business is ready for any scenario. 

 

Security issues

What JatApp does to secure clients’ products

Feeling concerned about your app’s security doesn’t necessarily mean that you are overreacting to a possible threat of cyber attacks. All controversial stories about data leaks aren’t fictional: real people and businesses suffer from fraudsters every day. 

To assure you that JatApp takes a serious care of data security, we’ll describe the activities and preventive measures our development teams take. Some of these solutions may seem unfamiliar to you, so we invited Dmytro, our Web Development Team Lead, to explain how this or that action helps to secure products of JatApp’s clients.   

Monitoring

The JatApp team always keeps an eye on the operating system and its components to control the data security. We use threat detection tools that enable our teams to prevent any security incident as soon as it emerges. 

 

need for cloud security monitoring

 

When we get a notification about any suspicious activity or even a fraudster attempting to hijack the system, we block the system access for them. On top of that, our teams do their own trick with hackers — imitate the access data and let fraudsters acquire it and start following a false trace. 

Aside from real-time monitoring, we can provide our clients with a security audit of the app’s code and its infrastructure conducted by a third party to objectively evaluate the information security in the application. 

HTTPS encryption

Our teams use Hypertext Transfer Protocol Secure (HTTPS) to encrypt data between the application and external sources connected to the app via application programming interfaces (APIs)

 

HTTPS

 

Here’s a word from Dmytro in this regard: “The backend of any app connects to a user’s device frontend with APIs. That’s where the data can potentially leak if it’s not encrypted by using Transport Layer Security and Secure Sockets Layer certificates. By using HTTPS we ensure that these certificates encrypt the data going back and forth throughout the requested API, and nobody can intercept it”. 

Strong authentication and authorization

User authentication and authorization are obviously the linchpins of security strategy for any application. The JatApp team takes three major steps to protect a client’s product in this respect: strong security groups, passwords with the highest level of protection and localhost access only, and Bearer authentication for API requests. 

Strong security groups is a tool available at Amazon Web Services (AWS) to protect inbound and outbound data for a group of chosen users attached to a relatable cloud instance. All users registered with an application belong to this strong security group, and we’ll notice any outside intruder. 

 

Security Groups AWS

 

In addition, we add specific rules that control the traffic within the system. In case any of these rules are violated, we immediately recognize a cyber threat. “We can set any rules to control the access. For example, we can set the rule that a user X with the IP address Y cannot get an access to a cloud server Z” — Dmytro explains. 

As for passwords, JatApp sets clear requirements to password complexity at MySQL database: every password should include a minimal number of symbols, and only specific symbols are allowed for a password generation. Apart from that, access to MySQL is available only to the localhost, which means that hackers can’t reach the database directly even though they managed to breach the system. 

The Bearer, or so-called token authentication, means that every user who logs in an application gets an encrypted token that identifies authorization. Our Web Development Team Lead comments on this:“Token is assigned to a user as a response to a successful login process, which means that nobody can authorize in the system without having valid login credentials. If you don’t have a registered login and password you won’t pass”. 

 

Tokenization

 

API management

Since APIs connect the backend with the frontend, it’s essential to control the data exchange throughout APIs to prevent any leaks. JatApp software developers do it in several ways.

First, our teams set up API responses in a way that provides only necessary information. As a result, a device gets just enough data to process a user’s request while the database is secured from leaking any additional information. Additionally, we also encrypt all API responses and don’t use any external channels to connect the app’s backend and its cloud infrastructure to avoid data leaks. 

Second, we use tools for validating API parameters to create flawless system responses. “When APIs are invalid, the system responds slowly or may even face errors, which creates a room for loopholes nobody, except for fraudsters, needs” — notes Dmytro. 

 

API

 

Third, we log any API activity to review it in case an attempt of data breach eventually happens. By reviewing the activity log, we can determine the algorithm, according to which hackers wanted to interfere with the application. 

Use of bcrypt hashing algorithm

Even though we set the highest requirements possible to the password generation, user credentials require additional protection. That’s why our software engineers use a bcrypt hashing algorithm. 

This algorithm encrypts passwords with adding a so-called “salt” — a string of additional symbols to make passwords harder to decipher. Hackers face serious difficulties with breaking users’ passwords and can’t access the application.

 

bcrypt hashing

 

Port changing

Since the majority of apps use cloud servers, it’s super important to protect them from intrusion via Secure Shell (SSH) that enables software developers to control the server remotely. At the same time, it’s a convenient way for hackers to access the application’s backend. 

 

Port changing

 

In order to minimize these risks, our teams constantly change the backend’s ports addresses. “You can’t be sure when a fraudster attacks the system, which is why changing ports from time to time forces them to spend much effort. In such a way, we try to be one step ahead than potential hackers” — says our Web Development Team Lead. 

JatApp is the reason why fraudsters are going insane

Whatever hackers do, we’re ready to protect your application. Nobody is perfect, but the JatApp team always reacts immediately when any data security risk emerges. 

Our company has been assisting various businesses with their digital transformation since 2015, and 99% of our clients can confirm that we delivered them software products that are totally secure. 

By cooperating with us, you won’t have to worry about data security of your product. Tell us about your project today and let’s build something great together.