Skip to content
/ xclibc Public
forked from ef4tless/xclibc

A tool to change the libc environment of running files(一个在CTF比赛中用于切换题目运行libc环境的工具)

Notifications You must be signed in to change notification settings

Covteam/xclibc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 

Repository files navigation

xclibc

banner

一个在CTF比赛中用于切换题目运行libc环境的工具,支持所有版本

安装

这个脚本是基于最新版的glibc-all-in-one,我建议你将其安装到~目录

git clone https://github.com/matrix1001/glibc-all-in-one
cd glibc-all-in-one
./update_list

xclibc脚本配置

git clone https://github.com/ef4tless/xclibc.git
cd xclibc
sudo rm /usr/local/bin/xclibc
sudo mv ./xclibc /usr/local/bin
sudo chmod +x /usr/local/bin/xclibc

使用

xclibc [选项] [参数]
-s [libc文件] # 查看libc文件版本
-x [-n] [文件] [libc文件] # 一键给文件配置libc文件相应版本的环境(添加-n选项可以使用修改--replace-needed的方式实现)
-c [-n] [文件] [libc大版本号] [libc小版本环境路径] # 给文件配置指定的libc环境,输入大版本号后回车,可自由选择复制libc小版本环境路径(添加-n选项可以使用修改--replace-needed的方式实现)
-e [deb包] # 解压相应的libc_deb包至glibc_all_in_one路径,通常一个版本需要解压一份本体deb和一份debug_deb包
-r [文件] # 恢复修改过的文件至初始状态
-h # 展示帮助提示
-v # 显示版本号

更新

v0.5: 重定义了选项命令

v0.3: 添加了解压deb包的功能

警告

这个脚本在patch过程中将会删除/usr/lib/debug/.build/,如果你介意这一点,请先备份本机文件。

最后

如果你在使用脚本中遇到任何的问题,请尽快联系我。

感谢cnitlrt师傅最初的脚本思路。

About

A tool to change the libc environment of running files(一个在CTF比赛中用于切换题目运行libc环境的工具)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%