https://t.cn/A6a2ZdfC
SafeSEH对异常处理的保护原理:
编译选项/SafeSEH启动,VS2003以后默认启用。
生成SafeSEH表,放在PE文件中,调用异常处理函数的时候,将地址与SafeSEH表中的地址比较。
检查异常处理链是否位于当前程序的栈中,如果不在栈中,则程序终止异常处理函数的调用。
检查异常处理函数指针是否在程序的栈中,如果指向当前栈中,则终止异常处理函数的调用。
前面两项检查都通过后,程序调用一个全新的函数 RtlIsValidHandler ,对异常处理函数的有效性进行验证。
RtlIsValidHandler检测原理:
首先,该函数判断异常处理函数地址是不是在加载模块的内存空间,如果属于加载模块的内存空间,校验函数将依次进行如下校验:
(1)判断程序是否设置了IMAGE_DLLCHARACTERISTICS_NO_SEH 标识。如果设置了这个标识,这个程序内的异常会被忽略。所以当这个标志被设置时,函数直接返回校验失败。
(2)检测程序是否包含安全S.E.H 表。如果程序包含安全S.E.H 表,则将当前的异常处理函数地址与该表进行匹配,匹配成功则返回校验成功,匹配失败则返回校验失败。
(3)判断程序是否设置ILonly 标识。如果设置了这个标识,说明该程序只包含.NET 编译人中间语言,函数直接返回校验失败。
(4)判断异常处理函数地址是否位于不可执行页(non-executable page)上。当异常处理函数地址位于不可执行页上时,校验函数将检测DEP 是否开启,如果系统未开启DEP 则返回校验成功,否则程序抛出访问违例的异常。
如果异常处理函数的地址没有包含在加载模块的内存空间,校验函数将直接进行DEP 相关检测,函数依次进行如下校验:
(1)判断异常处理函数地址是否位于不可执行页(non-executable page)上。当异常处理函数地址位于不可执行页上时,校验函数将检测DEP 是否开启,如果系统未开启DEP 则返回校验成功,否则程序抛出访问违例的异常。
(2)判断系统是否允许跳转到加载模块的内存空间外执行,如果允许则返回校验成功,否则返回校验失败。
SafeSEH对异常处理的保护原理:
编译选项/SafeSEH启动,VS2003以后默认启用。
生成SafeSEH表,放在PE文件中,调用异常处理函数的时候,将地址与SafeSEH表中的地址比较。
检查异常处理链是否位于当前程序的栈中,如果不在栈中,则程序终止异常处理函数的调用。
检查异常处理函数指针是否在程序的栈中,如果指向当前栈中,则终止异常处理函数的调用。
前面两项检查都通过后,程序调用一个全新的函数 RtlIsValidHandler ,对异常处理函数的有效性进行验证。
RtlIsValidHandler检测原理:
首先,该函数判断异常处理函数地址是不是在加载模块的内存空间,如果属于加载模块的内存空间,校验函数将依次进行如下校验:
(1)判断程序是否设置了IMAGE_DLLCHARACTERISTICS_NO_SEH 标识。如果设置了这个标识,这个程序内的异常会被忽略。所以当这个标志被设置时,函数直接返回校验失败。
(2)检测程序是否包含安全S.E.H 表。如果程序包含安全S.E.H 表,则将当前的异常处理函数地址与该表进行匹配,匹配成功则返回校验成功,匹配失败则返回校验失败。
(3)判断程序是否设置ILonly 标识。如果设置了这个标识,说明该程序只包含.NET 编译人中间语言,函数直接返回校验失败。
(4)判断异常处理函数地址是否位于不可执行页(non-executable page)上。当异常处理函数地址位于不可执行页上时,校验函数将检测DEP 是否开启,如果系统未开启DEP 则返回校验成功,否则程序抛出访问违例的异常。
如果异常处理函数的地址没有包含在加载模块的内存空间,校验函数将直接进行DEP 相关检测,函数依次进行如下校验:
(1)判断异常处理函数地址是否位于不可执行页(non-executable page)上。当异常处理函数地址位于不可执行页上时,校验函数将检测DEP 是否开启,如果系统未开启DEP 则返回校验成功,否则程序抛出访问违例的异常。
(2)判断系统是否允许跳转到加载模块的内存空间外执行,如果允许则返回校验成功,否则返回校验失败。
#高速公路畅通行动# #880高速路况#
【山西省高速公路路况信息】
2022年6月20日 星期一 09:05 持续更新中...
事故:
★G2003太原绕城高速西北环段,往吕梁方向,迎西站和长风西站之间发生一小轿车撞护栏事故,占用应急车道,请过往车辆注意避让。
★G5京昆高速祁临段:临汾方向,霍州站与明姜站之间K687+700,一辆运输铁粉的半挂车掉边沟,占用第三车道,第一、二车道正常通行。
★S80陵侯高速翼侯段:侯马往晋城方向,赵康枢纽至侯马北站之间K223+400处,发生一起小车撞护栏侧翻事故,请过往车辆注意避让。
管制:
★G5京昆高速祁临段:张兰站出口禁止危化品车辆下高速。
其他:
★G5京昆高速祁临段:
1、明姜站入口超限检测设备改造暂停检测,入口禁止所有货车驶入。
2、介休站治超磅设备改造,入口01车道暂停使用,02车道可正常通行。
★S40灵河高速神河段:偏头关服务区加油站提档升级暂停营业,恢复时间待定。
【交警提示】
★因高速公路服务区提档升级改造施工,6月13日至12月31日,对G55二广高速大盂服务区、G5京昆高速清徐服务区(共2对)进行封闭。封闭期间,行经大盂服务区的车辆可选择临近的原平服务区、太原北服务区停靠;行经清徐服务区的车辆可选择临近的太原服务区、杏花服务区、平遥服务区靠。请行经驾驶人员关注路况信息,合理规划出行路线。由于施工封闭给您带来的不便,敬请谅解。
★高速交警一支队一大队提示:周末控流信息:太原绕城高速东环段,在周五、六、日(每天的14点-21点),对黄寨、阳曲、丈子头东收费站入口的货车采取间断性放行措施!
★G20青银高速薛公岭下坡路段,6月15日到7月31日(每天8点到19点),因增设反光标识施工,封闭太原方向K962+666—K931左侧车道(逐段)施工作业。
★高速交警一支队四大队提示:太原绕城高速西北环段全线(太原绕城高速G2003K44-K88),于6月10日—30日每日06:00-18:00进行多点段路面恢复性养护工程施工。为确保施工及过往车辆通行安全,施工期间将交替封闭一条行车道。请在上述时间途经此路段的机动车驾驶人注意观察路面标志标牌,提前减速慢行,保持安全车距,服从现场工作人员指挥,有序安全通行。报警服务电话:0351—6775742。
★高速交警六支队提示:因疫情防控常态化检测,太长高速,太原收费站出口15点至23点车多通行缓慢,建议去往太原车辆绕行其它收费站驶出高速。
去往太原市晋源区、万柏林区、古交市的车辆可以绕行太原南二环,经京昆高速去往太原西北环;
去往太原小店区、迎泽区、杏花岭区、尖草坪区的车辆,可以绕行太原东二环,经太旧进入太原东环或南环。
请关注“880山西交通广播”微信号,发“高速”两个字查最新路况;发“防疫”两个字查询各收费站检 查 情况;发送“核酸”两个字查询太原六城区便民核酸采样点。
感谢省交通运行监测中心、山西高速交警提供的即时路况。
【山西省高速公路路况信息】
2022年6月20日 星期一 09:05 持续更新中...
事故:
★G2003太原绕城高速西北环段,往吕梁方向,迎西站和长风西站之间发生一小轿车撞护栏事故,占用应急车道,请过往车辆注意避让。
★G5京昆高速祁临段:临汾方向,霍州站与明姜站之间K687+700,一辆运输铁粉的半挂车掉边沟,占用第三车道,第一、二车道正常通行。
★S80陵侯高速翼侯段:侯马往晋城方向,赵康枢纽至侯马北站之间K223+400处,发生一起小车撞护栏侧翻事故,请过往车辆注意避让。
管制:
★G5京昆高速祁临段:张兰站出口禁止危化品车辆下高速。
其他:
★G5京昆高速祁临段:
1、明姜站入口超限检测设备改造暂停检测,入口禁止所有货车驶入。
2、介休站治超磅设备改造,入口01车道暂停使用,02车道可正常通行。
★S40灵河高速神河段:偏头关服务区加油站提档升级暂停营业,恢复时间待定。
【交警提示】
★因高速公路服务区提档升级改造施工,6月13日至12月31日,对G55二广高速大盂服务区、G5京昆高速清徐服务区(共2对)进行封闭。封闭期间,行经大盂服务区的车辆可选择临近的原平服务区、太原北服务区停靠;行经清徐服务区的车辆可选择临近的太原服务区、杏花服务区、平遥服务区靠。请行经驾驶人员关注路况信息,合理规划出行路线。由于施工封闭给您带来的不便,敬请谅解。
★高速交警一支队一大队提示:周末控流信息:太原绕城高速东环段,在周五、六、日(每天的14点-21点),对黄寨、阳曲、丈子头东收费站入口的货车采取间断性放行措施!
★G20青银高速薛公岭下坡路段,6月15日到7月31日(每天8点到19点),因增设反光标识施工,封闭太原方向K962+666—K931左侧车道(逐段)施工作业。
★高速交警一支队四大队提示:太原绕城高速西北环段全线(太原绕城高速G2003K44-K88),于6月10日—30日每日06:00-18:00进行多点段路面恢复性养护工程施工。为确保施工及过往车辆通行安全,施工期间将交替封闭一条行车道。请在上述时间途经此路段的机动车驾驶人注意观察路面标志标牌,提前减速慢行,保持安全车距,服从现场工作人员指挥,有序安全通行。报警服务电话:0351—6775742。
★高速交警六支队提示:因疫情防控常态化检测,太长高速,太原收费站出口15点至23点车多通行缓慢,建议去往太原车辆绕行其它收费站驶出高速。
去往太原市晋源区、万柏林区、古交市的车辆可以绕行太原南二环,经京昆高速去往太原西北环;
去往太原小店区、迎泽区、杏花岭区、尖草坪区的车辆,可以绕行太原东二环,经太旧进入太原东环或南环。
请关注“880山西交通广播”微信号,发“高速”两个字查最新路况;发“防疫”两个字查询各收费站检 查 情况;发送“核酸”两个字查询太原六城区便民核酸采样点。
感谢省交通运行监测中心、山西高速交警提供的即时路况。
更新!【中国车手/华裔车手在方程式比赛中的重要时间节点和成就】
2003 董荷斌 第一位测试F1的华裔车手(测试宝马F1)
2007 董荷斌 A1澳大利亚站主赛季军
2007 程丛夫 A1珠海站冲刺赛季军
2008 董荷斌 GP2摩纳哥站Sprint Race亚军
2012 马青骅 第一个参加F1大奖赛周末的中国车手(意大利站FP1)
2019 周冠宇 F2英国站杆位
2020 周冠宇 F2俄罗斯站Sprint Race冠军
2021 周冠宇 F2巴林站Feature race冠军
2021 周冠宇 宣布成为中国历史上第一位F1正赛车手
2022 周冠宇 F1巴林站首秀以第十名完赛,拿到中国在F1的第一个积分。
2022 周冠宇 F1加拿大站排位首次进入Q3;正赛第八完赛,刷新个人最佳战绩。
#F1加拿大大奖赛周冠宇第8#
2003 董荷斌 第一位测试F1的华裔车手(测试宝马F1)
2007 董荷斌 A1澳大利亚站主赛季军
2007 程丛夫 A1珠海站冲刺赛季军
2008 董荷斌 GP2摩纳哥站Sprint Race亚军
2012 马青骅 第一个参加F1大奖赛周末的中国车手(意大利站FP1)
2019 周冠宇 F2英国站杆位
2020 周冠宇 F2俄罗斯站Sprint Race冠军
2021 周冠宇 F2巴林站Feature race冠军
2021 周冠宇 宣布成为中国历史上第一位F1正赛车手
2022 周冠宇 F1巴林站首秀以第十名完赛,拿到中国在F1的第一个积分。
2022 周冠宇 F1加拿大站排位首次进入Q3;正赛第八完赛,刷新个人最佳战绩。
#F1加拿大大奖赛周冠宇第8#
✋热门推荐