Torrents - Seeding? Create your own server!


Torrent uses a peer-to-peer model to transfer file from server to other peers known as clients. Consider a situation where an examiner distributes the question paper to each child. This type of distribution is an example of a client-server model where the server directly communicates with the client. Whereas in the same scenario, if the server has given many copies to one person and that one person then distribute that paper to another. This is an example of a peer-to-peer model in which the children are peers. 

The torrent file that we download doesn’t contain the actual data instead it contains the meta-data of the file we are looking for. 

Torrent Seeding refers to a machine possessing all of the data that was downloaded using the torrent file. A peer or downloader becomes a seed when it completely downloads all the data and starts/continues uploading data for other peers. It basically means you are allowing other peers to download or copy the file you downloaded. If you are seeding a torrent, people all over the world have access to the files, thanks to you. As the number of seeds increases the download rate for newcomers that come in the swarm for downloading the file increases. 

Create your own sharing platform 

Using torrent we can share files with our friends who are not around us. Suppose you have a large document that you want to share with your friend who is far away from you. So for this purpose, you can create a torrent file consisting of the meta-data of the file you want to share.
  • Open any torrent client and go to File.
  • Choose to Create New Torrent...
  • Select the file you want to share. Do not delete or change the location of the file after choosing the location of the file. 
  • Do NOT tick the private torrent box (unless you’re using a private tracker). 
  • Add public trackers from the list here. (Add all of these)
  • Click on create and share the torrent file.
  • While sharing your PC must be online.
  • Once it is shared with one peer and it starts seeding the file then even if the server is down the peer will work as a server and the file can be shared again without the server being active all the time.
The main advantage of using torrent for sharing is that there is no need for the server to be online all the time. Only for the first peer, the server needs to be online. Once the file is with one peer it can share that same torrent file and even if the server is not online at that moment. The torrent file will still work and the document will be transferred from one peer to another peer without the involvement of the server. Whereas in a client-server model if the server is down, the file cannot be shared until the server is up again.
We hope this helps. If any suggestions or doubts you can add a comment and we will reply as soon as possible.

Torrent uses a peer-to-peer model to transfer file from server to other peers known as clients. Consider a situation where an exa...

TOR Network - Explained


Wikipedia defines TOR is free and open-source software for enabling anonymous communication by directing Internet traffic through a free, worldwide, volunteer overlay network consisting of more than seven thousand relays in order to conceal a user's location and usage from anyone conducting network surveillance or traffic analysis.

  • TOR is short for The Onion Router.
  • It is a network of servers designed to improve anonymity and privacy.
  • Connected commuters can be configured to offer hidden/onion services.
  • Onion routing was designed by the US army to protect their communications.

What TOR is designed to protect you from?

  • It anonymizes the browser's connection to the websites.
  • It prevents your ISP from knowing what site you are visiting.
  • It prevents a site; you are visiting from knowing who you are, unless, you tell them (for example logging in to a Facebook account using TOR).
  • Its focuses on protecting the transportation of the data only.
  • It allows you to access the TOR DarkNet or hidden services.
  • It prevents tracking.

How TOR network works?

  • There are a lot of users for the TOR network which helps your traffic goes through theirs. 
  • Traffic generally passes through three TOR devices (encrypted) before reaching the website (unencrypted).
  • The first TOR device from where the traffic passes is called Entry Node; the middle ones are called Relay Node; the the last one from where the data goes to the resource unencrypted is known as Exit Node.
  • These nodes are chosen at random so every time your traffic will pass through different TOR devices.   
  • This process makes the data anonymous and hard to track back to its original user.

What TOR does not protect you from?

  • Everyone (ISP) will know you are using TOR unless you made a special configuration.
  • Cannot remove all browser vulnerabilities.
  • No protection from OS, malware, man-in-the-middle, etc.

Weakness of TOR

  • TOR is high profile for the nation-states
  • Internet speed and latency will dramatically drop.
  • No UDP on TOR.
  • Difficult to prevent leaks.
  • TOR is complex (complexity is the nemesis of security and breeds mistakes).
  • Web browsers can also leak information.
  • TOR is blocked by some websites.
  • DNS leaking.
  • Accounts logged in via TOR can be blocked, locked, or suspended.
  • Browser Fingerprint.
  • Data leaves the exit node un-encrypted therefore can be eavesdropping.
  • Vulnerable to traffic analysis attack (with focused monitoring and analysis of your network traffic someone can know what traffic is going through TOR)
  • Using TOR when needed. (If not using TOR all the time, just for some time or something; will tell someone that you are doing something private)
  • Relays and bridges can be blocked.

To know about How to access the TOR network, click here!

We hope this helps. If any suggestions or doubts you can add a comment and we will reply as soon as possible.

Wikipedia defines TOR  is free and open-source software for enabling anonymous communication by directing Internet traffic th...

The Zero Trust Model


The Zero Trust Model is the evolution of our security systems. The original Zero Trust Model of Cybersecurity was developed in 2010 by Forrester. Its intended outcome is to give access to the trusted individuals to a system or a network. Who and what you trust is key to your security, privacy, and anonymity. The less you trust, the lower the risk. You have to minimize the number of things that you trust including yourself. It should be applied to everything, trust nothing, trust no one. Evaluate and distribute the trust.

TO PROTECT OUR ASSETS

  • We have to make choices about trust.
  • We have to select:
    • Softwares
    • Operating Systems
    • Storage Devices
    • Password Managers
    • Internet Service Provider
    • or What to Download!
    • Even people that we can trust to protect our assets.
  • Everything will present a level of risk.
  • Evaluate instead of TRUSTING
IT CAN BE MITIGATE BY DISTRIBUTING THE TRUST

EXAMPLE

So here is the scenario, suppose you want to store files online. Therefore, you need to choose a service provider like Google, Dropbox, OneDrive, and, etc. Well, they are popular and therefore may be safe but you should not trust them.

  • You should not trust that they won't view your files. 
  • You should not trust that they will not lose or change your files, so you have to take a risk-based choice based on zero trusts. Like a while ago there was a bug in Google Photos which sent someone else's photos to someone else.
So you ask yourself how important is it that the files remain private without being changed and to be always available. If it is important and you chose to backup.

Encrypt the files or use a service to encrypt the files. Make sure the encryption is client-side with a decryption key that only you have. This way you have distributed the trust to the alternative backup and to yourself via encryption. Find the services that have a zero-knowledge policy.
Zero-Knowledge is when the provider literally has zero knowledge about what it is that they are hosting for their clients. Therefore, it goes some way towards providing a system that you don't necessarily need to trust too much in terms of confidentiality and privacy. If your files are extremely sensitive then trusting a claim of a zero-knowledge system is still questionable because they could always change something; they could recode it as they have control of the application.
IF IT IS IMPORTANT, ALWAYS ADD AN EXTRA LAYER OF ENCRYPTION

Also, the application you run can have a secret backdoor or a malware. So, you may choose to run an application in an isolated virtual machine to stop it from being able to communicate out.

Instead of trusting it, you're evaluating or mitigating the risk or you might adopt a different application completely and go with a free and open-source

We hope this helps. If any suggestions or doubts you can add a comment and we will reply as soon as possible.

The Zero Trust Model is the evolution of our security systems. The original Zero Trust Model of Cybersecurity was developed in 20...

Concept of Pivoting


Pivoting is a method of accessing a machine that we have no way of accessing, through an intermediary. The attacker compromises a visible server and then pivots using the compromised server to attack other clients from within the network.

The above figure explains the same. The attacker compromises the server or a machine that is exposed to the internet. Then, using that machine as an intermediary, he gains access to all the other machines which are connected to that network.


Let us look into a scenario exploiting pivoting. Assume that we have two networks with us:

  • 192.168.1.0/24, which is compromised by the hacker.
  • An internal network with the range of 10.10.10.0/24 is inaccessible from the internet.

Let us understand how it works by exploiting a Windows server 2003 with the DCOM vulnerability:


  • After gaining access, to interact with the session; session –i 1 can be used. Here “1” is the number of sessions which was created.
  • Now we have to check whether the host system is connected to any other networks, we could do that by ipconfig or ifconfig command (depending on the system).
  • Now that we know there are other clients in the network. We can continue. 
  • We all know how wonderful Metasploit is! Metasploit has an AutoRoute script that will help us to attack the second network with the intermediary as our first machine, but in order to perform the attack, we have to send our session to the background.
Just type, background
  • Now add the route to the internal network with the range you have got from the ipconfig scan.
  • Now using a ping command, you can confirm that you got access to the whole network. 

Also check this payload in Metosploit, 
  • post/windows/manage/autoroute
  • post/multi/manage/autoroute

We hope this helps. If any suggestions or doubts you can add a comment and we will reply as soon as possible.

Pivoting is a method of accessing a machine that we have no way of accessing, through an intermediary. The attacker compromises a...

Disable/Enable USB Port

 

Restrict Access to USB by disabling the USB Ports. In many cases of the data leak, the data is copied from a system using USB. What if we will disable the USB ports, so no data copy as no access. Thus, one more step towards security. 

  • Go to Run or press Windows + R.
  • Type regedit 
  • Click on HKEY_LOCAL_MACHINE 
  • Go to SYSTEM
  • Click on CurrentControlSet 
  • Click on Services
  • Go to USBSTOR 
  • Double click on Start
  • Now change the value data with the number of ports you want to use for USB. Zero is no ports enable. To enable the maximum number of ports, count the USB Ports in the Device and enter the number.
  • Now press OK and refresh your desktop.

We hope this helps. If any suggestions or doubts you can add a comment and we will reply as soon as possible.

  Restrict Access to USB by disabling the USB Ports. In many cases of the data leak, the data is copied from a system us...

Open Source Licenses - Explained


Wikipedia defines an open-source license as a type of license for computer software and other products that allows the source code, blueprint, or design to be used, modified, and/or shared under defined terms and conditions.

The open-source licenses need to be approved by OSI i.e. Open Source Initiative. OSI was formed in 1998. They describe themselves as:


The Open Source Initiative (OSI) is a non-profit corporation with global scope formed to educate about and advocate for the benefits of open source and to build bridges among different constituencies in the open-source community.


GNU General Public License (GPLv3)

Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.

  • Copyleft means that any software that is written under this license needs to be released as open-source. 
  • The result is that any software that uses any component which is under GPL (regardless of its percentage in the entire code) is required to release its full source code and all of the rights to modify and distribute the entire code.
  • Modification of the software must be released under the same license.
  • Source code must be available when the licensed material is distributed.
  • Changes made to the license must be materialized
  • The license provides an express grant of patent rights from contributors i.e. if the owner sues anyone for the patent, they lose the rights to the software.

Apache License 2.0

A permissive license whose main conditions require preservation of copyright and license notices. Contributors provide an express grant of patent rights. Licensed works, modifications and larger works may be distributed under different terms and without source code.
  • Modifications to the software can be released under any license.
  • The source code does not need to be made public.
  • Changes made to the source code must be documented.
  • The license provides an express grant of patent rights from contributors i.e. if the owner sues anyone for the patent, they lose the rights to the software.
  • This license explicitly states that it does NOT grant trademark rights, even though licenses without such a statement probably do not grant any implicit trademark rights.

Mozilla Public License 2.0

Permissions of this weak copyleft license are conditioned on making available source code of licensed files and modifications of those files under the same license (or in certain cases, one of the GNU licenses). Copyright and license notices must be preserved. Contributors provide an express grant of patent rights. However, a larger work using the licensed work may be distributed under different terms and without source code for files added in the larger work.
  • The source code needs to be made public.
  • Modifications of existing files must be released under the same license when distributing the licensed material. In some cases, a similar or related license may be used.
  • This license explicitly states that it does NOT grant trademark rights, even though licenses without such a statement probably do not grant any implicit trademark rights.

MIT License

A short and simple permissive license with conditions only requiring preservation of copyright and license notices. Licensed works, modifications and larger works may be distributed under different terms and without source code.
  • The source code doesn’t need to be public when a distribution of the software is made.
  • Modifications to the software can be released under any license.
  • Changes made to the source code may not be documented.
  • It offers no explicit position on patent usage.


Berkeley Software Distribution (BSD v3)

A permissive license similar to the BSD 2-Clause License, but with a 3rd clause that prohibits others from using the name of the project or its contributors to promote derived products without written consent.

  • The source code doesn’t need to be public when a distribution of the software is made.
  • Modifications to the software can be released under any license.
  • Changes made to the source code may not be documented.
  • It offers no explicit position on patent usage.
  • A copy of the license and copyright notice must be included with the licensed material.
  • The BSD 3-clause states that the names of the author and contributors can’t be used to promote products derived from the software without permission.

Adding LICENSE to GitHub Repository

  • Go to your repository online (on the website).
  • Click on Add file and then Create new file.
  • Type, LICENSE as a file name, and on the right side you will see a button Choose a license template. Choose the license you want. 
  • Click on Review and submit from the right side. 
  • Now add the commit message on the bottom and click on commit changes or save.

We hope this helps. If any suggestions or doubts you can add a comment and we will reply as soon as possible.

Wikipedia defines an open-source license as a type of license for computer software and other products that allows the source cod...