【问题标题】:Format string attack, difference between %_$d and %d格式化字符串攻击,%_$d 和 %d 的区别
【发布时间】:2019-01-17 21:20:27
【问题描述】:

我目前正在研究二进制利用,到目前为止一切顺利。

例如,我唯一不明白的是 %4$d 和 %4d 之间的区别。我在看这个指南:

http://www.kroosec.com/2012/12/protostar-format2.html

最后一行提到了“最小字段宽度”,而使用了 %60d。这与我的问题有关吗?什么时候应该使用 %$d,什么时候应该使用 %d?

【问题讨论】:

    标签: c security printf format-string


    【解决方案1】:

    格式字符串中的美元符号表示 printf 中使用的变量的位置。这样,例如,您可能只有一个函数参数,但在格式字符串中使用它 10 次,或者以不同的顺序使用更多参数。根据编程语言,您可能会或可能不会使用混合 $ 格式。

    【讨论】:

      猜你喜欢
      • 2011-05-16
      • 2019-06-13
      • 1970-01-01
      • 2012-11-04
      • 2021-03-09
      • 1970-01-01
      • 2013-01-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多