nc的全名是netcat 其主要用途是建立和监听任意TCP和UDP连接,支持ipv4和ipv6。
nc ip地址 ip端口
因此,它可以用来网络调试、端口扫描等等
先
checksec test
[*] '/home/pwn/桌面/buuctf/1/test'
Arch: amd64-64-little
RELRO: Partial RELRO //重定位表只读
Stack: No canary found //栈溢出
NX: NX enabled //堆栈不可执行
PIE: PIE enabled //地址随机化
拖进IDA
int __cdecl main(int argc, const char **argv, const char **envp)
{
system("/bin/sh", argv, envp);
return 0;
}
发现可以直接命令执行
然后根据背景知识,建立连接,执行命令cat flag
桌面$ nc node4.buuoj.cn 26261
:查看当前位置
pwd
/
:然后查看文件
ls
bin
boot
dev
etc
flag
home
lib
lib32
lib64
media
mnt
opt
proc
pwn
root
run
sbin
srv
sys
tmp
usr
var
:于是浏览flag文件
参考链接
https://blog.csdn.net/bing_Max/article/details/119947896