首页 > 解决方案 > 无法制作 nLoader

问题描述

我试过编译这个 Ti-Nspire 漏洞利用,但我遇到了几个问题。其中一些我可以自己解决,但现在我在以下问题上停留了数周(我尝试联系开发人员,但他很忙):

sh make_for_nMaker.sh
CAS_OS
rm -f *.o *.elf
rm -f ../ndless_loader.bin
arm-none-eabi-gcc -Os -Wall -W -marm -mcpu=arm926ej-s -nostdlib -nostartfiles -s -fPIE -ffreestanding -std=c11 -o ndless_loader.o -c ndless_loader.c
arm-none-eabi-ld -nostdlib -nostartfiles -e ndless_loader -PIE -T ldscript ndless_loader.o -o ndless_loader.elf
arm-none-eabi-objcopy -O binary ndless_loader.elf ../ndless_loader.bin
find: paths must precede expression: `1'
find: paths must precede expression: `1'
find: paths must precede expression: `1'
find: paths must precede expression: `1'
find: paths must precede expression: `1'
find: paths must precede expression: `1'
rm -f loader.bin loader.elf
find: paths must precede expression: `1'
find: paths must precede expression: `1'
find: paths must precede expression: `1'
arm-none-eabi-ld -nostdlib -nostartfiles -T ldscript -PIE -flto libgcc/*.o -o loader.elf
arm-none-eabi-ld: libgcc/_absvdi2.o: in function `__absvdi2':
libgcc2.c:(.text+0x28): undefined reference to `abort'
arm-none-eabi-ld: libgcc/_absvsi2.o: in function `__absvsi2':
libgcc2.c:(.text+0x1c): undefined reference to `abort'
arm-none-eabi-ld: libgcc/_addvdi3.o: in function `__addvdi3':
libgcc2.c:(.text+0x54): undefined reference to `abort'
arm-none-eabi-ld: libgcc/_addvsi3.o: in function `__addvsi3':
libgcc2.c:(.text+0x3c): undefined reference to `abort'
arm-none-eabi-ld: libgcc/_mulvdi3.o: in function `__mulvdi3':
libgcc2.c:(.text+0xd0): undefined reference to `abort'
arm-none-eabi-ld: libgcc/_mulvsi3.o:libgcc2.c:(.text+0x18): more undefined references to `abort' follow
make: *** [_Makefile:18: loader.elf] Error 1
mv: cannot stat 'loader.bin': No such file or directory

您可以访问 github 上的所有文件:https ://github.com/parrotgeek1/TI-Nspire/tree/master/boot1.5_exploit/nLoader

也许有人可以帮我解决这个问题。Tbh 对 sh 脚本和所有这些东西没有经验^^

先感谢您!

标签: cshtexas-instrumentsti-nspire

解决方案


Makefile 错误

OBJS = $(patsubst %.c, %.o, $(shell find . -depth 1 -type f -name \*.c))

--> 这会产生所见的

查找:路径必须在表达式之前:'1'

应该有可能使用-maxdepth 1代替-depth 1(这有另一个含义)。


推荐阅读