Introduction
FScan is an advanced open-source network scanning tool that allows users to perform various types of network reconnaissance, including port scanning, service detection, and vulnerability scanning. It is a versatile tool commonly used by security professionals, system administrators, and penetration testers to gather information about a network, identify potential vulnerabilities, and assess the overall security posture.This documentation provides comprehensive instructions on how to install, configure, and use FScan. It covers basic usage, advanced features, common use cases, and troubleshooting tips.
Table of Contents
- System Requirements
- Installation
- Linux
- macOS
- Windows
- Basic Usage
- Advanced Features
- Service Detection
- Port Scanning
- Vulnerability Scanning
- Configuration Options
- Common Use Cases
- Troubleshooting
- Contributing
- License
1. System Requirements
FScan can be installed on various operating systems, including Linux, macOS, and Windows. The tool requires the following dependencies and resources:- Operating System: Linux (Ubuntu, Debian, CentOS, etc.), macOS, or Windows (via WSL)
- Processor: Any modern processor with at least one core (recommended: 2+ cores for optimal performance)
- Memory: At least 1 GB of RAM (2 GB or more recommended)
- Disk Space: 100 MB of free disk space for installation
- Dependencies:
- Python 3.6 or above
- pip (Python package manager)
- OpenSSL (for SSL/TLS communication)
- Requests library (for web scanning)
2. Installation
FScan can be installed on Linux, macOS, and Windows operating systems. Below are the installation steps for each platform.2.1 Linux Installation (Ubuntu/Debian)
- Update the package list:
sudo apt update - Install Python 3 and pip:
sudo apt install python3 python3-pip - Clone the FScan repository:
git clone https://github.com/username/fscan.git
cd fscan - Install required Python dependencies:
pip3 install -r requirements.txt - Verify the installation:
python3 fscan.py --help
2.2 macOS Installation
- Install Homebrew (if not installed):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - Install Python and pip:
brew install python3 - Clone the FScan repository:
git clone https://github.com/username/fscan.git
cd fscan - Install required dependencies:
pip3 install -r requirements.txt - Verify the installation:
python3 fscan.py --help
2.3 Windows Installation (via WSL)
For Windows users, FScan can be used with Windows Subsystem for Linux (WSL).- Install WSL:
- Open PowerShell as Administrator and run:
wsl --install - Choose your preferred Linux distribution (e.g., Ubuntu).
- Open PowerShell as Administrator and run:
- Install Python 3 and pip within WSL:
sudo apt update
sudo apt install python3 python3-pip - Clone the FScan repository:
git clone https://github.com/username/fscan.git
cd fscan - Install dependencies:
pip3 install -r requirements.txt - Verify the installation:
python3 fscan.py --help
3. Basic Usage
Once installed, FScan can be used through the command-line interface. The following are the basic commands to start using FScan.3.1 Help Command
To view a list of all available commands and their descriptions, use:python3 fscan.py --help
3.2 Scan a Single IP Address
To perform a basic port scan on a single IP address:python3 fscan.py -t 192.168.1.1
This will scan the most common ports on the IP address 192.168.1.1.
3.3 Scan a Range of IP Addresses
To scan a range of IP addresses:python3 fscan.py -t 192.168.1.1-192.168.1.255
This will scan all IPs from 192.168.1.1 to 192.168.1.255.
3.4 Scan a Specific Port
To scan a specific port on a target:python3 fscan.py -t 192.168.1.1 -p 80
This will scan port 80 on the target IP 192.168.1.1.
4. Advanced Features
4.1 Service Detection
FScan includes a service detection feature that can identify the services running on open ports.To enable service detection during a scan:
python3 fscan.py -t 192.168.1.1 --services
This will attempt to identify the services running on open ports by sending banners and analyzing the responses.
4.2 Port Scanning
FScan supports both SYN and full-connect port scanning techniques.- SYN Scan (Stealth Scan):
python3 fscan.py -t 192.168.1.1 --synscan - Full-Connect Scan:
python3 fscan.py -t 192.168.1.1 --connectscan
4.3 Vulnerability Scanning
FScan can perform basic vulnerability assessments by checking for common vulnerabilities such as open ports, weak services, and outdated software versions.To initiate a vulnerability scan:
python3 fscan.py -t 192.168.1.1 --vulnscan
This will attempt to detect vulnerabilities related to the detected services and ports.
5. Configuration Options
FScan provides several configuration options to customize the scan behavior. Some common options include:- Scan Timeout: Adjust the timeout for individual scans.
python3 fscan.py -t 192.168.1.1 --timeout 5 - Scan Specific Ports: Scan a custom list of ports.
python3 fscan.py -t 192.168.1.1 --ports 22,80,443 - Enable or Disable Service Detection: Use --services to enable or --no-services to disable.
python3 fscan.py -t 192.168.1.1 --services
6. Common Use Cases
6.1 Network Discovery
For network mapping and identifying live hosts in a subnet:python3 fscan.py -t 192.168.1.0/24
6.2 Identifying Open Ports on a Web Server
To check for open ports on a target web server (e.g., port 80, 443):python3 fscan.py -t 192.168.1.1 --ports 80,443
6.3 Service Detection for a Range of IPs
To scan a range of IPs and detect services:python3 fscan.py -t 192.168.1.1-192.168.1.255 --services
7. Troubleshooting
- Issue: Connection Refused
- Solution: Verify that the target is online and that no firewall is blocking the scan.
- Issue: Timeout
- Solution: Increase the timeout using the --timeout option or check for network latency issues.