问题一:

当 TAMPER引脚上的信号从 0变成1或者从 1变成 0(取决于备份控制寄存器BKP_CR的 TPAL位),会产生一个侵入检测事件。侵入检测事件将所有数据备份寄存器内容清除。 
  然而为了避免丢失侵入事件,侵入检测信号是边沿检测的信号与侵入检测允许位的逻辑与,从而在侵入检测引脚被允许前发生的侵入事件也可以被检测到。 
●  当 TPAL=0 时:如果在启动侵入检测 TAMPER引脚前(通过设置 TPE位)该引脚已经为高电平,一旦启动侵入检测功能,则会产生一个额外的侵入事件(尽管在 TPE位置 1后并没有出现上升沿)。 
●  当 TPAL=1 时:如果在启动侵入检测引脚 TAMPER前(通过设置 TPE位)该引脚已经为低电平,一旦启动侵入检测功能,则会产生一个额外的侵入事件(尽管在 TPE位置 1后并没有出现下沿)。 
在一个侵入事件被检测到并被清除后,侵入检测引脚 TAMPER应该被禁止。然后,在再次写入备份数据寄存器前重新用 TPE位启动侵入检测功能。这样,可以阻止软件在侵入检测引脚上仍然有侵入事件时对备份数据寄存器进写操作。这相当于对侵入引脚 TAMPER进电平检测。

注:   当 VDD电源断开时,侵入检测功能仍然有效。为避免不必要的复位数据备份寄存器,TAMPER引脚应该在片外连接到正确的电平。

解答:其中“注:当VDD电源断开时,侵入检测功能仍然有效。为了避免不必要的复位数据备份寄存器,TAMPER引脚应该在片外连接到正确的电平。”这句话不要太纠结,这是硬件做的工作,不要钻牛角尖,如果想搞明白可以与硬件工程师沟通。我们做软件的责任是要在这设置好正确的TEMPER电平信号。

TPAL=0时,我们应该将TEMPER引脚拉低。

TPAL=1时,我们应该将TEMPER引脚拉高。(事实上观察了芯片设计图,TEMPER引脚默认的情况下就是高电平)

问题二:

“在一个侵入事件被检测到并被清除后,侵入检测引脚TAMPER应该被禁止。然后,在再次写入备份数据寄存器前重新用TPE位启动侵入检测功能。这样,可以阻止软件在侵入检测引脚上仍然有侵入事件时对备份数据寄存器进行写操作。这相当于对侵入引脚TAMPER进行电平检测。 ”
解答:主要是红字部分,我们为什么不让人家写而禁用TAMPER引脚,实际上我们不是不让人家写,是为用户好,不能让人家受罪。因为假如你把信号写进去,这时候上次已经把中断什么的都关上了,当有入侵时,只是入侵事件标志位由硬件改变,而不进入中断处理子程序,这样的话,无法复位备份数据寄存器,那么备份数据寄存器的内容有可能被窃取,所以我们要对禁止TAMPER引脚。
这样又出现一个问题,入侵允许,配置的时候中断失能的时候,那么出现入侵信号,那么岂不是数据寄存器的内容部自动清除?需要做实验进一步验证。

转载自:http://blog.chinaunix.net/uid-26285146-id-3074111.html

STM32的TAMPER-RTC管脚作为Tamper的使用[转]的更多相关文章

  1. STM32的TAMPER-RTC管脚作为Tamper使用 - 防拆机

    当 TAMPER引脚上的信号从 0变成1或者从 1变成 0(取决于备份控制寄存器BKP_CR的 TPAL位),会产生一个侵入检测事件.侵入检测事件将所有数据备份寄存器内容清除.  然而为了避免丢失侵入 ...

  2. Bypass 360主机卫士SQL注入防御(附tamper脚本)

    0x01 前言 在测试过程中,经常会遇到一些主机防护软件,对这方面做了一些尝试,可成功bypass了GET和POST的注入防御,分享一下姿势. 0x02 环境搭建 Windows Server 200 ...

  3. 使用sqlmap中的tamper脚本绕过waf

    使用sqlmap中tamper脚本绕过waf 脚本名:0x2char.py 作用:用UTF-8全角对应字符替换撇号字符 作用:用等价的CONCAT(CHAR(),...)对应替换每个(MySQL)0x ...

  4. Tamper Data 安装与使用

    Tamper Data概览   注意:我将会讲述一些有关Tamper Data的基本常识,包括它的基本功能,如何安装等. Tamper Data是什么?   Tamper Data 的真实含义,即&q ...

  5. STM32的PA15、PB3、 PB4管脚作普通管脚的解决办法

      最近做了一个板子,使用的是SWD方式进行下载程序,仅仅使用到SWDIO(PA13) 和SWCLK(PA14)两个管脚.我将PA15(JTDI)和PB3(JTDO)管脚用于他用(用于点LED使用), ...

  6. Sqlmap过waf命令tamper各脚本的适用环境

    0x00 相信很多小伙伴和我一样感同身受,站上明明有注入可是被万恶的WAF拦截了或者过滤了,这时候就需要用到SQLMAP强大的tamper了. 0x01 使用方法--tamper xxx.py apo ...

  7. sqlmap tamper脚本备忘录与tamper脚本编写

    查看sqlmap全部脚本 $ python sqlmap.py --list-tampers 使用方法 --tamper=TAMPER 2019.9更新后翻译 * apostrophemask.py- ...

  8. (四)SQLMap之Tamper篡改脚本的类型、作用、适用场景

    目录结构 一.SQLMap中tamper的简介 1.tamper的作用 2.tamper用法 二.适配不同数据库类型的测试tamper 三.SQLMap中tamper篡改脚本的功能解释 一.SQLMa ...

  9. sqlmap Tamper脚本编写

    sqlmap Tamper脚本编写 前言 sqlmap是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞,目前支持的数据库是MySQL, Oracle, Postg ...

随机推荐

  1. 怎么在eclipse中安装svn插件

    Subclipse   Subclipse is an Eclipse Team Provider plug-in providing support for Subversion within th ...

  2. sqlite 判断表中是否包含 某个字段

    数据库 都有一个 根表..(我的理解) 也就是 你创建了一个数据库 里面就带有 一个表 sqlite_master 字段有 type , name  , tbl_name , rootpage ,sq ...

  3. Android应用一般上架流程

    Android App上架所需文件 上架准备  App文件: 1. 安装包 2. 应用商标:图片格式KB. 3. 应用截图(4~6张):图片格式JPG或者PNG.图片大小480*800,且每张大小一致 ...

  4. vim7.4版本在windows下的配置文件及所在位置

    1.vim在windows下默认首先会查找"_vimrc"文件,如果没有则会找".vimrc".造成这个原因是windows早期不支持以点开头的文件及目录.2. ...

  5. DevExpress GridControl List绑定方式下新增行的方法

    List<Person> gridDataList = new List<Person>(); //此处是数据源 List集合 BindingList<Person> ...

  6. 含有按钮的ScrollView在iOS8中无法滚动的解决办法 | ScrollView with UIControl/UIButton subviews not scrollable under iOS 8

    转自:http://zcw.me/blogwp/%E5%90%AB%E6%9C%89%E6%8C%89%E9%92%AE%E7%9A%84scrollview%E5%9C%A8ios8%E4%B8%A ...

  7. scikit-learn:6. Strategies to scale computationally: bigger data

    參考:http://scikit-learn.org/stable/modules/scaling_strategies.html 对于examples.features(或者两者)数量非常大的情况, ...

  8. password学4——Java 加密解密之消息摘要算法(MD5 SHA MAC)

    Java 加密解密之消息摘要算法(MD5 SHA MAC) 消息摘要 消息摘要(Message Digest)又称为数字摘要(Digital Digest). 它是一个唯一相应一个消息或文本的固定长度 ...

  9. express中的路径区别

    请求的url:http://localhost:3000/api/article/upload?q=1000&n=tom请求方法:postconsole.log('hostname==='+r ...

  10. 深度学习领域的Papers

    https://github.com/songrotek/Deep-Learning-Papers-Reading-Roadmap 深度学习论文阅读路线图 Deep Learning Papers R ...