Skip to main content

Posts

Server Security - Secure Your Website using. Htaccess file

What is .htaccess file . htaccess files provide a way to make configuration on a per-directory basis. In the .htaccess file, we provide directives to apply a configuration. When to use .htaccess Generally, this file should be used when you have no access to your server configuration file (httpd.conf). The best example would be shared hosting providers where you don’t get root access to make changes in httpd.conf file. In such scenarios .htaccess plays a very important role. In shared hosting, we make .htaccess files to secure our websites. We create this file on each directory to secure it from hackers or attackers. When to avoid .htaccess file We should not use this if we have access to our main configuration file. There are two main reasons to avoid the use of .htaccess file. The first of these is performance . When  AllowOverride  is set to allow the use of  .htaccess  files, httpd will look in every directory for  .htaccess  files. Thus, permitting  .htaccess  files cause a ...

Server Security - Hide PHP Version

The PHP Configuration by default shows the PHP version in HTTP server header X-Powered-By to display the version installed on the server. But for security reasons, it is generally recommended to hide the version info from attackers or hackers. Sometimes versions has some vulnerabilities which help the attackers to find loop holes and gain access to your system. If the attacker knows the PHP version then it would be easier for them to exploit and find security holes. Therefore in this article “ Server Security – Hide PHP Version ” I will be explaining how to hide PHP Version from the response header. Suggested Read: Secure Apache Web Server To hide the version we need to open php.ini file in the file editor. expose_php = On expose_php = Off You may find php.ini on the following locations Debian/Ubuntu – /etc/php/7.0/cli/php.ini CentOS – /etc/php.ini Now locate expose_php and sets its value to Off expose_php = off Save the file and exit. Afterwards re...

Server Security - Disable Directory Listing

Directory Listing Directory Listing is by default enabled in an apache server. This happens when there is no index.html file (default) available in the directory. If there is no index file available in the directory then doesn’t understand which file to display so it displays all the files and folders in the directory. Please see the below screenshot The above image index file is the default file that is under the website folder. So when I will access my localhost with the following address – localhost/website1 or 192.168.1.2/website 1 then it shows the following page. It is actually showing the website because Apache knows exactly which file to display i.e. index.html But in case I have renamed the index.html file to index1.html then let’s see what happens. So this time when I access my website1 folder again then it will show all the files and folders inside the website1 folder. Files & Folders List Prevention In order to prevent this, you need to disable direc...

Server Security - Apache Web Server Hardening

Whenever any request is made from client to server then it sends some headers from server to client or vice versa. So when we receive server response we get some headers that give some extra information about the server. This information or headers sometimes becomes vulnerable for hackers to break your server and get into it. In order to stop unauthorized access we secure our server. So in this article “Server Security – Apache Web Server Hardening” I will secure the apache server by removing the server details from response headers. This comes under the Banner Grabbing Attack . In the Banner Grabbing method, Hacker tries to identify the target system OS or server name and version to penetrate into the system. To understand this look at the image below. Server Details If you will look at the image you will find out, In server response headers we are actually getting the lots of details . We are getting the following items: 1. Server Name and Version (Apache &...

Android - Create Force Update App Module in 30 minutes

In the article “ Android – Create Force Update App Module in 30 minutes “. I will be using the firebase remote config for the app force update module. First, navigate to Firebase and login with your Google account . Once signing will be done you will be able to see Go to Console on the right top corner of the page. Click on Go to Console After entering into the console you will have to create a new project. Click on the Add Project button. Now on the next screen, you have to enter the project name and click on Continue to move further. On the next screen, You will be asked to enable google analytics on your project it is by default enable so just click on continue to move further. Click on continue Then on the next screen, you will be asked to select google account for google analytics . Select default account for Firebase if you don’t have already created an account. Otherwise, in the drop-down you will see your other account. For this example, I am usi...

Android - Show A Dialog From Service

In this article, I will be discussing how you can create a dialog from service. As we all know that service in android does not have any UI and it is intended for long-running background tasks. But sometimes it is required to show some information to the user when your app is running in the background. Today I will show you how you can implement this type of functionality in your application. Before starting the tutorial let me tell you about the special permission that we are going to use. Permission AndroidManifest.xml<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> This permission allows the app to use the system level window. AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.app.dialogfromservice"> <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> <appl...

Android - Create Root Checker App in Just 10 minutes

Today , I will show you how easily we can create a root checker app in android. It only takes 10 minutes to create this kind of application. activity_main.xml <?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="60dp" android:text="This app checks the rooting status of your phone" android:textAlignment="center" android:textSize="18sp...

Reset MySQL Root Password

Today, In this article we are going to learn how to “ Reset MySQL Root Password “. It is a good option to use this method only for resetting the password but it is highly insecure. So make sure after resetting the password, you also revert the changes from my.cnf file. Note: For Centos and Fedora Based OS sudo service mysqld stop sudo service mysqld start For Debian and Ubuntu OS sudo service mysql stop sudo service mysql start Steps Here i am using amazon linux 2 OS (based on centos) Stop mysql service – sudo service mysqld stop Open /etc/my.cnf file – sudo nano /etc/my.cnf Add skip-grant-tables under [mysqld] section Start MySql Service – sudo service mysqld start Open terminal and type mysql and type following query and press enter UPDATE mysql.user SET authentication_string=PASSWORD(‘Your new password’) WHERE User=’root’; Then write FLUSH PRIVILEGES; and press enter Now type – exit; Stop mysql service again – s...

Restore MySQL Database Without SQL Dump

Today in this article “ Restore MySQL Database Without SQL Dump ” we will discuss how you can restore your database when you don’t have SQL dump file. This happens when your MYSQL gets corrupted. In that case, if you want to make a back up of your database you can simply copy following files and then restore them after a fresh installation Let’s Start Generally MySQL gets installed on following location /var/lib/mysql On this location it create folders of your databases. For instance, if you have databases like test, test1, test2 Then on this location /var/lib/mysql – You will have three folders test, test1, test2. And each of these folders will contain database files for the MyISAM database. It will have three main files with the following extensions frm myi myd And another three files which will be inside in /var/lib/mysql. These files are for INNO DB database. ibdata1 ib_logfile0 ib_logfile1 Steps: Stop Mysql Service using – sudo service mysqld ...

How to Play PS3 Games On PC - Full Game Guide

Hi GuyZ, Today, I am going to show you , how to play PS3 Games on PC using RPCS3 Emulator. It is very easy to setup and play PS3 Games. I got to know about this emulator some time ago and i thought i should give it a try . Initially i was not sure that whether it would work or not. But at last it worked. I found it very to easy to setup and play  PS3 games . Although this emulator is still in development stage so you may encounter with some errors. I haven’t got any errors. In this tutorial, I am using PS3 PKG file. This emulator also supports dumping ps3 disc and ISO Images. Prerequisites: RPCS3 Emulator PS3 Update File Microsoft Visual C++ 2019 Redistributable PS3 .pkg and Rap File Important Tip Before downloading any game make sure it comes under the playable section of rpcs3 compatibility. To check which game you can play using RPCS3  click HERE . Games which are showing in Playable Section are actually the games which are in running state and can...

Devops - Docker Compose Part 1

1. version –   Version is the first attribute which your specify in your docker compose file. At the time of writing this post the latest version was 3.7 and which was introduced with docker engine  18.06.0+ version. If you will not specify the version you will probably get the error when you will try to run docker-compose up.   Example – version: ‘3.7’ 2. services  – This is the second attribute which we specify after version in our docker-compose.yaml file. It is also a mandatory attribute otherwise you will encounter an error. Under services attribute we specify our docker containers . You can specify any no. of docker containers inside this.  3. Service Name  – As we discussed under services attribute we specify our services name. For example myql: followed by colon(mandatory). Then inside our service we further add our different service attributes like container_name, networks, depends_on, volumes etc.  E...

Automation - Update Naukri Profile Using Selenium

Recently one of my friend came to me with a problem. He is looking out for new job but he feels quite boring to update  his profile on daily basis. As some people says updating profile in the morning gives you more calls as it keeps the newly updated profile on top (Although i don’t know whether naukri works this way or not 😀 ). As i was more interested to solve his problem.  After listening his problem i came to solution that instead of updating it manually lets make this job automatic. And it is quite interesting how we can automate our daily boring task with automation. Another day i came with the solution . And the solution was to make it automatic using selenium (Those who are not aware about selenium do check this link) In short, Selenium is a Testing automation Framework. And it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should) also be automated as well....

OpenCV - Image Filters

Hello Guys, In this tutorial, I will discuss the color map in OpenCV. Color Map is used to show different color temperatures. And this can also be used to generate some cool image filters.  OpenCV comes with thirteen built-in color maps. So in this tutorial, I will show you how to use color maps.  Let’s get started List of Color Maps COLORMAP_AUTUMN COLORMAP_BONE COLORMAP_JET COLORMAP_WINTER COLORMAP_RAINBOW COLORMAP_OCEAN COLORMAP_SUMMER COLORMAP_SPRING COLORMAP_COOL COLORMAP_HSV COLORMAP_PINK COLORMAP_HOT COLORMAP_PARULA To apply color map first we need to convert an image to grayscale. So I will use  img = cv.imread("nature.jpg",cv.IMREAD_GRAYSCALE) If you are not aware of this function then please check my previous tutorial  http://techievaibhav.in/2019/01/10/reading-an-image-using-opencv/ To apply color maps, OpenCV comes with a function called applyColorMap() . This function takes two parameters. Gray Scale image Color Map Autumn Bone Cool Hot HSV Jet Ocean Parula Pink ...

OpenCV - Drawing a Circle with python

In this tutorial, I will show you how to draw a circle in OpenCV. OpenCV comes with lots of built-in functions that make our life easier especially when we are working on image processing .  And there is a function called circle in OpenCV which is used to draw a circle. This function takes following parameters: 1. Image : Takes an image object 2. Center : Center point coordinates 3. Radius : Radius of the circle 4. Color : Takes color in BGR format 5. Thickness : By default set to 1 (optional) 6. Line Type : By default set to 8-connected.It can also be  LINE_AA  or  4-connected  (Optional) 7. Shift:  Shifts fractional bits in the point coordinates of center and radius (Optional) Especially when we are creating closed shapes. Thickness plays an important role. Here if the negative thickness is passed in this function or any other function which creates a closed shape(rectangle, polygon, etc). Then it creates a filled shape (filled with color). Negative Thickness Filled Circle Positive ...

OpenCV - Drawing a line with Python

Hello Guys, In this tutorial, I will show you how to draw a line in OpenCV. OpenCV comes with lots of built-in functions that make our life easier especially when we are working on image processing .  And there is a function called line  in OpenCV which is used to draw a line. This function takes the following parameters: 1. Image: Takes image object 2. Point 1: Point 1 X and Y  Coordinates 3. Point 2:  Point 2 X and Y  Coordinates 4. Color: Takes color in BGR format 5. Thickness: By default set to 1  (optional) 6. Line Type: By default set to 8-connected .It can also be LINE_AA  or 4-connected  (Optional) 7. Shift: Shifts fractional bits in the point coordinates (Optional) Well it is recommended to use line LINE_AA ( Anti Aliased) as line type. Line Without LINE_AA  (Anti Aliased) You can observe the right and left ends of the line . You will notice curves are showing in a zigzag pattern.  Line With LINE_AA  (Anti Aliased) Now in this image you can observe the curv...