From a17fb513355b840506a4472c11874b71c8a2740f Mon Sep 17 00:00:00 2001 From: sangfor Date: Sun, 30 Oct 2022 16:33:41 +0800 Subject: [PATCH] add doc --- README.md | 23 +++++++++++++++++++++++ docs/img/FakeMysql.jpg | Bin 0 -> 66993 bytes 2 files changed, 23 insertions(+) create mode 100644 README.md create mode 100644 docs/img/FakeMysql.jpg diff --git a/README.md b/README.md new file mode 100644 index 0000000..6cf5dd1 --- /dev/null +++ b/README.md @@ -0,0 +1,23 @@ +# EvilMySQL + +用 golang 实现的 mysql 蜜罐 + +## 工作原理 + +`EvilMySQL` 充当中间人的角色,转发来自 mysql client/server 的流量,对 client 所有的 select 查询语句的返回报文进行修改达到文件读取。 + +![](./docs/img/FakeMysql.jpg) + +## 使用 + +编译 +```bash +go build -o server main.go +``` + +在 3306 端口启动一个 fake mysql,用户名为 `admin`, 密码为 `admin@123`,流量将转发到 `root:admin@tcp(127.0.0.1:6033)/mysql` +```bash +./server -u admin -P admin@123 -p 3306 -d root:admin@tcp(127.0.0.1:6033)/mysql +``` + +**目前仅支持 mysql_native_password 认证** \ No newline at end of file diff --git a/docs/img/FakeMysql.jpg b/docs/img/FakeMysql.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d78d03e3229046b1fd1c325c09752ebc393e1f36 GIT binary patch literal 66993 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 n{@+U>=eB=mIQ?f^YQrqx^`(