专栏名称: 独眼情报
分享有价值的网络安全威胁情报!情报有时效性,加星标可以及时收到推送。
目录
相关文章推荐
贵州高院  ·  “环保普法夜市”,带你体验不一样的盛宴! ·  6 小时前  
贵州高院  ·  “环保普法夜市”,带你体验不一样的盛宴! ·  6 小时前  
Kevin在纽约  ·  #美国陆军成立250周年纪念# ... ·  14 小时前  
51好读  ›  专栏  ›  独眼情报

供应链老 6 投毒必学技能:Commit Stomping

独眼情报  · 公众号  ·  · 2025-05-18 11:25

正文

请到「今天看啥」查看全文


git commit --amend 会重写提交。Git 保留 GIT_AUTHOR_DATE ,但会更新 GIT_COMMITTER_DATE 以反映更改被重写的时间。

git commit --amend

这会调整提交元数据,但不会更改作者时间,除非显式覆盖。

多个提交者

在协作工作流程中:

  • 开发人员可以创建补丁并将其通过电子邮件发送
  • 维护者或审阅者随后可以提交它

在这些情况下,作者和提交者可能在身份和时区上有所不同。如果时间戳没有标准化,这种差异可能会使取证分析复杂化。

手动时间戳控制

Git 允许你通过环境变量控制时间戳:

GIT_AUTHOR_DATE="2025-05-01T10:00:00" \
GIT_COMMITTER_DATE="2025-01-15T15:30:00" \
git commit -m "Insert logic for token generation"

这使得合法的元数据保存成为可能,或者被滥用来伪造历史。

支持的时间戳格式

Git 支持这些环境变量和 --date 标志的各种格式:

1. Git 内部格式

 

示例:

GIT_AUTHOR_DATE="1700000000 +0100"

这代表 2024 年 11 月 14 日,欧洲中部时间 06:13:20。

2. ISO 8601

GIT_AUTHOR_DATE="2024-11-14T06:13:20+01:00"
GIT_AUTHOR_DATE="2024-11-14 06:13:20 +0100"

3. RFC 2822

GIT_AUTHOR_DATE="Tue, 14 Nov 2024 06:13:20 +0100"

4. 相对

GIT_AUTHOR_DATE="2 weeks ago"






请到「今天看啥」查看全文