pwnable.kr记录
fd
linux fd是一个非负索引值,是文件描述符,打开一个文件时候内核给进程一个文件描述符。后续read write时候只需要提供这个fd。
fd为0是标准输入STDIN_FILENO,1是标准输出STDOIT_FILENO,2是标准错误STDERR_FILENO
linux进程是基于task_struct结构体,里面有个file_struct类型的files变量就是管理进程打开的所有文件的管理结构,内部的核心是通过动态数组和静态数组实现,而fd就是里面这个数组的索引,也就是fd对应着struct file结构体数组相应的地址


而fd就是数组元素struct file的索引,所以如果进程open第一个文件索引一般是3

这个题直接凑出0 fd,然后输入即可
collision
如何利用pwntools远程连接ssh控制进程并且传参
shell=ssh(username,host,port=,password=)
然后shell.process([要执行的进程的信息])
如果要传参,就是[路径,参数1,参数2]
但是参数不能有\x00,不然pwntools会报错

这个题读入20b,分5组加起来要求等于一个值,随便分配但是不能有\x00,不然有问题
sendline可以直接发送各种数据类型不用转换
关于随机数rand(),没有srand()情况下种子是1,然后遵循固定的算法
pr=remote(ip,port)是远程nc的
关于ssh传输文件 sftp -P port username@ip
黄粱一梦,终是一空
本文来自博客园,作者:hicode002,转载请注明原文链接:https://chuna2.787528.xyz/hicode002/p/19354297

浙公网安备 33010602011771号