mock测试(挡板测试),零基础入门到精通,收藏这篇就够了

https://www.cnblogs.com/lc-blogs/p/17027617.html

**mock测试(挡板测试)**就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。
比如:测试天气这个接口,最近上海都没有下雪,那么我怎么去模拟下雪这个场景?需要等到真正下雪的哪天才可以吗?这个时候就可以通过mock来帮助我们完成下雪的场景了

  1. 后端代码还未开发完,前端代码需要调用后端接口进行调试,怎么办?
  2. 无法控制第三方系统某个接口的返回,返回的数据不满足要求?
  3. 需要跟第三方联调但对方还未开发完成,如何提早测试?
  4. 不用等开发人员开发完接口再进行自动化测试case的编写,在这个过程中可以修改、补case,在后端开发接口完成以后,只需要执行测试case,省去了很大的工作量,并且这些完善的用例脚本,用自动化去执行,效果更好。

fiddler之AutoResponder

AutoResponder参考:AutoResponder的使用

postman之Mock Server

Mock Server参考:Mock Server的使用

moco-runner

Moco是一个简单搭建模拟服务器的框架(工具),可以模拟http、https、socket等协议。基于Java开源(必须java环境)。
准备工具:jdk环境:jdk的安装与配置

http协议

1、下载

下载地址:Central Repository: com/github/dreamhead/moco-runner
GitHub:GitHub - dreamhead/moco: Easy Setup Stub Server

启动命令:
java -jar moco的jar文件 协议类型 -p 端口号 -c json配置文件

<span style="background-color:#282c34"><span style="color:#abb2bf">java -jar moco-runner-<span style="color:#d19a66">1.3</span>.<span style="color:#d19a66">0</span>-standalone.jar http -p <span style="color:#d19a66">9090</span> -c result.json

<span style="color:#98c379">//</span>jar包的名称根据自己下载的jar包版本来写;
<span style="color:#98c379">//</span>http 代表这个模拟的是http请求;
<span style="color:#98c379">//</span>-p <span style="color:#d19a66">9090</span> 是定义端口号;
<span style="color:#98c379">//</span>-c result.json 是编辑请求与响应的json文件名;</span></span>

2、使用

  • 新建文件夹,例如:mock
  • 将下载的moco-runner-1.3.0-standalone.jar放到mock文件夹中

3、模拟get接口响应(不带参数)

1)新建json文件(例如:result.json)放到mock文件夹中,json文件用来存放接口mock响应数据

2)打开result.json文件,模拟get请求不带参数,编辑如下:

<span style="background-color:#282c34"><span style="color:#abb2bf">[
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"首页(不带参数)"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/index"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"get"</span>
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"text"</span>: <span style="color:#98c379">"进入首页成功!"</span>
		}
	}
]

<span style="color:#b18eb1"><em>//description:接口描述信息</em></span>
<span style="color:#b18eb1"><em>//request:所有请求的数据</em></span>
<span style="color:#b18eb1"><em>//uri:请求路径</em></span>
<span style="color:#b18eb1"><em>//method:HTTP请求类型GET|POST|PUT|DELETE</em></span>
<span style="color:#b18eb1"><em>//response:所有的响应数据</em></span>
<span style="color:#b18eb1"><em>//text:响应的文本</em></span></span></span>

3)启动

  • 在创建的mockrunner文件夹中启动cmd窗口

  • 在cmd窗口输入命令:java -jar moco-runner-1.3.0-standalone.jar http -p 9090 -c result.json
<span style="background-color:#282c34"><span style="color:#abb2bf">java -jar moco-runner-<span style="color:#d19a66">1.3</span>.<span style="color:#d19a66">0</span>-standalone.jar http -p <span style="color:#d19a66">9090</span> -c result.json

<span style="color:#98c379">//</span>jar包的名称根据自己下载的jar包版本来写;
<span style="color:#98c379">//</span>http 代表这个模拟的是http请求;
<span style="color:#98c379">//</span>-p <span style="color:#d19a66">9090</span> 是定义端口号;
<span style="color:#98c379">//</span>-c result.json 是编辑请求与响应的json文件名;</span></span>

下图表示启动成功:

  • 停止mock服务,使用Ctrl+c,或者关闭cmd窗口

  • 启动服务后,在浏览器中访问:127.0.0.1:9090/index

postmanq发送请求示例

4、模拟get接口响应(带参数)

  • 编辑mock.json文件,模拟get请求带参数,编辑如下:
<span style="background-color:#282c34"><span style="color:#abb2bf">[
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"个人主页"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/userhomepage"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"get"</span>,
			<span style="color:#d19a66">"queries"</span>: {
				<span style="color:#d19a66">"userid"</span>: <span style="color:#98c379">"3882"</span>,
				<span style="color:#d19a66">"name"</span>: <span style="color:#98c379">"lucy"</span>
			}
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"code"</span>: <span style="color:#98c379">"10000"</span>,
				<span style="color:#d19a66">"message"</span>: <span style="color:#98c379">"进入个人主页成功"</span>,
				<span style="color:#d19a66">"data"</span>: {
					<span style="color:#d19a66">"name"</span>: <span style="color:#98c379">"lucy"</span>,
					<span style="color:#d19a66">"age"</span>: <span style="color:#98c379">"19"</span>,
					<span style="color:#d19a66">"addr"</span>: <span style="color:#98c379">"beijing"</span>,
					<span style="color:#d19a66">"tel"</span>: <span style="color:#98c379">"15512348888"</span>,
					<span style="color:#d19a66">"lastlogin"</span>: <span style="color:#98c379">"2020-10-01 10:55:23"</span>
				}
			}
		}
	}
 ]

<span style="color:#b18eb1"><em>//headers设置response的返回数据为application/json</em></span>
<span style="color:#b18eb1"><em>//request中的queries:定义get请求参</em></span></span></span>

postman发送请求示例

5、模拟post请求

  • 1)传递参数 Content-Type: application/json 为JSON格式,传递的参数是以JSON格式,参数包含在一对花括号中,以键值对的方式。
    编辑mock.json文件,模拟post请求,编辑如下:
<span style="background-color:#282c34"><span style="color:#abb2bf">[
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"登录,请求Content-Type:application/json"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/login"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"post"</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"username"</span>: <span style="color:#98c379">"admin"</span>,
				<span style="color:#d19a66">"password"</span>: <span style="color:#98c379">"123456"</span>
			}
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"code"</span>: <span style="color:#98c379">"10000"</span>,
				<span style="color:#d19a66">"message"</span>: <span style="color:#98c379">"登录成功"</span>,
				<span style="color:#d19a66">"data"</span>: {
					<span style="color:#d19a66">"userid"</span>: <span style="color:#98c379">"3882"</span>,
					<span style="color:#d19a66">"name"</span>: <span style="color:#98c379">"lucy"</span>,
					<span style="color:#d19a66">"addr"</span>: <span style="color:#98c379">"chengdu"</span>,
					<span style="color:#d19a66">"tel"</span>: <span style="color:#98c379">"13355556666"</span>,
					<span style="color:#d19a66">"token"</span>: <span style="color:#98c379">"mocktoken9gd878ad"</span>
				}
			}
		}
	}
]

<span style="color:#b18eb1"><em>//headers中的"Content-Type": "application/json"指传递参数以json方式</em></span>
<span style="color:#b18eb1"><em>//headers中的"token": "mocktoken"指请求头中必须加上token才能访问</em></span>
<span style="color:#b18eb1"><em>//status:定义http响应状态码</em></span></span></span>

postman发送请求示例

  • 2)传递参数 Content-Type: multipart/form-data 为form-data格式,参数写在body中以参数名称和值对应关系,常用于传递参数和文件,请求的Content-Type字段中有一个boundary字段,传参时每个参数都是由一对boundary包含。
    编辑mock.json文件,模拟post请求,编辑如下:
<span style="background-color:#282c34"><span style="color:#abb2bf">[
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"商品详情页,请求Content-Type:multipart/form-data"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/details"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"post"</span>,
			<span style="color:#d19a66">"forms"</span>: {
				<span style="color:#d19a66">"goodid"</span>: <span style="color:#98c379">"1"</span>,
				<span style="color:#d19a66">"date"</span>: <span style="color:#98c379">"20220101"</span>
			}
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"goodid"</span>: <span style="color:#98c379">"1"</span>,
				<span style="color:#d19a66">"name"</span>:<span style="color:#98c379">"pears"</span>,
				<span style="color:#d19a66">"status"</span>:<span style="color:#98c379">"1"</span>,
				<span style="color:#d19a66">"stock"</span>:<span style="color:#98c379">"25"</span>,
				<span style="color:#d19a66">"vip_amount "</span>:<span style="color:#98c379">"24"</span>,
				<span style="color:#d19a66">"sale_amount"</span>:<span style="color:#98c379">"18"</span>,
				<span style="color:#d19a66">"market_amount"</span>:<span style="color:#98c379">"23.6"</span>,
				<span style="color:#d19a66">"attribute_value"</span>:<span style="color:#98c379">"丰富营养"</span>,
				<span style="color:#d19a66">"product_attr_vals"</span>:<span style="color:#98c379">"单果300g"</span>,
				<span style="color:#d19a66">"share_title"</span>:<span style="color:#98c379">"分享标题"</span>,
				<span style="color:#d19a66">"share_descrip"</span>:<span style="color:#98c379">"分享描述"</span>,
				<span style="color:#d19a66">"license"</span>:<span style="color:#98c379">"营业执照"</span>,
				<span style="color:#d19a66">"employType"</span>:<span style="color:#d19a66">0</span>
			}
		}
	}
]</span></span>

postman发送请求示例

  • 3)传递参数 Content-Type: application/x-www-form-urlencoded 格式,和get请求传递参数一样的方式,区别get请求参数拼接在url中,post请求参数在body中。
    编辑mock.json文件,模拟post请求,编辑如下:
<span style="background-color:#282c34"><span style="color:#abb2bf">[
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"订单详情页,请求Content-Type:application/x-www-form-urlencoded"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/order"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"post"</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/x-www-form-urlencoded"</span>
			},
			<span style="color:#d19a66">"forms"</span>: {
				<span style="color:#d19a66">"ordernum"</span>: <span style="color:#98c379">"20201010"</span>,
				<span style="color:#d19a66">"userid"</span>: <span style="color:#98c379">"3218"</span>
			}
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"orderNo"</span>: <span style="color:#98c379">"LO20111216292785711001"</span>,
				<span style="color:#d19a66">"productId"</span>:<span style="color:#d19a66">2</span>,
				<span style="color:#d19a66">"skuId"</span>:<span style="color:#d19a66">22</span>,
				<span style="color:#d19a66">"expert"</span>:<span style="color:#d19a66">0</span>,
				<span style="color:#d19a66">"count"</span>:<span style="color:#d19a66">1</span>,
				<span style="color:#d19a66">"payType"</span>:<span style="color:#98c379">"WECHAT_PAY"</span>,
				<span style="color:#d19a66">"payClient"</span>:<span style="color:#98c379">"MINI"</span>,
				<span style="color:#d19a66">"mobile"</span>:<span style="color:#98c379">"15812345678"</span>,
				<span style="color:#d19a66">"goodname"</span>:<span style="color:#98c379">"apple"</span>,
				<span style="color:#d19a66">"orderType"</span>:<span style="color:#98c379">"NORMAL"</span>,
				<span style="color:#d19a66">"logistics"</span>:<span style="color:#98c379">"NONE"</span>
			}
		}
	}
]</span></span>

postman发送请求示例

mock文件参数详解

description:请求描述(程序不会识别到)

request:请求内容

  • uri:请求的url资源路径
  • method:请求类型,支持HTTP协议相关的请求类型,如post/get/put/delete等
  • headers:request的请求头
  • token:接口请求必须在headers带的token
  • cookies:接口进行cookie信息的校验
  • queries:get请求的请求参数
  • forms:post的表单请求体
  • json:request的请求json数据,当然也可是本地的json文件(可实现数据分离)

response:响应内容

  • status:定义http响应状态码
  • headers:response的响应头
  • json:response的响应json数据,当然也可是本地的json文件(可实现数据分离)
  • text:text响应体
  • redirectTo:请求时重定向

注:多个请求的mock可以写到一个文件中,每个mock之间以英文的逗号间隔,以下为不同请求方式的接口

<span style="background-color:#282c34"><span style="color:#abb2bf">[
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"首页"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/index"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"get"</span>
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"text"</span>: <span style="color:#98c379">"Welcome to the the home page..."</span>
		}
	},
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"个人主页"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/userhomepage"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"get"</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"token"</span>: <span style="color:#98c379">"mocktoken9gd878ad"</span>
			},
			<span style="color:#d19a66">"queries"</span>: {
				<span style="color:#d19a66">"userid"</span>: <span style="color:#98c379">"3882"</span>,
				<span style="color:#d19a66">"name"</span>: <span style="color:#98c379">"lucy"</span>
			}
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"code"</span>: <span style="color:#98c379">"10000"</span>,
				<span style="color:#d19a66">"message"</span>: <span style="color:#98c379">"进入个人主页成功"</span>,
				<span style="color:#d19a66">"data"</span>: {
					<span style="color:#d19a66">"name"</span>: <span style="color:#98c379">"lucy"</span>,
					<span style="color:#d19a66">"age"</span>: <span style="color:#98c379">"19"</span>,
					<span style="color:#d19a66">"addr"</span>: [<span style="color:#98c379">"beijing"</span>,<span style="color:#98c379">"shanghai"</span>,<span style="color:#98c379">"chengdu"</span>],
					<span style="color:#d19a66">"tel"</span>: <span style="color:#98c379">"15512348888"</span>,
					<span style="color:#d19a66">"lastlogin"</span>: <span style="color:#98c379">"2020-10-01 10:55:23"</span>
				}
			}
		}
	},
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"登录,请求Content-Type:application/json"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/login"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"post"</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"username"</span>: <span style="color:#98c379">"admin"</span>,
				<span style="color:#d19a66">"password"</span>: <span style="color:#98c379">"123456"</span>
			}
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"code"</span>: <span style="color:#98c379">"10000"</span>,
				<span style="color:#d19a66">"message"</span>: <span style="color:#98c379">"登录成功"</span>,
				<span style="color:#d19a66">"data"</span>: {
					<span style="color:#d19a66">"userid"</span>: <span style="color:#98c379">"3882"</span>,
					<span style="color:#d19a66">"name"</span>: <span style="color:#98c379">"lucy"</span>,
					<span style="color:#d19a66">"addr"</span>: <span style="color:#98c379">"chengdu"</span>,
					<span style="color:#d19a66">"tel"</span>: <span style="color:#98c379">"13355556666"</span>,
					<span style="color:#d19a66">"token"</span>: <span style="color:#98c379">"mocktoken9gd878ad"</span>
				}
			}
		}
	},
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"商品详情页,请求Content-Type:multipart/form-data"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/details"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"post"</span>,
			<span style="color:#d19a66">"forms"</span>: {
				<span style="color:#d19a66">"goodid"</span>: <span style="color:#98c379">"1"</span>,
				<span style="color:#d19a66">"date"</span>: <span style="color:#98c379">"20220101"</span>
			}
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"goodid"</span>: <span style="color:#98c379">"1"</span>,
				<span style="color:#d19a66">"name"</span>:<span style="color:#98c379">"pears"</span>,
				<span style="color:#d19a66">"status"</span>:<span style="color:#98c379">"1"</span>,
				<span style="color:#d19a66">"stock"</span>:<span style="color:#98c379">"25"</span>,
				<span style="color:#d19a66">"vip_amount "</span>:<span style="color:#98c379">"24"</span>,
				<span style="color:#d19a66">"sale_amount"</span>:<span style="color:#98c379">"18"</span>,
				<span style="color:#d19a66">"market_amount"</span>:<span style="color:#98c379">"23.6"</span>,
				<span style="color:#d19a66">"attribute_value"</span>:<span style="color:#98c379">"丰富营养"</span>,
				<span style="color:#d19a66">"product_attr_vals"</span>:<span style="color:#98c379">"单果300g"</span>,
				<span style="color:#d19a66">"share_title"</span>:<span style="color:#98c379">"分享标题"</span>,
				<span style="color:#d19a66">"share_descrip"</span>:<span style="color:#98c379">"分享描述"</span>,
				<span style="color:#d19a66">"license"</span>:<span style="color:#98c379">"营业执照"</span>,
				<span style="color:#d19a66">"employType"</span>:<span style="color:#d19a66">0</span>
			}
		}
	},
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"订单详情页,请求Content-Type:application/x-www-form-urlencoded"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/order"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"post"</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/x-www-form-urlencoded"</span>,
				<span style="color:#d19a66">"token"</span>: <span style="color:#98c379">"mocktoken9gd878ad"</span>
			},
			<span style="color:#d19a66">"forms"</span>: {
				<span style="color:#d19a66">"ordernum"</span>: <span style="color:#98c379">"20201010"</span>,
				<span style="color:#d19a66">"userid"</span>: <span style="color:#98c379">"3218"</span>
			}
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"orderNo"</span>: <span style="color:#98c379">"LO20111216292785711001"</span>,
				<span style="color:#d19a66">"productId"</span>:<span style="color:#d19a66">2</span>,
				<span style="color:#d19a66">"skuId"</span>:<span style="color:#d19a66">22</span>,
				<span style="color:#d19a66">"expert"</span>:<span style="color:#d19a66">0</span>,
				<span style="color:#d19a66">"count"</span>:<span style="color:#d19a66">1</span>,
				<span style="color:#d19a66">"payType"</span>:<span style="color:#98c379">"WECHAT_PAY"</span>,
				<span style="color:#d19a66">"payClient"</span>:<span style="color:#98c379">"MINI"</span>,
				<span style="color:#d19a66">"mobile"</span>:<span style="color:#98c379">"15812345678"</span>,
				<span style="color:#d19a66">"goodname"</span>:<span style="color:#98c379">"apple"</span>,
				<span style="color:#d19a66">"orderType"</span>:<span style="color:#98c379">"NORMAL"</span>,
				<span style="color:#d19a66">"logistics"</span>:<span style="color:#98c379">"NONE"</span>
			}
		}
	},
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"物流详情,请求Content-Type:application/json,必须加上token才能访问"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/logistics"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"post"</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json"</span>,
				<span style="color:#d19a66">"token"</span>: <span style="color:#98c379">"mocktoken9gd878ad"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"LogisticCode"</span>: <span style="color:#98c379">"118461988807"</span>,
				<span style="color:#d19a66">"ShipperCode"</span>: <span style="color:#98c379">"SF"</span>
			}
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"EBusinessID"</span>: <span style="color:#98c379">"1109259"</span>,
				<span style="color:#d19a66">"OrderCode"</span>: <span style="color:#98c379">"1"</span>,
				<span style="color:#d19a66">"ShipperCode"</span>: <span style="color:#98c379">"SF"</span>,
				<span style="color:#d19a66">"LogisticCode"</span>: <span style="color:#98c379">"118461988807"</span>,
				<span style="color:#d19a66">"Success"</span>: <span style="color:#56b6c2">true</span>,
				<span style="color:#d19a66">"CallBack"</span>:<span style="color:#98c379">""</span>,
				<span style="color:#d19a66">"State"</span>: <span style="color:#d19a66">3</span>,
				<span style="color:#d19a66">"Reason"</span>: <span style="color:#56b6c2">null</span>,
				<span style="color:#d19a66">"Traces"</span>: [
					{
					<span style="color:#d19a66">"AcceptTime"</span>: <span style="color:#98c379">"2014/06/25 08:05:37"</span>,
					<span style="color:#d19a66">"AcceptStation"</span>: <span style="color:#98c379">"正在派件..(派件人邓裕富,电话:18718866310)[深圳市]"</span>,
					<span style="color:#d19a66">"Remark"</span>: <span style="color:#98c379">"超时1小时"</span>
					},
					{
					<span style="color:#d19a66">"AcceptTime"</span>: <span style="color:#98c379">"2014/06/25 04:01:28"</span>,
					<span style="color:#d19a66">"AcceptStation"</span>: <span style="color:#98c379">"快件在深圳集散中心,准备送往下一站深圳[深圳市]"</span>,
					<span style="color:#d19a66">"Remark"</span>: <span style="color:#98c379">"准时到达"</span>
					},
					{
					<span style="color:#d19a66">"AcceptTime"</span>: <span style="color:#98c379">"2014/06/25 01:41:06"</span>,
					<span style="color:#d19a66">"AcceptStation"</span>: <span style="color:#98c379">"快件在深圳集散中心[深圳市]"</span>,
					<span style="color:#d19a66">"Remark"</span>: <span style="color:#98c379">"提前10分钟"</span>
					},
					{
					<span style="color:#d19a66">"AcceptTime"</span>: <span style="color:#98c379">"2014/06/24 20:18:58"</span>,
					<span style="color:#d19a66">"AcceptStation"</span>: <span style="color:#98c379">"已收件[深圳市]"</span>,
					<span style="color:#d19a66">"Remark"</span>: <span style="color:#98c379">"准时到达"</span>
					},
					{
					<span style="color:#d19a66">"AcceptTime"</span>: <span style="color:#98c379">"2014/06/24 20:55:28"</span>,
					<span style="color:#d19a66">"AcceptStation"</span>: <span style="color:#98c379">"快件在深圳,准备送往下一站深圳集散中心[深圳市]"</span>,
					<span style="color:#d19a66">"Remark"</span>: <span style="color:#98c379">"超时30分钟"</span>
					},
					{
					<span style="color:#d19a66">"AcceptTime"</span>: <span style="color:#98c379">"2014/06/25 10:23:03"</span>,
					<span style="color:#d19a66">"AcceptStation"</span>: <span style="color:#98c379">"派件已签收[深圳市]"</span>,
					<span style="color:#d19a66">"Remark"</span>: <span style="color:#98c379">"超时17分钟"</span>
					},
					{
					<span style="color:#d19a66">"AcceptTime"</span>: <span style="color:#98c379">"2014/06/25 10:23:03"</span>,
					<span style="color:#d19a66">"AcceptStation"</span>: <span style="color:#98c379">"签收人是:已签收[深圳市]"</span>,
					<span style="color:#d19a66">"Remark"</span>: <span style="color:#98c379">"送货上门签收"</span>
					}
				]
			}
		}
	},
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"上传json文件,仅能postman使用binary访问"</span>,
        <span style="color:#d19a66">"request"</span>: {
            <span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/file"</span>,
            <span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"post"</span>,
            <span style="color:#d19a66">"file"</span>: {
                <span style="color:#d19a66">"json"</span>: <span style="color:#98c379">"C:\\data.json"</span>
            }
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>: {
				<span style="color:#d19a66">"code"</span>:<span style="color:#98c379">"10000"</span>,
				<span style="color:#d19a66">"message"</span>:<span style="color:#98c379">"文件上传成功"</span>,
				<span style="color:#d19a66">"data"</span>:{
				}
			}
		}
	},
	{
		<span style="color:#d19a66">"description"</span>:<span style="color:#98c379">"重定向到百度"</span>,
		<span style="color:#d19a66">"request"</span>:{
		  <span style="color:#d19a66">"uri"</span>:<span style="color:#98c379">"/redirect"</span>,
		  <span style="color:#d19a66">"method"</span>:<span style="color:#98c379">"get"</span>
		},
		<span style="color:#d19a66">"redirectTo"</span>:<span style="color:#98c379">"http://www.baidu.com"</span>,
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">301</span>
		}
	},
	{
		<span style="color:#d19a66">"description"</span>: <span style="color:#98c379">"查询天气"</span>,
		<span style="color:#d19a66">"request"</span>: {
			<span style="color:#d19a66">"uri"</span>: <span style="color:#98c379">"/weatherquery"</span>,
			<span style="color:#d19a66">"method"</span>: <span style="color:#98c379">"get"</span>
		},
		<span style="color:#d19a66">"response"</span>: {
			<span style="color:#d19a66">"status"</span>: <span style="color:#d19a66">200</span>,
			<span style="color:#d19a66">"headers"</span>: {
				<span style="color:#d19a66">"Content-Type"</span>: <span style="color:#98c379">"application/json;charset=UTF-8"</span>
			},
			<span style="color:#d19a66">"json"</span>:{
				<span style="color:#d19a66">"reason"</span>: <span style="color:#98c379">"查询成功"</span>,
				<span style="color:#d19a66">"result"</span>:{
					<span style="color:#d19a66">"city"</span>:<span style="color:#98c379">"苏州"</span>,
					<span style="color:#d19a66">"realtime"</span>:{
						<span style="color:#d19a66">"temperature"</span>:<span style="color:#98c379">"4"</span>,
						<span style="color:#d19a66">"humidity"</span>:<span style="color:#98c379">"82"</span>,
						<span style="color:#d19a66">"info"</span>:<span style="color:#98c379">"阴天"</span>,
						<span style="color:#d19a66">"wid"</span>:<span style="color:#98c379">"02"</span>,
						<span style="color:#d19a66">"direct"</span>:<span style="color:#98c379">"西北方向"</span>,
						<span style="color:#d19a66">"power"</span>:<span style="color:#98c379">"3"</span>,
						<span style="color:#d19a66">"aqi"</span>:<span style="color:#98c379">"80"</span>
					},
					<span style="color:#d19a66">"future"</span>:[{
							<span style="color:#d19a66">"date"</span>: <span style="color:#98c379">"2019-02-22"</span>,
							<span style="color:#d19a66">"temperature"</span>:<span style="color:#98c379">"1/7摄氏"</span>,
							<span style="color:#d19a66">"weather"</span>:<span style="color:#98c379">"小雨转多yun"</span>,
							<span style="color:#d19a66">"wid"</span>:{
								<span style="color:#d19a66">"day"</span>:<span style="color:#98c379">"07"</span>,
								<span style="color:#d19a66">"night"</span>:<span style="color:#98c379">"12"</span>
							},
							<span style="color:#d19a66">"direct"</span>:<span style="color:#98c379">"北风转西北风"</span>
						},
						{
							<span style="color:#d19a66">"date"</span>:<span style="color:#98c379">"2019-02-23"</span>,
							<span style="color:#d19a66">"temperature"</span>:<span style="color:#98c379">"2/11摄氏"</span>,
							<span style="color:#d19a66">"weather"</span>:<span style="color:#98c379">"多云转阴"</span>,
							<span style="color:#d19a66">"wid"</span>:{
								<span style="color:#d19a66">"day"</span>:<span style="color:#98c379">"01"</span>,
								<span style="color:#d19a66">"night"</span>:<span style="color:#98c379">"02"</span>
							},
							<span style="color:#d19a66">"direct"</span>: <span style="color:#98c379">"北风转东北风"</span>
						},
						{
							<span style="color:#d19a66">"date"</span>: <span style="color:#98c379">"2019-02-24"</span>,
							<span style="color:#d19a66">"temperature"</span>: <span style="color:#98c379">"6/12摄氏"</span>,
							<span style="color:#d19a66">"weather"</span>: <span style="color:#98c379">"多云"</span>,
							<span style="color:#d19a66">"wid"</span>: {
								<span style="color:#d19a66">"day"</span>: <span style="color:#98c379">"01"</span>,
								<span style="color:#d19a66">"night"</span>: <span style="color:#98c379">"05"</span>
							},
							<span style="color:#d19a66">"direct"</span>: <span style="color:#98c379">"东北风转北风"</span>
						},
						{
							<span style="color:#d19a66">"date"</span>: <span style="color:#98c379">"2019-02-25"</span>,
							<span style="color:#d19a66">"temperature"</span>: <span style="color:#98c379">"5/12摄氏"</span>,
							<span style="color:#d19a66">"weather"</span>: <span style="color:#98c379">"小雨转晴"</span>,
							<span style="color:#d19a66">"wid"</span>: {
								<span style="color:#d19a66">"day"</span>: <span style="color:#98c379">"07"</span>,
								<span style="color:#d19a66">"night"</span>: <span style="color:#98c379">"09"</span>
							},
							<span style="color:#d19a66">"direct"</span>: <span style="color:#98c379">"东风转北风向"</span>
						},
						{
							<span style="color:#d19a66">"date"</span>: <span style="color:#98c379">"2019-02-26"</span>,
							<span style="color:#d19a66">"temperature"</span>: <span style="color:#98c379">"5/11摄氏"</span>,
							<span style="color:#d19a66">"weather"</span>: <span style="color:#98c379">"多云转小yu"</span>,
							<span style="color:#d19a66">"wid"</span>: {
								<span style="color:#d19a66">"day"</span>: <span style="color:#98c379">"01"</span>,
								<span style="color:#d19a66">"night"</span>: <span style="color:#98c379">"07"</span>
							},
							<span style="color:#d19a66">"direct"</span>: <span style="color:#98c379">"东南风向"</span>
						}
					]
				},
			<span style="color:#d19a66">"error_code"</span>: <span style="color:#d19a66">0</span>
		}
	}
}
]
</span></span>
https协议

添加https证书

1、在C:\Users\Administrator路径下新建.keystore用来保存证书

(设置的电脑名称不一样对应路径有区别)

2、生成https证书文件(可以是cer或者jks格式)

使用win+r输入cmd,在cmd窗口输入如下命令

<span style="background-color:#282c34"><span style="color:#abb2bf">keytool -genkey -alias cps.cer -keyalg RSA -keystore C:<span style="color:#61aeee">\U</span>sers<span style="color:#61aeee">\A</span>dministrator<span style="color:#61aeee">\.</span>keystore<span style="color:#61aeee">\h</span>ttpsmoco.cer -keysize 1024 -validity 99999</span></span>

操作是在命令行里完成的,命令解释:
-alias 别名,每个证书都要起自己独有的名字
-keyalg 如果是RSA算法,那么就是RSA
-keystore 填写完整的keystore文件保存路径以及文件名
-keysize 秘钥长度,一般1024
-validity 有效天数

之后会让输入 秘钥库 的密码,连续输入两遍,这里自行设置即可,然后会要求填写一些项目,姓名,组织机构,城市等等,最后会要求输入 证书 的密码,也是连续输入两遍,与证书库密码一样的话可以直接回车确(秘钥库密码和证书密码启动moco要使用)

3、JKS秘钥库使用专用命令再次尝试:

<span style="background-color:#282c34"><span style="color:#abb2bf">keytool -importkeystore -srckeystore C:<span style="color:#61aeee">\U</span>sers<span style="color:#61aeee">\A</span>dministrator<span style="color:#61aeee">\.</span>keystore<span style="color:#61aeee">\h</span>ttpsmoco.cer -destkeystore C:<span style="color:#61aeee">\U</span>sers<span style="color:#61aeee">\A</span>dministrator<span style="color:#61aeee">\.</span>keystore<span style="color:#61aeee">\h</span>ttpsmoco.cer -deststoretype pkcs12</span></span>

操作如下:

这样证书就生成成功,可以去目录查看。操作如下:

4、启动https服务

进入moco-runner-1.3.0-standalone.jar所在目录,然后进入 cmd 界面,输入启动https服务的命令

<span style="background-color:#282c34"><span style="color:#abb2bf"><span style="color:#98c379">java</span> -jar moco-runner-<span style="color:#d19a66">1</span>.<span style="color:#d19a66">3</span>.<span style="color:#d19a66">0</span>-standalone.jar https -p <span style="color:#d19a66">443</span> -c result.json --https C:\Users\Administrator\.keystore\httpsmoco.cer --cert httpsmoco --keystore httpsmoco</span></span>

命令解释:
【443】https服务默认开启的是443端口
【C:\Users\Administrator.keystore\httpsmoco.cer】cer证书所在路径
【–cert httpsmoco】秘钥库的密码(在第2步设置的秘钥库口令)
【–keystore httpsmoco】证书/秘钥的密码(在第2步设置的秘钥口令)

这两年,IT行业面临经济周期波动与AI产业结构调整的双重压力,确实有很多运维与网络工程师因企业缩编或技术迭代而暂时失业。

很多人都在提运维网工失业后就只能去跑滴滴送外卖了,但我想分享的是,对于运维人员来说,即便失业以后仍然有很多副业可以尝试。

运维网工测试副业方向

运维,千万不要再错过这些副业机会!

第一个是知识付费类副业:输出经验打造个人IP

在线教育平台讲师

操作路径:在慕课网、极客时间等平台开设《CCNA实战》《Linux运维从入门到精通》等课程,或与培训机构合作录制专题课。
收益模式:课程销售分成、企业内训。

技术博客与公众号运营

操作路径:撰写网络协议解析、故障排查案例、设备评测等深度文章,通过公众号广告、付费专栏及企业合作变现。
收益关键:每周更新2-3篇原创,结合SEO优化与社群运营。

第二个是技术类副业:深耕专业领域变现

企业网络设备配置与优化服务

操作路径:为中小型企业提供路由器、交换机、防火墙等设备的配置调试、性能优化及故障排查服务。可通过本地IT服务公司合作或自建线上接单平台获客。
收益模式:按项目收费或签订年度维护合同。

远程IT基础设施代维

操作路径:通过承接服务器监控、日志分析、备份恢复等远程代维任务。适合熟悉Zabbix、ELK等技术栈的工程师。
收益模式:按工时计费或包月服务。

网络安全顾问与渗透测试

操作路径:利用OWASP Top 10漏洞分析、Nmap/BurpSuite等工具,为企业提供漏洞扫描、渗透测试及安全加固方案。需考取CISP等认证提升资质。
收益模式:单次渗透测试报告收费;长期安全顾问年费。

比如不久前跟我一起聊天的一个粉丝,他自己之前是大四实习的时候做的运维,发现运维7*24小时待命受不了,就准备转网安,学了差不多2个月,然后开始挖漏洞,光是补天的漏洞奖励也有个四五千,他说自己每个月的房租和饭钱就够了。

在这里插入图片描述

为什么我会推荐你网安是运维人员的绝佳副业&转型方向?

1.你的经验是巨大优势: 你比任何人都懂系统、网络和架构。漏洞挖掘、内网渗透、应急响应,这些核心安全能力本质上是“攻击视角下的运维”。你的运维背景不是从零开始,而是降维打击。

2.越老越吃香,规避年龄危机: 安全行业极度依赖经验。你的排查思路、风险意识和对复杂系统的理解能力,会随着项目积累而愈发珍贵,真正做到“姜还是老的辣”。

3.职业选择极其灵活: 你可以加入企业成为安全专家,可以兼职“挖洞“获取丰厚奖金,甚至可以成为自由顾问。这种多样性为你提供了前所未有的抗风险能力。

4.市场需求爆发,前景广阔: 在国家级政策的推动下,从一线城市到二三线地区,安全人才缺口正在急剧扩大。现在布局,正是抢占未来先机的黄金时刻。

在这里插入图片描述

运维网工测试转行学习路线

在这里插入图片描述

(一)第一阶段:网络安全筑基

1. 阶段目标

你已经有运维经验了,所以操作系统、网络协议这些你不是零基础。但要学安全,得重新过一遍——只不过这次我们是带着“安全视角”去学。

2. 学习内容

**操作系统强化:**你需要重点学习 Windows、Linux 操作系统安全配置,对比运维工作中常规配置与安全配置的差异,深化系统安全认知(比如说日志审计配置,为应急响应日志分析打基础)。

**网络协议深化:**结合过往网络协议应用经验,聚焦 TCP/IP 协议簇中的安全漏洞及防护机制,如 ARP 欺骗、TCP 三次握手漏洞等(为 SRC 漏扫中协议层漏洞识别铺垫)。

**Web 与数据库基础:**补充 Web 架构、HTTP 协议及 MySQL、SQL Server 等数据库安全相关知识,了解 Web 应用与数据库在网安中的作用。

**编程语言入门:**学习 Python 基础语法,掌握简单脚本编写,为后续 SRC 漏扫自动化脚本开发及应急响应工具使用打基础。

**工具实战:**集中训练抓包工具(Wireshark)、渗透测试工具(Nmap)、漏洞扫描工具(Nessus 基础版)的使用,结合模拟场景练习工具应用(掌握基础扫描逻辑,为 SRC 漏扫工具进阶做准备)。

(二)第二阶段:漏洞挖掘与 SRC 漏扫实战

1. 阶段目标

这阶段是真正开始“动手”了。信息收集、漏洞分析、工具联动,一样不能少。

熟练运用漏洞挖掘及 SRC 漏扫工具,具备独立挖掘常见漏洞及 SRC 平台漏扫实战能力,尝试通过 SRC 挖洞搞钱,不管是低危漏洞还是高危漏洞,先挖到一个。

2. 学习内容

信息收集实战:结合运维中对网络拓扑、设备信息的了解,强化基本信息收集、网络空间搜索引擎(Shodan、ZoomEye)、域名及端口信息收集技巧,针对企业级网络场景开展信息收集练习(为 SRC 漏扫目标筛选提供支撑)。

漏洞原理与分析:深入学习 SQL 注入、CSRF、文件上传等常见漏洞的原理、危害及利用方法,结合运维工作中遇到的类似问题进行关联分析(明确 SRC 漏扫重点漏洞类型)。

工具进阶与 SRC 漏扫应用:

  • 系统学习 SQLMap、BurpSuite、AWVS 等工具的高级功能,开展工具联用实战训练;

  • 专项学习 SRC 漏扫流程:包括 SRC 平台规则解读(如漏洞提交规范、奖励机制)、漏扫目标范围界定、漏扫策略制定(全量扫描 vs 定向扫描)、漏扫结果验证与复现;

  • 实战训练:使用 AWVS+BurpSuite 组合开展 SRC 平台目标漏扫,练习 “扫描 - 验证 - 漏洞报告撰写 - 平台提交” 全流程。
    SRC 实战演练:选择合适的 SRC 平台(如补天、CNVD)进行漏洞挖掘与漏扫实战,积累实战经验,尝试获取挖洞收益。

恭喜你,如果学到这里,你基本可以下班搞搞副业创收了,并且具备渗透测试工程师必备的「渗透技巧」、「溯源能力」,让你在黑客盛行的年代别背锅,工作实现升职加薪的同时也能开创副业创收!

如果你想要入坑黑客&网络安全,笔者给大家准备了一份:全网最全的网络安全资料包需要保存下方图片,微信扫码即可前往获取!

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

(三)第三阶段:渗透测试技能学习

1. 阶段目标

全面掌握渗透测试理论与实战技能,能够独立完成渗透测试项目,编写规范的渗透测试报告,具备渗透测试工程师岗位能力,为护网红蓝对抗及应急响应提供技术支撑。

2. 学习内容

渗透测试核心理论:系统学习渗透测试流程、方法论及法律法规知识,明确渗透测试边界与规范(与红蓝对抗攻击边界要求一致)。

实战技能训练:开展漏洞扫描、漏洞利用、电商系统渗透测试、内网渗透、权限提升(Windows、Linux)、代码审计等实战训练,结合运维中熟悉的系统环境设计测试场景(强化红蓝对抗攻击端技术能力)。

工具开发实践:基于 Python 编程基础,学习渗透测试工具开发技巧,开发简单的自动化测试脚本(可拓展用于 SRC 漏扫自动化及应急响应辅助工具)。

报告编写指导:学习渗透测试报告的结构与编写规范,完成多个不同场景的渗透测试报告撰写练习(与 SRC 漏洞报告、应急响应报告撰写逻辑互通)。

(四)第四阶段:企业级安全攻防(含红蓝对抗)、应急响应

1. 阶段目标

掌握企业级安全攻防、护网红蓝对抗及应急响应核心技能,考取网安行业相关证书。

2. 学习内容

护网红蓝对抗专项:

  • 红蓝对抗基础:学习护网行动背景、红蓝对抗规则(攻击范围、禁止行为)、红蓝双方角色职责(红队:模拟攻击;蓝队:防御检测与应急处置);

  • 红队实战技能:强化内网渗透、横向移动、权限维持、免杀攻击等高级技巧,模拟护网中常见攻击场景;

  • 蓝队实战技能:学习安全设备(防火墙、IDS/IPS、WAF)联动防御配置、安全监控平台(SOC)使用、攻击行为研判与溯源方法;

  • 模拟护网演练:参与团队式红蓝对抗演练,完整体验 “攻击 - 检测 - 防御 - 处置” 全流程。
    应急响应专项:

  • 应急响应流程:学习应急响应 6 步流程(准备 - 检测 - 遏制 - 根除 - 恢复 - 总结),掌握各环节核心任务;

  • 实战技能:开展操作系统入侵响应(如病毒木马清除、异常进程终止)、数据泄露应急处置、漏洞应急修补等实战训练;

  • 工具应用:学习应急响应工具(如 Autoruns、Process Monitor、病毒分析工具)的使用,提升处置效率;

  • 案例复盘:分析真实网络安全事件应急响应案例(如勒索病毒事件),总结处置经验。
    其他企业级攻防技能:学习社工与钓鱼、CTF 夺旗赛解析等内容,结合运维中企业安全防护需求深化理解。

证书备考:针对网安行业相关证书考试内容(含红蓝对抗、应急响应考点)进行专项复习,参加模拟考试,查漏补缺。

运维网工测试转行网络攻防知识库分享

网络安全这行,不是会几个工具就能搞定的。你得有体系,懂原理,能实战。尤其是从运维转过来的,别浪费你原来的经验——你比纯新人强多了。

但也要沉得住气,别学了两天Web安全就觉得自己是黑客了。内网、域渗透、代码审计、应急响应,要学的还多着呢。

如果你真的想转,按这个路子一步步走,没问题。如果你只是好奇,我劝你再想想——这行要持续学习,挺累的,但也是真有意思。

关于如何学习网络安全,笔者也给大家整理好了全套网络安全知识库,需要的可以扫码获取!

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

1、网络安全意识
在这里插入图片描述

2、Linux操作系统
在这里插入图片描述

3、WEB架构基础与HTTP协议
在这里插入图片描述

4、Web渗透测试
在这里插入图片描述

5、渗透测试案例分享
在这里插入图片描述

6、渗透测试实战技巧
在这里插入图片描述

7、攻防对战实战
在这里插入图片描述

8、CTF之MISC实战讲解
在这里插入图片描述

关于如何学习网络安全,笔者也给大家整理好了全套网络安全知识库,需要的可以扫码获取!

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值