Files
SafeLine/README.md

129 lines
7.4 KiB
Markdown
Raw Normal View History

2024-07-23 17:49:22 +08:00
<p align="center">
<img src="/images/banner.png" width="400" />
</p>
2024-05-23 15:13:53 +08:00
2024-07-23 17:49:22 +08:00
<h4 align="center">
SafeLine - Make your web apps secure
</h4>
2024-06-12 22:02:51 +08:00
2024-07-23 17:49:22 +08:00
<p align="center">
<a target="_blank" href="https://waf.chaitin.com/">🏠 Website</a> &nbsp; | &nbsp;
<a target="_blank" href="https://docs.waf.chaitin.com/">📖 Docs</a> &nbsp; | &nbsp;
<a target="_blank" href="https://demo.waf.chaitin.com:9443/">🔍 Live Demo</a> &nbsp; | &nbsp;
<a target="_blank" href="https://discord.gg/SVnZGzHFvn">🙋‍♂️ Discord</a> &nbsp; | &nbsp;
2024-07-23 23:45:47 +08:00
<a target="_blank" href="/README_CN.md">中文版</a>
2023-06-25 18:18:38 +08:00
</p>
2023-04-11 14:22:23 +08:00
2024-07-23 17:49:22 +08:00
## 👋 INTRODUCTION
SafeLine is a self-hosted **`WAF(Web Application Firewall)`** to protect your web apps from attacks and exploits.
A web application firewall helps protect web apps by filtering and monitoring HTTP traffic between a web application and the Internet. It typically protects web apps from attacks such as `SQL injection`, `XSS`, `code injection`, `os command injection`, `CRLF injection`, `ldap injection`, `xpath injection`, `RCE`, `XXE`, `SSRF`, `path traversal`, `backdoor`, `bruteforce`, `http-flood`, `bot abused`, among others.
2024-06-12 16:52:28 +08:00
2024-07-23 17:49:22 +08:00
#### 💡 How It Works
2024-06-12 22:02:51 +08:00
2024-07-23 17:49:22 +08:00
<img src="/images/how-it-works.png" width="800" />
2024-06-04 22:40:17 +08:00
2024-07-23 17:49:22 +08:00
By deploying a WAF in front of a web application, a shield is placed between the web application and the Internet. While a proxy server protects a client machines identity by using an intermediary, a WAF is a type of reverse-proxy, protecting the server from exposure by having clients pass through the WAF before reaching the server.
2023-06-25 18:30:05 +08:00
2024-10-26 17:48:22 +09:00
A WAF protects your web apps by filtering, monitoring, and blocking any malicious HTTP/S traffic traveling to the web application, and prevents any unauthorized data from leaving the app. It does this by adhering to a set of policies that help determine what traffic is malicious and what traffic is safe. Just as a proxy server acts as an intermediary to protect the identity of a client, a WAF operates in similar fashion but acting as a reverse proxy intermediary that protects the web app server from a potentially malicious client.
2024-01-04 16:17:48 +08:00
2024-07-23 17:49:22 +08:00
its core capabilities include:
2023-06-25 18:30:05 +08:00
2024-06-12 22:02:51 +08:00
- Defenses for web attacks
- Proactive bot abused defense
- HTML & JS code encryption
- IP-based rate limiting
- Web Access Control List
2023-04-14 10:59:20 +08:00
2024-07-23 17:49:22 +08:00
#### ⚡️ Screenshots
2023-04-11 14:22:23 +08:00
2024-07-23 17:49:22 +08:00
| <img src="./images/screenshot-1.png" width=370 /> | <img src="./images/screenshot-2.png" width=370 /> |
| ------------------------------------------------- | ------------------------------------------------- |
| <img src="./images/screenshot-3.png" width=370 /> | <img src="./images/screenshot-4.png" width=370 /> |
2023-04-11 14:22:23 +08:00
2024-07-23 17:49:22 +08:00
Get [Live Demo](https://demo.waf.chaitin.com:9443/)
2023-04-11 14:22:23 +08:00
2024-07-23 17:49:22 +08:00
## 🔥 FEATURES
2023-04-11 14:22:23 +08:00
2024-07-23 17:49:22 +08:00
List of the main features as follows:
2023-04-13 23:40:55 +08:00
2024-07-23 17:49:22 +08:00
- **`Block Web Attacks`**
- It defenses for all of web attacks, such as `SQL injection`, `XSS`, `code injection`, `os command injection`, `CRLF injection`, `XXE`, `SSRF`, `path traversal` and so on.
- **`Rate Limiting`**
- Defend your web apps against `DoS attacks`, `bruteforce attempts`, `traffic surges`, and other types of abuse by throttling traffic that exceeds defined limits.
2024-08-26 21:06:46 +08:00
- **`Anti-Bot Challenge`**
- Anti-Bot challenges to protect your website from `bot attacks`, humen users will be allowed, crawlers and bots will be blocked.
2024-07-23 17:49:22 +08:00
- **`Authentication Challenge`**
- When authentication challenge turned on, visitors need to enter the password, otherwise they will be blocked.
- **`Dynamic Protection`**
- When dynamic protection turned on, html and js codes in your web server will be dynamically encrypted by each time you visit.
2023-06-25 18:18:38 +08:00
2024-07-23 17:49:22 +08:00
#### 🧩 Showcases
2023-06-25 18:18:38 +08:00
2024-07-23 17:49:22 +08:00
| | Legitimate User | Malicious User |
| ----------------------------- | --------------------------------------------------- | ---------------------------------------------------------------- |
| **`Block Web Attacks`** | <img src="./images/skeleton.png" width=270 /> | <img src="./images/blocked-for-attack-detected.png" width=270 /> |
| **`Rate Limiting`** | <img src="./images/skeleton.png" width=270 /> | <img src="./images/blocked-for-access-too-fast.png" width=270 /> |
2024-08-26 21:06:46 +08:00
| **`Anti-Bot Challenge`** | <img src="./images/captcha-1.gif" width=270 /> | <img src="./images/captcha-2.gif" width=270 /> |
2024-07-23 17:49:22 +08:00
| **`Auth Challenge`** | <img src="./images/auth-1.gif" width=270 /> | <img src="./images/auth-2.gif" width=270 /> |
| **`HTML Dynamic Protection`** | <img src="./images/dynamic-html-1.png" width=270 /> | <img src="./images/dynamic-html-2.png" width=270 /> |
| **`JS Dynamic Protection`** | <img src="./images/dynamic-js-1.png" width=270 /> | <img src="./images/dynamic-js-2.png" width=270 /> |
2023-04-11 14:22:23 +08:00
2024-07-23 17:49:22 +08:00
## 🚀 Quickstart
2023-04-20 14:25:19 +08:00
2024-07-23 17:49:22 +08:00
> [!WARNING]
> 中国大陆用户安装国际版可能会导致无法连接云服务,请查看 [中文版安装文档](https://docs.waf-ce.chaitin.cn/zh/%E4%B8%8A%E6%89%8B%E6%8C%87%E5%8D%97/%E5%AE%89%E8%A3%85%E9%9B%B7%E6%B1%A0)
2024-06-04 22:45:43 +08:00
2024-07-23 17:49:22 +08:00
#### 📦 Installing
2023-04-20 14:25:19 +08:00
2024-07-23 17:49:22 +08:00
Information on how to install SafeLine can be found in the [Install Guide](https://docs.waf.chaitin.com/en/tutorials/install)
2023-04-21 15:25:46 +08:00
2024-07-23 17:49:22 +08:00
#### ⚙️ Protecting Web Apps
2024-06-03 11:47:13 +08:00
2024-07-23 17:49:22 +08:00
to see [Configuration](https://docs.waf.chaitin.com/en/tutorials/Configuration)
2023-04-11 14:22:23 +08:00
2024-07-23 17:49:22 +08:00
## 📋 More Informations
2024-06-04 22:40:17 +08:00
2024-07-23 17:49:22 +08:00
#### Effect Evaluation
2023-04-11 14:22:23 +08:00
2024-07-23 17:49:22 +08:00
| Metric | ModSecurity, Level 1 | CloudFlare, Free | SafeLine, Balance | SafeLine, Strict |
| ----------------- | -------------------- | -------------------- | ---------------------- | --------------------- |
| Total Samples | 33669 | 33669 | 33669 | 33669 |
| **Detection** | 69.74% | 10.70% | 71.65% | **76.17%** |
| **False Positive**| 17.58% | 0.07% | **0.07%** | 0.22% |
| **Accuracy** | 82.20% | 98.40% | **99.45%** | 99.38% |
2023-04-11 14:22:23 +08:00
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
#### Is SafeLine Production-Ready?
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
Yes, SafeLine is production-ready.
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
- Over 180,000 installations worldwide
- Protecting over 1,000,000 Websites
- Handling over 30,000,000,000 HTTP Requests Daily
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
#### 🙋‍♂️ Community
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
Join our [Discord](https://discord.gg/SVnZGzHFvn) to get community support, the core team members are identified by the STAFF role in Discord.
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
- channel [#feedback](https://discord.com/channels/1243085666485534830/1243120292822253598): for new features discussion.
- channel [#FAQ](https://discord.com/channels/1243085666485534830/1263761679619981413): for FAQ.
- channel [#general](https://discord.com/channels/1243085666485534830/1243115843919806486): for any other questions.
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
Several contact options exist for our community, the primary one being Discord. These are in addition to GitHub issues for creating a new issue.
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
<p align="left">
<a target="_blank" href="https://discord.gg/SVnZGzHFvn"><img src="https://img.shields.io/badge/Discord-5865F2?style=flat&logo=discord&logoColor=white"></a> &nbsp;
<a target="_blank" href="https://x.com/safeline_waf"><img src="https://img.shields.io/badge/X.com-000000?style=flat&logo=x&logoColor=white"></a> &nbsp;
<a target="_blank" href="/images/wechat.png"><img src="https://img.shields.io/badge/WeChat-07C160?style=flat&logo=wechat&logoColor=white"></a>
</p>
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
#### 💪 PRO Edition
2024-06-05 23:47:40 +08:00
2024-07-23 17:49:22 +08:00
Coming soon!
2023-05-10 13:55:35 +08:00
2024-07-23 17:49:22 +08:00
#### 📝 License
2024-06-04 22:40:17 +08:00
2024-07-23 23:45:47 +08:00
See [LICENSE](/LICENSE.md) for details.