Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
BearFTP — Honeypot FTP server written in .NET Core (C#) for both Linux and Windows. | Kitploit
Tools/GitHubGitHub/kolya5544/bearftp
Defensive ToolsInformation GatheringNetwork SecurityThreat IntelligenceIntrusion DetectionIncident ResponseLog AnalysisArchived
GitHubkolya5544/bearftp

BearFTP

Honeypot FTP server written in .NET Core (C#) for both Linux and Windows.

View Repository
14493 years agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

BearFTP

Dare to hack a bear?

BearFTP is a honeypot FTP server, designed to log hackers' attempts and report them to public IP blacklist databases.

Featuring:

  • Configuration support (no need to recompile)
  • Edit files and content of files located on server
  • Tested on FileZilla and WinSCP.
  • AntiNmap, AntiMetasploit, Report even those ones, who try to download your files!
  • Works on both Windows and Linux
  • Pure TCPClients, expect good performance!
  • PASV mode support (only PASV, for now...)

This software was tested and runs perfectly on:

  • Windows 10 x64 (.NET CORE 3.1)
  • Linux Ubuntu 18.04

Technologies

We use several projects as dependencies to run smoothly:

  • [https://www.newtonsoft.com/json] - JSON converter!
  • [https://www.abuseipdb.com/] - Public IP blacklist database

Installation

BearFTP requires .NET Core 3.1 or higher.

Download binaries from Release tab or compile it yourself.

If you are on Windows, run

root@kitploit:~
C:/BearFTP/BearFTP/bin/Release/netcoreapp3.1> ./BearFTP.exe

For Linux, run

root@kitploit:~
$ dotnet BearFTP.dll

The program should exit with an error. Proceed to editing the config.json

root@kitploit:~
{
  "PortDef": 21,
  "PortPasv": 21,
  "Hostname": "127.0.0.1",
  "Banner": "My very own FTP server located at %host%",
  "Token": "",
  "Report": true,
  "Ban": true,
  "PunishScans": true,
  "AllowAnonymous": false,
  "PerIPLogs": false,
  "AnonStat": true,
  "ConsoleLogging": true,
  "ActiveMode": true,
  "Max_PerSecond": 5,
  "Max_Total": 6,
  "BanLength": 3600,
  "MaxErrors": 6,
  "BufferSize": 8192,
  "MaxThreads": 50,
  "Files": [
  {
    "Name": "readme.txt",
    "Content": "Hello!"
  }]
}

To make it work, you should change PortPasv to any other value, so PortPasv is not equal to PortDef. Other options are optional. We highly dont recommend using files with size of more than 4 MB! You should not use honeypot as a real FTP server to share files!

Development

Want to contribute? Great!

We use VS2019 and .NET core 3.1 for development.

Here's our CURRENT todo list:

  • Administrator commands (adding files right through FTP!)
  • Implement directories
  • Add more features (more advanced ban system, reports to other IP blacklists)

License

MIT

Download Tool
KeyValue
PortDefReplace with port you want to use for new connections (21 by default)
PortPasvReplace with port for PASV mode (1222 by default)
HostnameReplace with an actual public IPv4 of your PC/server. Used to initiate PASV connections. Please use IPv4, we dont support domains
BannerBanner sent right after TCP handshake. %host% will be replaced with current hostname
TokenAbuseIPDB token to report bad ones
ReportShould we report suspicious actions?
BanShould we ban users on suspicious actions? (Ban is 1 hour long to prevent people from being double-reported)
PunishScansShould we ban/report nmap scanners?
AllowAnonymousShould we allow users to login with "anonymous" username?
PerIPLogsCreate logs for individual IPs. Requires "iplogs" folder
AnonStatDo you want to send anonymous statistics on version usage? (We only see BearFTP version you use. No private info)
ConsoleLoggingShould we log attempts to the console?
ActiveModeShould we allow Active mode usage? (PORT command)
Max_PerSecondMax. amount of connections per second from an IP. Only applies to base socket
Max_TotalMax. amount of active connections from an IP. Applies to both base and PASV
BanLengthLength (in seconds) of a ban. 3600 seconds = 1 hour.
MaxErrorsMax.amount of attempts to execute an invalid FTP command.
BufferSizeBuffer size on RETR for files. Somewhere around 2048-8192 is fine. Determines the speed of a download.
MaxThreadsMaximal amount of threads, controlled by clients, that can be spawned by BearFTP
Files[]Array of files.
Files[Name]Filename
Files[Content]Contents of files (string). Start with --- to make it load from a file (example: "---file.exe")