質問編集履歴

4

アセンブルリストの追記

2021/06/21 12:20

投稿

fen57
fen57

スコア47

test CHANGED
File without changes
test CHANGED
@@ -259,3 +259,131 @@
259
259
 
260
260
 
261
261
  よろしくお願いいたします。
262
+
263
+
264
+
265
+
266
+
267
+ 追記1 : アセンブルリストの追記です
268
+
269
+ ```
270
+
271
+ $ cat main.s
272
+
273
+ .file "main.c"
274
+
275
+ .text
276
+
277
+ .globl main
278
+
279
+ .type main, @function
280
+
281
+ main:
282
+
283
+ .LFB0:
284
+
285
+ .cfi_startproc
286
+
287
+ endbr64
288
+
289
+ pushq %rbp
290
+
291
+ .cfi_def_cfa_offset 16
292
+
293
+ .cfi_offset 6, -16
294
+
295
+ movq %rsp, %rbp
296
+
297
+ .cfi_def_cfa_register 6
298
+
299
+ subq $32, %rsp
300
+
301
+ movq %fs:40, %rax
302
+
303
+ movq %rax, -8(%rbp)
304
+
305
+ xorl %eax, %eax
306
+
307
+ movq $0, -32(%rbp)
308
+
309
+ movq $0, -24(%rbp)
310
+
311
+ movq stdin(%rip), %rdx
312
+
313
+ leaq -32(%rbp), %rax
314
+
315
+ movl $16, %esi
316
+
317
+ movq %rax, %rdi
318
+
319
+ call fgets@PLT
320
+
321
+ leaq -32(%rbp), %rax
322
+
323
+ movq %rax, %rdi
324
+
325
+ movl $0, %eax
326
+
327
+ call printf@PLT
328
+
329
+ movl $0, %eax
330
+
331
+ movq -8(%rbp), %rcx
332
+
333
+ xorq %fs:40, %rcx
334
+
335
+ je .L3
336
+
337
+ call __stack_chk_fail@PLT
338
+
339
+ .L3:
340
+
341
+ leave
342
+
343
+ .cfi_def_cfa 7, 8
344
+
345
+ ret
346
+
347
+ .cfi_endproc
348
+
349
+ .LFE0:
350
+
351
+ .size main, .-main
352
+
353
+ .ident "GCC: (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0"
354
+
355
+ .section .note.GNU-stack,"",@progbits
356
+
357
+ .section .note.gnu.property,"a"
358
+
359
+ .align 8
360
+
361
+ .long 1f - 0f
362
+
363
+ .long 4f - 1f
364
+
365
+ .long 5
366
+
367
+ 0:
368
+
369
+ .string "GNU"
370
+
371
+ 1:
372
+
373
+ .align 8
374
+
375
+ .long 0xc0000002
376
+
377
+ .long 3f - 2f
378
+
379
+ 2:
380
+
381
+ .long 0x3
382
+
383
+ 3:
384
+
385
+ .align 8
386
+
387
+ 4:
388
+
389
+ ```

3

修正

2021/06/21 12:20

投稿

fen57
fen57

スコア47

test CHANGED
File without changes
test CHANGED
@@ -252,7 +252,7 @@
252
252
 
253
253
  ```
254
254
 
255
- スタックの0x1d2e5dab3e6bbb00がcanaryで、x0000000000000000が古いrbpだと思うのですが、
255
+ スタックの0x1d2e5dab3e6bbb00がcanaryで、0x0000000000000000が古いrbpだと思うのですが、
256
256
 
257
257
  0x00007fffffffdff0は何でしょうか?
258
258
 

2

間違いを修正

2021/06/21 11:52

投稿

fen57
fen57

スコア47

test CHANGED
File without changes
test CHANGED
@@ -252,9 +252,9 @@
252
252
 
253
253
  ```
254
254
 
255
- スタックの0x00007fffffffdff0がcanaryで、0x1d2e5dab3e6bbb00が古いrbpだと思うのですが、
255
+ スタックの0x1d2e5dab3e6bbb00がcanaryで、x0000000000000000が古いrbpだと思うのですが、
256
-
256
+
257
- それに続く0x0000000000000000は何でしょうか?
257
+ 0x00007fffffffdff0は何でしょうか?
258
258
 
259
259
 
260
260
 

1

誤字

2021/06/21 11:51

投稿

fen57
fen57

スコア47

test CHANGED
File without changes
test CHANGED
@@ -255,3 +255,7 @@
255
255
  スタックの0x00007fffffffdff0がcanaryで、0x1d2e5dab3e6bbb00が古いrbpだと思うのですが、
256
256
 
257
257
  それに続く0x0000000000000000は何でしょうか?
258
+
259
+
260
+
261
+ よろしくお願いいたします。