Tôi đang biên dịch mã đơn giản dưới đây và chạy nó trong gdb. Tôi thiết lập một điểm break ở dòng strcpy, ngay sau khi tôi chạy nó cho đầu vào ví dụ abc, và sau đó nhấn s, tôi nhận được lỗi sau:strcpy-sse2-unaligned.S không tìm thấy
Breakpoint 1, main (argc=2, argv=0x7fffffffdd98) at ExploitMe.c:9
9 strcpy(buffer, argv[1]);
(gdb) s
__strcpy_sse2_unaligned() at ../sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S:48
48 ../sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: No such file or directory.
Tôi đang sử dụng ubuntu 12.04 AMD64 và gcc 2.15 . Bất kỳ ý tưởng?
main(int argc, char *argv[]) {
char buffer[80];
strcpy(buffer, argv[1]);
return 0;
}
Đó không phải là lỗi - gdb không thể tìm thấy tệp nguồn để triển khai 'strcpy' nhưng nó vẫn sẽ hiển thị mã đã tháo rời. –
vâng, tôi nhận thấy điều đó, nhưng tại sao? và bất kỳ ý tưởng làm thế nào để giải quyết nó? – Afshin
Không chắc chắn lý do tại sao điều này đã được bình chọn ... – Mehrdad