DSb*_*ard 2 windows assembly x86-64 command-line-arguments
我使用 fasm 但也许这个问题不依赖于汇编语言版本。命令行参数字符串存储在哪里?我需要在程序启动时复制这个字符串还是保证它无限期地存在?我的程序中的缓冲区溢出等可以覆盖原始文件吗?
命令行参数是进程环境块 (PEB) 的一部分,在进程启动后不会更改。您可以通过 访问命令行GetCommandLineW,也可以自己解析参数。也存在CommandLineToArgvW为你做一些解析的。
字符串数据在可写内存中,所以是的,如果您有修改一个参数的错误/不安全代码,其中的溢出可能会修改另一个参数。
| 归档时间: |
|
| 查看次数: |
46 次 |
| 最近记录: |