Revamp stub on arm, arm64; mmap into stack defeats auto-expansion [kernel bug?]

modified:   stub/src/arm.v4a-linux.elf-fold.S
	modified:   stub/src/arm64-linux.elf-entry.S
	modified:   stub/src/arm64-linux.elf-fold.S

	modified:   ../.github/travis_testsuite_1.sh
	modified:   stub/arm.v4a-linux.elf-fold.h
	modified:   stub/arm.v5a-linux.elf-fold.h
	modified:   stub/arm64-linux.elf-entry.h
	modified:   stub/arm64-linux.elf-fold.h
	modified:   stub/armeb.v4a-linux.elf-fold.h
	modified:   stub/tmp/arm.v4a-linux.elf-fold.map
	modified:   stub/tmp/arm.v5a-linux.elf-fold.map
	modified:   stub/tmp/arm64-linux.elf-fold.map
	modified:   stub/tmp/armeb.v4a-linux.elf-fold.map
This commit is contained in:
John Reiser
2017-05-05 18:36:44 -07:00
parent 515897e180
commit 61798d33f0
13 changed files with 803 additions and 814 deletions
+24 -24
View File
@@ -9,35 +9,35 @@ Linker script and memory map
TARGET(elf32-littlearm)
0x0000000000008080 . = ((0x8000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000008080 0x990
.text 0x0000000000008080 0x97c
*(.text)
.text 0x0000000000008080 0x29c tmp/arm.v4a-linux.elf-fold.o
0x00000000000082c0 munmap
0x00000000000082a8 getpid
0x00000000000082b8 readlink
0x00000000000082dc mmap
0x00000000000082d0 __clear_cache
0x0000000000008300 mmap_privanon
0x0000000000008288 write
0x0000000000008280 read
0x00000000000082a0 unlink
0x0000000000008274 my_bkpt
0x000000000000827c exit
0x00000000000082b0 brk
0x0000000000008290 open
0x00000000000082c8 mprotect
0x0000000000008298 close
.text 0x000000000000831c 0x6f4 tmp/arm.v4a-linux.elf-main.o
0x0000000000008890 upx_main
.text 0x0000000000008080 0x288 tmp/arm.v4a-linux.elf-fold.o
0x00000000000082ac munmap
0x0000000000008294 getpid
0x00000000000082a4 readlink
0x00000000000082c8 mmap
0x00000000000082bc __clear_cache
0x00000000000082ec mmap_privanon
0x0000000000008274 write
0x000000000000826c read
0x000000000000828c unlink
0x0000000000008260 my_bkpt
0x0000000000008268 exit
0x000000000000829c brk
0x000000000000827c open
0x00000000000082b4 mprotect
0x0000000000008284 close
.text 0x0000000000008308 0x6f4 tmp/arm.v4a-linux.elf-main.o
0x000000000000887c upx_main
*(.data)
.data 0x0000000000008a10 0x0 tmp/arm.v4a-linux.elf-fold.o
.data 0x0000000000008a10 0x0 tmp/arm.v4a-linux.elf-main.o
.data 0x00000000000089fc 0x0 tmp/arm.v4a-linux.elf-fold.o
.data 0x00000000000089fc 0x0 tmp/arm.v4a-linux.elf-main.o
.data
.bss 0x0000000000008a10 0x0
.bss 0x0000000000008a10 0x0 tmp/arm.v4a-linux.elf-fold.o
.bss 0x0000000000008a10 0x0 tmp/arm.v4a-linux.elf-main.o
.bss 0x00000000000089fc 0x0
.bss 0x00000000000089fc 0x0 tmp/arm.v4a-linux.elf-fold.o
.bss 0x00000000000089fc 0x0 tmp/arm.v4a-linux.elf-main.o
LOAD tmp/arm.v4a-linux.elf-fold.o
LOAD tmp/arm.v4a-linux.elf-main.o
OUTPUT(tmp/arm.v4a-linux.elf-fold.bin elf32-littlearm)
+24 -24
View File
@@ -9,35 +9,35 @@ Linker script and memory map
TARGET(elf32-littlearm)
0x0000000000008080 . = ((0x8000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000008080 0xa28
.text 0x0000000000008080 0xa14
*(.text)
.text 0x0000000000008080 0x33c tmp/arm.v5a-linux.elf-fold.o
0x000000000000832c munmap
0x00000000000082f0 getpid
0x0000000000008318 readlink
0x0000000000008370 mmap
0x0000000000008354 __clear_cache
0x00000000000083a0 mmap_privanon
0x00000000000082a0 write
0x000000000000828c read
0x00000000000082dc unlink
0x0000000000008274 my_bkpt
0x000000000000827c exit
0x0000000000008304 brk
0x00000000000082b4 open
0x0000000000008340 mprotect
0x00000000000082c8 close
.text 0x00000000000083bc 0x6ec tmp/armel-linux.elf-main.o
0x0000000000008928 upx_main
.text 0x0000000000008080 0x328 tmp/arm.v5a-linux.elf-fold.o
0x0000000000008318 munmap
0x00000000000082dc getpid
0x0000000000008304 readlink
0x000000000000835c mmap
0x0000000000008340 __clear_cache
0x000000000000838c mmap_privanon
0x000000000000828c write
0x0000000000008278 read
0x00000000000082c8 unlink
0x0000000000008260 my_bkpt
0x0000000000008268 exit
0x00000000000082f0 brk
0x00000000000082a0 open
0x000000000000832c mprotect
0x00000000000082b4 close
.text 0x00000000000083a8 0x6ec tmp/armel-linux.elf-main.o
0x0000000000008914 upx_main
*(.data)
.data 0x0000000000008aa8 0x0 tmp/arm.v5a-linux.elf-fold.o
.data 0x0000000000008aa8 0x0 tmp/armel-linux.elf-main.o
.data 0x0000000000008a94 0x0 tmp/arm.v5a-linux.elf-fold.o
.data 0x0000000000008a94 0x0 tmp/armel-linux.elf-main.o
.data
.bss 0x0000000000008aa8 0x0
.bss 0x0000000000008aa8 0x0 tmp/arm.v5a-linux.elf-fold.o
.bss 0x0000000000008aa8 0x0 tmp/armel-linux.elf-main.o
.bss 0x0000000000008a94 0x0
.bss 0x0000000000008a94 0x0 tmp/arm.v5a-linux.elf-fold.o
.bss 0x0000000000008a94 0x0 tmp/armel-linux.elf-main.o
LOAD tmp/arm.v5a-linux.elf-fold.o
LOAD tmp/armel-linux.elf-main.o
OUTPUT(tmp/arm.v5a-linux.elf-fold.bin elf32-littlearm)
+30 -30
View File
@@ -8,44 +8,44 @@ Linker script and memory map
0x00000000001000bc . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x00000000001000bc 0x8a0
.text 0x00000000001000bc 0x880
*(.text)
.text 0x00000000001000bc 0x258 tmp/arm64-linux.elf-fold.o
0x000000000010022c my_bkpt
0x0000000000100234 exit
0x000000000010023c read
0x0000000000100248 write
0x0000000000100254 close
0x0000000000100260 getpid
0x000000000010026c brk
0x0000000000100278 munmap
0x0000000000100284 mprotect
0x0000000000100290 mmap_privanon
0x00000000001002a0 mmap
0x00000000001002ac unlink
0x00000000001002b8 open
0x00000000001002d4 readlink
0x0000000000100300 __clear_cache
.text 0x0000000000100314 0x648 tmp/arm64-linux.elf-main.o
0x00000000001007e4 upx_main
.text 0x00000000001000bc 0x238 tmp/arm64-linux.elf-fold.o
0x0000000000100230 my_bkpt
0x0000000000100238 exit
0x0000000000100240 read
0x000000000010024c write
0x0000000000100258 close
0x0000000000100264 getpid
0x0000000000100270 brk
0x000000000010027c munmap
0x0000000000100288 mprotect
0x0000000000100294 mmap_privanon
0x00000000001002a4 mmap
0x00000000001002b0 unlink
0x00000000001002bc readlink
0x00000000001002c4 open
0x00000000001002e0 __clear_cache
.text 0x00000000001002f4 0x648 tmp/arm64-linux.elf-main.o
0x00000000001007c4 upx_main
*(.data)
.data 0x000000000010095c 0x0 tmp/arm64-linux.elf-fold.o
.data 0x000000000010095c 0x0 tmp/arm64-linux.elf-main.o
.data 0x000000000010093c 0x0 tmp/arm64-linux.elf-fold.o
.data 0x000000000010093c 0x0 tmp/arm64-linux.elf-main.o
.iplt 0x000000000010095c 0x0
.iplt 0x000000000010095c 0x0 tmp/arm64-linux.elf-fold.o
.iplt 0x000000000010093c 0x0
.iplt 0x000000000010093c 0x0 tmp/arm64-linux.elf-fold.o
.rela.dyn 0x0000000000100960 0x0
.rela.iplt 0x0000000000100960 0x0 tmp/arm64-linux.elf-fold.o
.rela.dyn 0x0000000000100940 0x0
.rela.iplt 0x0000000000100940 0x0 tmp/arm64-linux.elf-fold.o
.data
LOAD tmp/arm64-linux.elf-fold.o
LOAD tmp/arm64-linux.elf-main.o
OUTPUT(tmp/arm64-linux.elf-fold.bin elf64-littleaarch64)
.igot.plt 0x0000000000100960 0x0
.igot.plt 0x0000000000100960 0x0 tmp/arm64-linux.elf-fold.o
.igot.plt 0x0000000000100940 0x0
.igot.plt 0x0000000000100940 0x0 tmp/arm64-linux.elf-fold.o
.bss 0x000000000010095c 0x0
.bss 0x000000000010095c 0x0 tmp/arm64-linux.elf-fold.o
.bss 0x000000000010095c 0x0 tmp/arm64-linux.elf-main.o
.bss 0x000000000010093c 0x0
.bss 0x000000000010093c 0x0 tmp/arm64-linux.elf-fold.o
.bss 0x000000000010093c 0x0 tmp/arm64-linux.elf-main.o
+24 -24
View File
@@ -9,35 +9,35 @@ Linker script and memory map
TARGET(elf32-bigarm)
0x0000000000008080 . = ((0x8000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000008080 0x990
.text 0x0000000000008080 0x97c
*(.text)
.text 0x0000000000008080 0x29c tmp/armeb.v4a-linux.elf-fold.o
0x00000000000082c0 munmap
0x00000000000082a8 getpid
0x00000000000082b8 readlink
0x00000000000082dc mmap
0x00000000000082d0 __clear_cache
0x0000000000008300 mmap_privanon
0x0000000000008288 write
0x0000000000008280 read
0x00000000000082a0 unlink
0x0000000000008274 my_bkpt
0x000000000000827c exit
0x00000000000082b0 brk
0x0000000000008290 open
0x00000000000082c8 mprotect
0x0000000000008298 close
.text 0x000000000000831c 0x6f4 tmp/armeb.v4a-linux.elf-main.o
0x0000000000008890 upx_main
.text 0x0000000000008080 0x288 tmp/armeb.v4a-linux.elf-fold.o
0x00000000000082ac munmap
0x0000000000008294 getpid
0x00000000000082a4 readlink
0x00000000000082c8 mmap
0x00000000000082bc __clear_cache
0x00000000000082ec mmap_privanon
0x0000000000008274 write
0x000000000000826c read
0x000000000000828c unlink
0x0000000000008260 my_bkpt
0x0000000000008268 exit
0x000000000000829c brk
0x000000000000827c open
0x00000000000082b4 mprotect
0x0000000000008284 close
.text 0x0000000000008308 0x6f4 tmp/armeb.v4a-linux.elf-main.o
0x000000000000887c upx_main
*(.data)
.data 0x0000000000008a10 0x0 tmp/armeb.v4a-linux.elf-fold.o
.data 0x0000000000008a10 0x0 tmp/armeb.v4a-linux.elf-main.o
.data 0x00000000000089fc 0x0 tmp/armeb.v4a-linux.elf-fold.o
.data 0x00000000000089fc 0x0 tmp/armeb.v4a-linux.elf-main.o
.data
.bss 0x0000000000008a10 0x0
.bss 0x0000000000008a10 0x0 tmp/armeb.v4a-linux.elf-fold.o
.bss 0x0000000000008a10 0x0 tmp/armeb.v4a-linux.elf-main.o
.bss 0x00000000000089fc 0x0
.bss 0x00000000000089fc 0x0 tmp/armeb.v4a-linux.elf-fold.o
.bss 0x00000000000089fc 0x0 tmp/armeb.v4a-linux.elf-main.o
LOAD tmp/armeb.v4a-linux.elf-fold.o
LOAD tmp/armeb.v4a-linux.elf-main.o
OUTPUT(tmp/armeb.v4a-linux.elf-fold.bin elf32-bigarm)