一个漏洞程序的汇编代码

用x32dbg/x64dbg从反汇编逆向还原C语言代码实战 在软件调试与逆向工程中,反汇编是将机器码转换为汇编指令的过程,而逆向还原C语言代码则是在此基础上,从汇编逻辑重构出行为等价的可读源码。理解编译器生成模式、栈帧布局、寄存器传递和跳转结构,是还原变量、数组、循环与分支的关键。x32dbg与x64dbg作为主流调试器,不仅能静态查看反汇编,还能通过动态断点、条件断点及指令修改验证还原判断,广泛应用于漏洞分析、CTF竞赛及程序行为研究。针对刚接触逆向的C语言学习者,掌握从汇编反推高级语言逻辑的方法,能极大提升对程序底层运行机制的理解。本文通过一个实际样例,系统讲解 阅读详情

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void overflow(void)
{
char buf[10];
strcpy(buf,"aaaaaaaaaa");
}//end overflow
int main(void)
{
overflow();
return 0;
}//end main

yh.exe:     file format pei-i386

Disassembly of section .text:

00401000 <___crt_xc_end__>:
  401000: 55                    push   %ebp
  401001: 89 e5                 mov    %esp,%ebp
  401003: 83 ec 18              sub    $0x18,%esp
  401006: 89 5d f8              mov    %ebx,0xfffffff8(%ebp)
  401009: 8b 55 08              mov    0x8(%ebp),%edx
  40100c: 31 db                 xor    %ebx,%ebx
  40100e: 89 75 fc              mov    %esi,0xfffffffc(%ebp)
  401011: 8b 02                 mov    (%edx),%eax
  401013: 31 f6                 xor    %esi,%esi
  401015: 8b 00                 mov    (%eax),%eax
  401017: 3d 91 00 00 c0        cmp    $0xc0000091,%eax
  40101c: 77 43                 ja     401061 <___crt_xc_end__+0x61>
  40101e: 3d 8d 00 00 c0        cmp    $0xc000008d,%eax
  401023: 72 5b                 jb     401080 <___crt_xc_end__+0x80>
  401025: be 01 00 00 00        mov    $0x1,%esi
  40102a: c7 04 24 08 00 00 00  movl   $0x8,(%esp)
  401031: 31 c0                 xor    %eax,%eax
  401033: 89 44 24 04           mov    %eax,0x4(%esp)
  401037: e8 a4 07 00 00        call   4017e0 <_signal>
  40103c: 83 f8 01              cmp    $0x1,%eax
  40103f: 74 6c                 je     4010ad <___crt_xc_end__+0xad>
  401041: 85 c0                 test   %eax,%eax
  401043: 74 2a                 je     40106f <___crt_xc_end__+0x6f>
  401045: c7 04 24 08 00 00 00  movl   $0x8,(%esp)
  40104c: ff d0                 call   *%eax
  40104e: bb ff ff ff ff        mov    $0xffffffff,%ebx
  401053: 89 d8                 mov    %ebx,%eax
  401055: 8b 75 fc              mov    0xfffffffc(%ebp),%esi
  401058: 8b 5d f8              mov    0xfffffff8(%ebp),%ebx
  40105b: 89 ec                 mov    %ebp,%esp
  40105d: 5d                    pop    %ebp
  40105e: c2 04 00              ret    $0x4
  401061: 3d 93 00 00 c0        cmp    $0xc0000093,%eax
  401066: 74 bd                 je     401025 <___crt_xc_end__+0x25>
  401068: 3d 94 00 00 c0        cmp    $0xc0000094,%eax
  40106d: 74 bb                 je     40102a <___crt_xc_end__+0x2a>
  40106f: 89 d8                 mov    %ebx,%eax
  401071: 8b 75 fc              mov    0xfffffffc(%ebp),%esi
  401074: 8b 5d f8              mov    0xfffffff8(%ebp),%ebx
  401077: 89 ec                 mov    %ebp,%esp
  401079: 5d                    pop    %ebp
  40107a: c2 04 00              ret    $0x4
  40107d: 8d 76 00              lea    0x0(%esi),%esi
  401080: 3d 05 00 00 c0        cmp    $0xc0000005,%eax
  401085: 75 e8                 jne    40106f <___crt_xc_end__+0x6f>
  401087: c7 04 24 0b 00 00 00  movl   $0xb,(%esp)
  40108e: 31 f6                 xor    %esi,%esi
  401090: 89 74 24 04           mov    %esi,0x4(%esp)
  401094: e8 47 07 00 00        call   4017e0 <_signal>
  401099: 83 f8 01              cmp    $0x1,%eax
  40109c: 74 34                 je     4010d2 <___crt_xc_end__+0xd2>
  40109e: 85 c0                 test   %eax,%eax
  4010a0: 74 cd                 je     40106f <___crt_xc_end__+0x6f>
  4010a2: c7 04 24 0b 00 00 00  movl   $0xb,(%esp)
  4010a9: ff d0                 call   *%eax
  4010ab: eb a1                 jmp    40104e <___crt_xc_end__+0x4e>
  4010ad: c7 04 24 08 00 00 00  movl   $0x8,(%esp)
  4010b4: bb 01 00 00 00        mov    $0x1,%ebx
  4010b9: 89 5c 24 04           mov    %ebx,0x4(%esp)
  4010bd: e8 1e 07 00 00        call   4017e0 <_signal>
  4010c2: 85 f6                 test   %esi,%esi
  4010c4: 74 88                 je     40104e <___crt_xc_end__+0x4e>
  4010c6: e8 55 02 00 00        call   401320 <__fpreset>
  4010cb: bb ff ff ff ff        mov    $0xffffffff,%ebx
  4010d0: eb 81                 jmp    401053 <___crt_xc_end__+0x53>
  4010d2: c7 04 24 0b 00 00 00  movl   $0xb,(%esp)
  4010d9: b9 01 00 00 00        mov    $0x1,%ecx
  4010de: bb ff ff ff ff        mov    $0xffffffff,%ebx
  4010e3: 89 4c 24 04           mov    %ecx,0x4(%esp)
  4010e7: e8 f4 06 00 00        call   4017e0 <_signal>
  4010ec: e9 62 ff ff ff        jmp    401053 <___crt_xc_end__+0x53>
  4010f1: eb 0d                 jmp    401100 <___mingw_CRTStartup>
  4010f3: 90                    nop   
  4010f4: 90                    nop   
  4010f5: 90                    nop   
  4010f6: 90                    nop   
  4010f7: 90                    nop   
  4010f8: 90                    nop   
  4010f9: 90                    nop   
  4010fa: 90                    nop   
  4010fb: 90                    nop   
  4010fc: 90                    nop   
  4010fd: 90                    nop   
  4010fe: 90                    nop   
  4010ff: 90                    nop   

00401100 <___mingw_CRTStartup>:
  401100: 55                    push   %ebp
  401101: 89 e5                 mov    %esp,%ebp
  401103: 53                    push   %ebx
  401104: 83 ec 24              sub    $0x24,%esp
  401107: 8d 5d f8              lea    0xfffffff8(%ebp),%ebx
  40110a: c7 04 24 00 10 40 00  movl   $0x401000,(%esp)
  401111: e8 6a 07 00 00        call   401880 <_SetUnhandledExceptionFilter@4>
  401116: 83 ec 04              sub    $0x4,%esp
  401119: e8 02 02 00 00        call   401320 <__fpreset>
  40111e: c7 45 f8 00 00 00 00  movl   $0x0,0xfffffff8(%ebp)
  401125: b8 00 40 40 00        mov    $0x404000,%eax
  40112a: 8d 55 f4              lea    0xfffffff4(%ebp),%edx
  40112d: 89 5c 24 10           mov    %ebx,0x10(%esp)
  401131: 8b 0d 00 20 40 00     mov    0x402000,%ecx
  401137: 89 44 24 04           mov    %eax,0x4(%esp)
  40113b: 89 54 24 08           mov    %edx,0x8(%esp)
  40113f: 89 4c 24 0c           mov    %ecx,0xc(%esp)
  401143: c7 04 24 04 40 40 00  movl   $0x404004,(%esp)
  40114a: e8 c1 06 00 00        call   401810 <___getmainargs>
  40114f: a1 10 40 40 00        mov    0x404010,%eax
  401154: 85 c0                 test   %eax,%eax
  401156: 74 58                 je     4011b0 <___mingw_CRTStartup+0xb0>
  401158: a3 10 20 40 00        mov    %eax,0x402010
  40115d: 8b 15 d4 50 40 00     mov    0x4050d4,%edx
  401163: 85 d2                 test   %edx,%edx
  401165: 0f 85 8b 00 00 00     jne    4011f6 <___mingw_CRTStartup+0xf6>
  40116b: 83 fa e0              cmp    $0xffffffe0,%edx
  40116e: 74 20                 je     401190 <___mingw_CRTStartup+0x90>
  401170: a1 10 40 40 00        mov    0x404010,%eax
  401175: 89 44 24 04           mov    %eax,0x4(%esp)
  401179: 8b 1d d4 50 40 00     mov    0x4050d4,%ebx
  40117f: 8b 4b 30              mov    0x30(%ebx),%ecx
  401182: 89 0c 24              mov    %ecx,(%esp)
  401185: e8 76 06 00 00        call   401800 <__setmode>
  40118a: 8b 15 d4 50 40 00     mov    0x4050d4,%edx
  401190: 83 fa c0              cmp    $0xffffffc0,%edx
  401193: 74 1b                 je     4011b0 <___mingw_CRTStartup+0xb0>
  401195: 8b 1d 10 40 40 00     mov    0x404010,%ebx
  40119b: 89 5c 24 04           mov    %ebx,0x4(%esp)
  40119f: 8b 0d d4 50 40 00     mov    0x4050d4,%ecx
  4011a5: 8b 51 50              mov    0x50(%ecx),%edx
  4011a8: 89 14 24              mov    %edx,(%esp)
  4011ab: e8 50 06 00 00        call   401800 <__setmode>
  4011b0: e8 3b 06 00 00        call   4017f0 <___p__fmode>
  4011b5: 8b 1d 10 20 40 00     mov    0x402010,%ebx
  4011bb: 89 18                 mov    %ebx,(%eax)
  4011bd: e8 2e 01 00 00        call   4012f0 <__pei386_runtime_relocator>
  4011c2: 83 e4 f0              and    $0xfffffff0,%esp
  4011c5: e8 06 06 00 00        call   4017d0 <___p__environ>
  4011ca: 8b 08                 mov    (%eax),%ecx
  4011cc: 89 4c 24 08           mov    %ecx,0x8(%esp)
  4011d0: 8b 15 00 40 40 00     mov    0x404000,%edx
  4011d6: 89 54 24 04           mov    %edx,0x4(%esp)
  4011da: a1 04 40 40 00        mov    0x404004,%eax
  4011df: 89 04 24              mov    %eax,(%esp)
  4011e2: e8 c5 00 00 00        call   4012ac <_main>
  4011e7: 89 c3                 mov    %eax,%ebx
  4011e9: e8 d2 05 00 00        call   4017c0 <__cexit>
  4011ee: 89 1c 24              mov    %ebx,(%esp)
  4011f1: e8 9a 06 00 00        call   401890 <_ExitProcess@4>
  4011f6: 89 44 24 04           mov    %eax,0x4(%esp)
  4011fa: 8b 15 d4 50 40 00     mov    0x4050d4,%edx
  401200: 8b 42 10              mov    0x10(%edx),%eax
  401203: 89 04 24              mov    %eax,(%esp)
  401206: e8 f5 05 00 00        call   401800 <__setmode>
  40120b: 8b 15 d4 50 40 00     mov    0x4050d4,%edx
  401211: e9 55 ff ff ff        jmp    40116b <___mingw_CRTStartup+0x6b>
  401216: 8d 76 00              lea    0x0(%esi),%esi
  401219: 8d bc 27 00 00 00 00  lea    0x0(%edi),%edi

00401220 <_mainCRTStartup>:
  401220: 55                    push   %ebp
  401221: 89 e5                 mov    %esp,%ebp
  401223: 83 ec 08              sub    $0x8,%esp
  401226: c7 04 24 01 00 00 00  movl   $0x1,(%esp)
  40122d: ff 15 cc 50 40 00     call   *0x4050cc
  401233: e8 c8 fe ff ff        call   401100 <___mingw_CRTStartup>
  401238: 90                    nop   
  401239: 8d b4 26 00 00 00 00  lea    0x0(%esi),%esi

00401240 <_WinMainCRTStartup>:
  401240: 55                    push   %ebp
  401241: 89 e5                 mov    %esp,%ebp
  401243: 83 ec 08              sub    $0x8,%esp
  401246: c7 04 24 02 00 00 00  movl   $0x2,(%esp)
  40124d: ff 15 cc 50 40 00     call   *0x4050cc
  401253: e8 a8 fe ff ff        call   401100 <___mingw_CRTStartup>
  401258: 90                    nop   
  401259: 8d b4 26 00 00 00 00  lea    0x0(%esi),%esi

00401260 <_atexit>:
  401260: 55                    push   %ebp
  401261: 8b 0d e4 50 40 00     mov    0x4050e4,%ecx
  401267: 89 e5                 mov    %esp,%ebp
  401269: 5d                    pop    %ebp
  40126a: ff e1                 jmp    *%ecx
  40126c: 8d 74 26 00           lea    0x0(%esi),%esi

00401270 <__onexit>:
  401270: 55                    push   %ebp
  401271: 8b 0d d8 50 40 00     mov    0x4050d8,%ecx
  401277: 89 e5                 mov    %esp,%ebp
  401279: 5d                    pop    %ebp
  40127a: ff e1                 jmp    *%ecx
  40127c: 90                    nop   
  40127d: 90                    nop   
  40127e: 90                    nop   
  40127f: 90                    nop   

00401280 <___do_sjlj_init>:
  401280: 55                    push   %ebp
  401281: 89 e5                 mov    %esp,%ebp
  401283: 5d                    pop    %ebp
  401284: e9 67 02 00 00        jmp    4014f0 <___w32_sharedptr_initialize>
  401289: 90                    nop   
  40128a: 90                    nop   
  40128b: 90                    nop   
  40128c: 90                    nop   
  40128d: 90                    nop   
  40128e: 90                    nop   
  40128f: 90                    nop   

00401290 <__Z8overflowv>:
  401290: 55                    push   %ebp
  401291: 89 e5                 mov    %esp,%ebp
  401293: 83 ec 28              sub    $0x28,%esp
  401296: c7 44 24 04 00 30 40  movl   $0x403000,0x4(%esp)
  40129d: 00
  40129e: 8d 45 e8              lea    0xffffffe8(%ebp),%eax
  4012a1: 89 04 24              mov    %eax,(%esp)
  4012a4: e8 77 05 00 00        call   401820 <_strcpy>
  4012a9: c9                    leave 
  4012aa: c3                    ret   
  4012ab: 90                    nop   

004012ac <_main>:
  4012ac: 55                    push   %ebp
  4012ad: 89 e5                 mov    %esp,%ebp
  4012af: 83 ec 08              sub    $0x8,%esp
  4012b2: 83 e4 f0              and    $0xfffffff0,%esp
  4012b5: b8 00 00 00 00        mov    $0x0,%eax
  4012ba: 83 c0 0f              add    $0xf,%eax
  4012bd: 83 c0 0f              add    $0xf,%eax
  4012c0: c1 e8 04              shr    $0x4,%eax
  4012c3: c1 e0 04              shl    $0x4,%eax
  4012c6: 89 45 fc              mov    %eax,0xfffffffc(%ebp)
  4012c9: 8b 45 fc              mov    0xfffffffc(%ebp),%eax
  4012cc: e8 5f 04 00 00        call   401730 <___chkstk>
  4012d1: e8 fa 00 00 00        call   4013d0 <___main>
  4012d6: e8 b5 ff ff ff        call   401290 <__Z8overflowv>
  4012db: b8 00 00 00 00        mov    $0x0,%eax
  4012e0: c9                    leave 
  4012e1: c3                    ret   
  4012e2: 90                    nop   
  4012e3: 90                    nop   
  4012e4: 90                    nop   
  4012e5: 90                    nop   
  4012e6: 90                    nop   
  4012e7: 90                    nop   
  4012e8: 90                    nop   
  4012e9: 90                    nop   
  4012ea: 90                    nop   
  4012eb: 90                    nop   
  4012ec: 90                    nop   
  4012ed: 90                    nop   
  4012ee: 90                    nop   
  4012ef: 90                    nop   

004012f0 <__pei386_runtime_relocator>:
  4012f0: 55                    push   %ebp
  4012f1: b9 f0 30 40 00        mov    $0x4030f0,%ecx
  4012f6: 89 e5                 mov    %esp,%ebp
  4012f8: eb 14                 jmp    40130e <__pei386_runtime_relocator+0x1e>
  4012fa: 8d b6 00 00 00 00     lea    0x0(%esi),%esi
  401300: 8b 51 04              mov    0x4(%ecx),%edx
  401303: 8b 01                 mov    (%ecx),%eax
  401305: 83 c1 08              add    $0x8,%ecx
  401308: 01 82 00 00 40 00     add    %eax,0x400000(%edx)
  40130e: 81 f9 f0 30 40 00     cmp    $0x4030f0,%ecx
  401314: 72 ea                 jb     401300 <__pei386_runtime_relocator+0x10>
  401316: 5d                    pop    %ebp
  401317: c3                    ret   
  401318: 90                    nop   
  401319: 90                    nop   
  40131a: 90                    nop   
  40131b: 90                    nop   
  40131c: 90                    nop   
  40131d: 90                    nop   
  40131e: 90                    nop   
  40131f: 90                    nop   

00401320 <__fpreset>:
  401320: 55                    push   %ebp
  401321: 89 e5                 mov    %esp,%ebp
  401323: db e3                 fninit
  401325: 5d                    pop    %ebp
  401326: c3                    ret   
  401327: 90                    nop   
  401328: 90                    nop   
  401329: 90                    nop   
  40132a: 90                    nop   
  40132b: 90                    nop   
  40132c: 90                    nop   
  40132d: 90                    nop   
  40132e: 90                    nop   
  40132f: 90                    nop   

00401330 <___do_global_dtors>:
  401330: 55                    push   %ebp
  401331: 89 e5                 mov    %esp,%ebp
  401333: 83 ec 08              sub    $0x8,%esp
  401336: a1 20 20 40 00        mov    0x402020,%eax
  40133b: 8b 08                 mov    (%eax),%ecx
  40133d: 85 c9                 test   %ecx,%ecx
  40133f: 74 26                 je     401367 <___do_global_dtors+0x37>
  401341: eb 0d                 jmp    401350 <___do_global_dtors+0x20>
  401343: 90                    nop   
  401344: 90                    nop   
  401345: 90                    nop   
  401346: 90                    nop   
  401347: 90                    nop   
  401348: 90                    nop   
  401349: 90                    nop   
  40134a: 90                    nop   
  40134b: 90                    nop   
  40134c: 90                    nop   
  40134d: 90                    nop   
  40134e: 90                    nop   
  40134f: 90                    nop   
  401350: ff 10                 call   *(%eax)
  401352: 8b 0d 20 20 40 00     mov    0x402020,%ecx
  401358: 8b 51 04              mov    0x4(%ecx),%edx
  40135b: 8d 41 04              lea    0x4(%ecx),%eax
  40135e: a3 20 20 40 00        mov    %eax,0x402020
  401363: 85 d2                 test   %edx,%edx
  401365: 75 e9                 jne    401350 <___do_global_dtors+0x20>
  401367: c9                    leave 
  401368: c3                    ret   
  401369: 8d b4 26 00 00 00 00  lea    0x0(%esi),%esi

00401370 <___do_global_ctors>:
  401370: 55                    push   %ebp
  401371: 89 e5                 mov    %esp,%ebp
  401373: 53                    push   %ebx
  401374: 83 ec 04              sub    $0x4,%esp
  401377: a1 e0 18 40 00        mov    0x4018e0,%eax
  40137c: 83 f8 ff              cmp    $0xffffffff,%eax
  40137f: 74 29                 je     4013aa <___do_global_ctors+0x3a>
  401381: 85 c0                 test   %eax,%eax
  401383: 89 c3                 mov    %eax,%ebx
  401385: 74 13                 je     40139a <___do_global_ctors+0x2a>
  401387: 89 f6                 mov    %esi,%esi
  401389: 8d bc 27 00 00 00 00  lea    0x0(%edi),%edi
  401390: ff 14 9d e0 18 40 00  call   *0x4018e0(,%ebx,4)
  401397: 4b                    dec    %ebx
  401398: 75 f6                 jne    401390 <___do_global_ctors+0x20>
  40139a: c7 04 24 30 13 40 00  movl   $0x401330,(%esp)
  4013a1: e8 ba fe ff ff        call   401260 <_atexit>
  4013a6: 5b                    pop    %ebx
  4013a7: 5b                    pop    %ebx
  4013a8: 5d                    pop    %ebp
  4013a9: c3                    ret   
  4013aa: 8b 0d e4 18 40 00     mov    0x4018e4,%ecx
  4013b0: 31 c0                 xor    %eax,%eax
  4013b2: 85 c9                 test   %ecx,%ecx
  4013b4: eb 0a                 jmp    4013c0 <___do_global_ctors+0x50>
  4013b6: 40                    inc    %eax
  4013b7: 8b 14 85 e4 18 40 00  mov    0x4018e4(,%eax,4),%edx
  4013be: 85 d2                 test   %edx,%edx
  4013c0: 75 f4                 jne    4013b6 <___do_global_ctors+0x46>
  4013c2: eb bd                 jmp    401381 <___do_global_ctors+0x11>
  4013c4: 8d b6 00 00 00 00     lea    0x0(%esi),%esi
  4013ca: 8d bf 00 00 00 00     lea    0x0(%edi),%edi

004013d0 <___main>:
  4013d0: 55                    push   %ebp
  4013d1: 89 e5                 mov    %esp,%ebp
  4013d3: 53                    push   %ebx
  4013d4: 83 ec 04              sub    $0x4,%esp
  4013d7: a1 20 40 40 00        mov    0x404020,%eax
  4013dc: 85 c0                 test   %eax,%eax
  4013de: 75 36                 jne    401416 <___main+0x46>
  4013e0: a1 e0 18 40 00        mov    0x4018e0,%eax
  4013e5: bb 01 00 00 00        mov    $0x1,%ebx
  4013ea: 89 1d 20 40 40 00     mov    %ebx,0x404020
  4013f0: 83 f8 ff              cmp    $0xffffffff,%eax
  4013f3: 74 25                 je     40141a <___main+0x4a>
  4013f5: 85 c0                 test   %eax,%eax
  4013f7: 89 c3                 mov    %eax,%ebx
  4013f9: 74 0f                 je     40140a <___main+0x3a>
  4013fb: 90                    nop   
  4013fc: 8d 74 26 00           lea    0x0(%esi),%esi
  401400: ff 14 9d e0 18 40 00  call   *0x4018e0(,%ebx,4)
  401407: 4b                    dec    %ebx
  401408: 75 f6                 jne    401400 <___main+0x30>
  40140a: c7 04 24 30 13 40 00  movl   $0x401330,(%esp)
  401411: e8 4a fe ff ff        call   401260 <_atexit>
  401416: 5b                    pop    %ebx
  401417: 5b                    pop    %ebx
  401418: 5d                    pop    %ebp
  401419: c3                    ret   
  40141a: 8b 0d e4 18 40 00     mov    0x4018e4,%ecx
  401420: 31 c0                 xor    %eax,%eax
  401422: 85 c9                 test   %ecx,%ecx
  401424: eb 0a                 jmp    401430 <___main+0x60>
  401426: 40                    inc    %eax
  401427: 8b 14 85 e4 18 40 00  mov    0x4018e4(,%eax,4),%edx
  40142e: 85 d2                 test   %edx,%edx
  401430: 75 f4                 jne    401426 <___main+0x56>
  401432: eb c1                 jmp    4013f5 <___main+0x25>
  401434: 90                    nop   
  401435: 90                    nop   
  401436: 90                    nop   
  401437: 90                    nop   
  401438: 90                    nop   
  401439: 90                    nop   
  40143a: 90                    nop   
  40143b: 90                    nop   
  40143c: 90                    nop   
  40143d: 90                    nop   
  40143e: 90                    nop   
  40143f: 90                    nop   

00401440 <___w32_sharedptr_default_unexpected>:
  401440: 55                    push   %ebp
  401441: a1 70 40 40 00        mov    0x404070,%eax
  401446: 89 e5                 mov    %esp,%ebp
  401448: 5d                    pop    %ebp
  401449: 8b 48 04              mov    0x4(%eax),%ecx
  40144c: ff e1                 jmp    *%ecx
  40144e: 89 f6                 mov    %esi,%esi

00401450 <___w32_sharedptr_get>:
  401450: 55                    push   %ebp
  401451: ba 42 00 00 00        mov    $0x42,%edx
  401456: 89 e5                 mov    %esp,%ebp
  401458: 53                    push   %ebx
  401459: 0f b7 c0              movzwl %ax,%eax
  40145c: 83 ec 64              sub    $0x64,%esp
  40145f: 89 54 24 08           mov    %edx,0x8(%esp)
  401463: 8d 55 a8              lea    0xffffffa8(%ebp),%edx
  401466: 31 db                 xor    %ebx,%ebx
  401468: 89 54 24 04           mov    %edx,0x4(%esp)
  40146c: 89 04 24              mov    %eax,(%esp)
  40146f: ff 15 b0 50 40 00     call   *0x4050b0
  401475: ba 1f 00 00 00        mov    $0x1f,%edx
  40147a: b9 01 00 00 00        mov    $0x1,%ecx
  40147f: 83 ec 0c              sub    $0xc,%esp
  401482: 85 c0                 test   %eax,%eax
  401484: 75 07                 jne    40148d <___w32_sharedptr_get+0x3d>
  401486: eb 46                 jmp    4014ce <___w32_sharedptr_get+0x7e>
  401488: 01 c9                 add    %ecx,%ecx
  40148a: 4a                    dec    %edx
  40148b: 78 0e                 js     40149b <___w32_sharedptr_get+0x4b>
  40148d: 80 7c 2a a8 41        cmpb   $0x41,0xffffffa8(%edx,%ebp,1)
  401492: 75 f4                 jne    401488 <___w32_sharedptr_get+0x38>
  401494: 09 cb                 or     %ecx,%ebx
  401496: 01 c9                 add    %ecx,%ecx
  401498: 4a                    dec    %edx
  401499: 79 f2                 jns    40148d <___w32_sharedptr_get+0x3d>
  40149b: 83 3b 3c              cmpl   $0x3c,(%ebx)
  40149e: 75 07                 jne    4014a7 <___w32_sharedptr_get+0x57>
  4014a0: 89 d8                 mov    %ebx,%eax
  4014a2: 8b 5d fc              mov    0xfffffffc(%ebp),%ebx
  4014a5: c9                    leave 
  4014a6: c3                    ret   
  4014a7: b9 34 30 40 00        mov    $0x403034,%ecx
  4014ac: ba ea 00 00 00        mov    $0xea,%edx
  4014b1: 89 4c 24 0c           mov    %ecx,0xc(%esp)
  4014b5: 89 54 24 08           mov    %edx,0x8(%esp)
  4014b9: c7 04 24 61 30 40 00  movl   $0x403061,(%esp)
  4014c0: b8 80 30 40 00        mov    $0x403080,%eax
  4014c5: 89 44 24 04           mov    %eax,0x4(%esp)
  4014c9: e8 92 02 00 00        call   401760 <___eprintf>
  4014ce: b8 ac 30 40 00        mov    $0x4030ac,%eax
  4014d3: bb e4 00 00 00        mov    $0xe4,%ebx
  4014d8: 89 44 24 0c           mov    %eax,0xc(%esp)
  4014dc: 89 5c 24 08           mov    %ebx,0x8(%esp)
  4014e0: eb d7                 jmp    4014b9 <___w32_sharedptr_get+0x69>
  4014e2: 8d b4 26 00 00 00 00  lea    0x0(%esi),%esi
  4014e9: 8d bc 27 00 00 00 00  lea    0x0(%edi),%edi

004014f0 <___w32_sharedptr_initialize>:
  4014f0: 55                    push   %ebp
  4014f1: 89 e5                 mov    %esp,%ebp
  4014f3: 57                    push   %edi
  4014f4: 56                    push   %esi
  4014f5: 53                    push   %ebx
  4014f6: 81 ec cc 00 00 00     sub    $0xcc,%esp
  4014fc: 8b 0d 70 40 40 00     mov    0x404070,%ecx
  401502: 85 c9                 test   %ecx,%ecx
  401504: 74 08                 je     40150e <___w32_sharedptr_initialize+0x1e>
  401506: 8d 65 f4              lea    0xfffffff4(%ebp),%esp
  401509: 5b                    pop    %ebx
  40150a: 5e                    pop    %esi
  40150b: 5f                    pop    %edi
  40150c: 5d                    pop    %ebp
  40150d: c3                    ret   
  40150e: c7 45 98 41 41 41 41  movl   $0x41414141,0xffffff98(%ebp)
  401515: a1 10 30 40 00        mov    0x403010,%eax
  40151a: 8d 75 98              lea    0xffffff98(%ebp),%esi
  40151d: c7 45 9c 41 41 41 41  movl   $0x41414141,0xffffff9c(%ebp)
  401524: c7 45 a0 41 41 41 41  movl   $0x41414141,0xffffffa0(%ebp)
  40152b: 89 45 b8              mov    %eax,0xffffffb8(%ebp)
  40152e: a1 14 30 40 00        mov    0x403014,%eax
  401533: c7 45 a4 41 41 41 41  movl   $0x41414141,0xffffffa4(%ebp)
  40153a: c7 45 a8 41 41 41 41  movl   $0x41414141,0xffffffa8(%ebp)
  401541: 89 45 bc              mov    %eax,0xffffffbc(%ebp)
  401544: a1 18 30 40 00        mov    0x403018,%eax
  401549: c7 45 ac 41 41 41 41  movl   $0x41414141,0xffffffac(%ebp)
  401550: c7 45 b0 41 41 41 41  movl   $0x41414141,0xffffffb0(%ebp)
  401557: 89 45 c0              mov    %eax,0xffffffc0(%ebp)
  40155a: a1 1c 30 40 00        mov    0x40301c,%eax
  40155f: c7 45 b4 41 41 41 41  movl   $0x41414141,0xffffffb4(%ebp)
  401566: 89 45 c4              mov    %eax,0xffffffc4(%ebp)
  401569: a1 20 30 40 00        mov    0x403020,%eax
  40156e: 89 45 c8              mov    %eax,0xffffffc8(%ebp)
  401571: a1 24 30 40 00        mov    0x403024,%eax
  401576: 89 45 cc              mov    %eax,0xffffffcc(%ebp)
  401579: a1 28 30 40 00        mov    0x403028,%eax
  40157e: 89 45 d0              mov    %eax,0xffffffd0(%ebp)
  401581: a1 2c 30 40 00        mov    0x40302c,%eax
  401586: 89 45 d4              mov    %eax,0xffffffd4(%ebp)
  401589: 0f b7 05 30 30 40 00  movzwl 0x403030,%eax
  401590: 66 89 45 d8           mov    %ax,0xffffffd8(%ebp)
  401594: 89 34 24              mov    %esi,(%esp)
  401597: ff 15 ac 50 40 00     call   *0x4050ac
  40159d: 0f b7 c0              movzwl %ax,%eax
  4015a0: 83 ec 04              sub    $0x4,%esp
  4015a3: 85 c0                 test   %eax,%eax
  4015a5: 89 85 44 ff ff ff     mov    %eax,0xffffff44(%ebp)
  4015ab: 0f 85 3b 01 00 00     jne    4016ec <___w32_sharedptr_initialize+0x1fc>
  4015b1: c7 04 24 3c 00 00 00  movl   $0x3c,(%esp)
  4015b8: e8 83 02 00 00        call   401840 <_malloc>
  4015bd: 85 c0                 test   %eax,%eax
  4015bf: 89 c3                 mov    %eax,%ebx
  4015c1: 0f 84 59 01 00 00     je     401720 <___w32_sharedptr_initialize+0x230>
  4015c7: fc                    cld   
  4015c8: 89 c7                 mov    %eax,%edi
  4015ca: 8b 85 44 ff ff ff     mov    0xffffff44(%ebp),%eax
  4015d0: b9 0f 00 00 00        mov    $0xf,%ecx
  4015d5: f3 ab                 repz stos %eax,%es:(%edi)
  4015d7: c7 43 04 50 18 40 00  movl   $0x401850,0x4(%ebx)
  4015de: b9 01 00 00 00        mov    $0x1,%ecx
  4015e3: c7 43 08 40 14 40 00  movl   $0x401440,0x8(%ebx)
  4015ea: a1 40 40 40 00        mov    0x404040,%eax
  4015ef: c7 03 3c 00 00 00     movl   $0x3c,(%ebx)
  4015f5: 8b 15 44 40 40 00     mov    0x404044,%edx
  4015fb: c7 43 28 00 00 00 00  movl   $0x0,0x28(%ebx)
  401602: 89 43 14              mov    %eax,0x14(%ebx)
  401605: a1 30 20 40 00        mov    0x402030,%eax
  40160a: 89 53 18              mov    %edx,0x18(%ebx)
  40160d: 8b 15 34 20 40 00     mov    0x402034,%edx
  401613: 89 43 1c              mov    %eax,0x1c(%ebx)
  401616: a1 50 40 40 00        mov    0x404050,%eax
  40161b: 89 53 20              mov    %edx,0x20(%ebx)
  40161e: c7 43 30 ff ff ff ff  movl   $0xffffffff,0x30(%ebx)
  401625: 89 43 2c              mov    %eax,0x2c(%ebx)
  401628: 8b 15 3c 20 40 00     mov    0x40203c,%edx
  40162e: a1 38 20 40 00        mov    0x402038,%eax
  401633: 89 53 38              mov    %edx,0x38(%ebx)
  401636: ba 1f 00 00 00        mov    $0x1f,%edx
  40163b: 89 43 34              mov    %eax,0x34(%ebx)
  40163e: 89 f6                 mov    %esi,%esi
  401640: 89 d8                 mov    %ebx,%eax
  401642: 21 c8                 and    %ecx,%eax
  401644: 83 f8 01              cmp    $0x1,%eax
  401647: 19 c0                 sbb    %eax,%eax
  401649: 24 20                 and    $0x20,%al
  40164b: 01 c9                 add    %ecx,%ecx
  40164d: 04 41                 add    $0x41,%al
  40164f: 88 84 2a 48 ff ff ff  mov    %al,0xffffff48(%edx,%ebp,1)
  401656: 4a                    dec    %edx
  401657: 79 e7                 jns    401640 <___w32_sharedptr_initialize+0x150>
  401659: a1 10 30 40 00        mov    0x403010,%eax
  40165e: 89 85 68 ff ff ff     mov    %eax,0xffffff68(%ebp)
  401664: a1 14 30 40 00        mov    0x403014,%eax
  401669: 89 85 6c ff ff ff     mov    %eax,0xffffff6c(%ebp)
  40166f: a1 18 30 40 00        mov    0x403018,%eax
  401674: 89 85 70 ff ff ff     mov    %eax,0xffffff70(%ebp)
  40167a: a1 1c 30 40 00        mov    0x40301c,%eax
  40167f: 89 85 74 ff ff ff     mov    %eax,0xffffff74(%ebp)
  401685: a1 20 30 40 00        mov    0x403020,%eax
  40168a: 89 85 78 ff ff ff     mov    %eax,0xffffff78(%ebp)
  401690: a1 24 30 40 00        mov    0x403024,%eax
  401695: 89 85 7c ff ff ff     mov    %eax,0xffffff7c(%ebp)
  40169b: a1 28 30 40 00        mov    0x403028,%eax
  4016a0: 89 45 80              mov    %eax,0xffffff80(%ebp)
  4016a3: a1 2c 30 40 00        mov    0x40302c,%eax
  4016a8: 89 45 84              mov    %eax,0xffffff84(%ebp)
  4016ab: 0f b7 05 30 30 40 00  movzwl 0x403030,%eax
  4016b2: 66 89 45 88           mov    %ax,0xffffff88(%ebp)
  4016b6: 8d 85 48 ff ff ff     lea    0xffffff48(%ebp),%eax
  4016bc: 89 04 24              mov    %eax,(%esp)
  4016bf: ff 15 a4 50 40 00     call   *0x4050a4
  4016c5: 0f b7 f8              movzwl %ax,%edi
  4016c8: 83 ec 04              sub    $0x4,%esp
  4016cb: 85 ff                 test   %edi,%edi
  4016cd: 75 42                 jne    401711 <___w32_sharedptr_initialize+0x221>
  4016cf: 31 d2                 xor    %edx,%edx
  4016d1: 85 d2                 test   %edx,%edx
  4016d3: 75 1e                 jne    4016f3 <___w32_sharedptr_initialize+0x203>
  4016d5: 89 1c 24              mov    %ebx,(%esp)
  4016d8: e8 53 01 00 00        call   401830 <_free>
  4016dd: 89 34 24              mov    %esi,(%esp)
  4016e0: ff 15 ac 50 40 00     call   *0x4050ac
  4016e6: 83 ec 04              sub    $0x4,%esp
  4016e9: 0f b7 c0              movzwl %ax,%eax
  4016ec: e8 5f fd ff ff        call   401450 <___w32_sharedptr_get>
  4016f1: 89 c3                 mov    %eax,%ebx
  4016f3: 89 1d 70 40 40 00     mov    %ebx,0x404070
  4016f9: 8d 43 04              lea    0x4(%ebx),%eax
  4016fc: a3 60 40 40 00        mov    %eax,0x404060
  401701: 8d 43 08              lea    0x8(%ebx),%eax
  401704: a3 80 40 40 00        mov    %eax,0x404080
  401709: 8d 65 f4              lea    0xfffffff4(%ebp),%esp
  40170c: 5b                    pop    %ebx
  40170d: 5e                    pop    %esi
  40170e: 5f                    pop    %edi
  40170f: 5d                    pop    %ebp
  401710: c3                    ret   
  401711: 89 f8                 mov    %edi,%eax
  401713: e8 38 fd ff ff        call   401450 <___w32_sharedptr_get>
  401718: 39 d8                 cmp    %ebx,%eax
  40171a: 89 fa                 mov    %edi,%edx
  40171c: 75 b1                 jne    4016cf <___w32_sharedptr_initialize+0x1df>
  40171e: eb b1                 jmp    4016d1 <___w32_sharedptr_initialize+0x1e1>
  401720: e8 2b 01 00 00        call   401850 <_abort>
  401725: 90                    nop   
  401726: 90                    nop   
  401727: 90                    nop   
  401728: 90                    nop   
  401729: 90                    nop   
  40172a: 90                    nop   
  40172b: 90                    nop   
  40172c: 90                    nop   
  40172d: 90                    nop   
  40172e: 90                    nop   
  40172f: 90                    nop   

00401730 <___chkstk>:
  401730: 51                    push   %ecx
  401731: 89 e1                 mov    %esp,%ecx
  401733: 83 c1 08              add    $0x8,%ecx

00401736 <probe>:
  401736: 3d 00 10 00 00        cmp    $0x1000,%eax
  40173b: 72 10                 jb     40174d <done>
  40173d: 81 e9 00 10 00 00     sub    $0x1000,%ecx
  401743: 83 09 00              orl    $0x0,(%ecx)
  401746: 2d 00 10 00 00        sub    $0x1000,%eax
  40174b: eb e9                 jmp    401736 <probe>

0040174d <done>:
  40174d: 29 c1                 sub    %eax,%ecx
  40174f: 83 09 00              orl    $0x0,(%ecx)
  401752: 89 e0                 mov    %esp,%eax
  401754: 89 cc                 mov    %ecx,%esp
  401756: 8b 08                 mov    (%eax),%ecx
  401758: 8b 40 04              mov    0x4(%eax),%eax
  40175b: ff e0                 jmp    *%eax
  40175d: 90                    nop   
  40175e: 90                    nop   
  40175f: 90                    nop   

00401760 <___eprintf>:
  401760: 55                    push   %ebp
  401761: 89 e5                 mov    %esp,%ebp
  401763: 83 ec 18              sub    $0x18,%esp
  401766: 8b 45 14              mov    0x14(%ebp),%eax
  401769: 89 44 24 10           mov    %eax,0x10(%esp)
  40176d: 8b 45 10              mov    0x10(%ebp),%eax
  401770: 89 44 24 0c           mov    %eax,0xc(%esp)
  401774: 8b 45 0c              mov    0xc(%ebp),%eax
  401777: 89 44 24 08           mov    %eax,0x8(%esp)
  40177b: 8b 45 08              mov    0x8(%ebp),%eax
  40177e: 89 44 24 04           mov    %eax,0x4(%esp)
  401782: a1 d4 50 40 00        mov    0x4050d4,%eax
  401787: 83 c0 40              add    $0x40,%eax
  40178a: 89 04 24              mov    %eax,(%esp)
  40178d: e8 de 00 00 00        call   401870 <_fprintf>
  401792: a1 d4 50 40 00        mov    0x4050d4,%eax
  401797: 83 c0 40              add    $0x40,%eax
  40179a: 89 04 24              mov    %eax,(%esp)
  40179d: e8 be 00 00 00        call   401860 <_fflush>
  4017a2: e8 a9 00 00 00        call   401850 <_abort>
  4017a7: 90                    nop   
  4017a8: 90                    nop   
  4017a9: 90                    nop   
  4017aa: 90                    nop   
  4017ab: 90                    nop   
  4017ac: 90                    nop   
  4017ad: 90                    nop   
  4017ae: 90                    nop   
  4017af: 90                    nop   

004017b0 <___set_app_type>:
  4017b0: ff 25 cc 50 40 00     jmp    *0x4050cc
  4017b6: 90                    nop   
  4017b7: 90                    nop   
 ...

004017c0 <__cexit>:
  4017c0: ff 25 d0 50 40 00     jmp    *0x4050d0
  4017c6: 90                    nop   
  4017c7: 90                    nop   
 ...

004017d0 <___p__environ>:
  4017d0: ff 25 c4 50 40 00     jmp    *0x4050c4
  4017d6: 90                    nop   
  4017d7: 90                    nop   
 ...

004017e0 <_signal>:
  4017e0: ff 25 f8 50 40 00     jmp    *0x4050f8
  4017e6: 90                    nop   
  4017e7: 90                    nop   
 ...

004017f0 <___p__fmode>:
  4017f0: ff 25 c8 50 40 00     jmp    *0x4050c8
  4017f6: 90                    nop   
  4017f7: 90                    nop   
 ...

00401800 <__setmode>:
  401800: ff 25 dc 50 40 00     jmp    *0x4050dc
  401806: 90                    nop   
  401807: 90                    nop   
 ...

00401810 <___getmainargs>:
  401810: ff 25 c0 50 40 00     jmp    *0x4050c0
  401816: 90                    nop   
  401817: 90                    nop   
 ...

00401820 <_strcpy>:
  401820: ff 25 fc 50 40 00     jmp    *0x4050fc
  401826: 90                    nop   
  401827: 90                    nop   
 ...

00401830 <_free>:
  401830: ff 25 f0 50 40 00     jmp    *0x4050f0
  401836: 90                    nop   
  401837: 90                    nop   
 ...

00401840 <_malloc>:
  401840: ff 25 f4 50 40 00     jmp    *0x4050f4
  401846: 90                    nop   
  401847: 90                    nop   
 ...

00401850 <_abort>:
  401850: ff 25 e0 50 40 00     jmp    *0x4050e0
  401856: 90                    nop   
  401857: 90                    nop   
 ...

00401860 <_fflush>:
  401860: ff 25 e8 50 40 00     jmp    *0x4050e8
  401866: 90                    nop   
  401867: 90                    nop   
 ...

00401870 <_fprintf>:
  401870: ff 25 ec 50 40 00     jmp    *0x4050ec
  401876: 90                    nop   
  401877: 90                    nop   
 ...

00401880 <_SetUnhandledExceptionFilter@4>:
  401880: ff 25 b4 50 40 00     jmp    *0x4050b4
  401886: 90                    nop   
  401887: 90                    nop   
 ...

00401890 <_ExitProcess@4>:
  401890: ff 25 a8 50 40 00     jmp    *0x4050a8
  401896: 90                    nop   
  401897: 90                    nop   
 ...

004018a0 <_GetAtomNameA@12>:
  4018a0: ff 25 b0 50 40 00     jmp    *0x4050b0
  4018a6: 90                    nop   
  4018a7: 90                    nop   
 ...

004018b0 <_FindAtomA@4>:
  4018b0: ff 25 ac 50 40 00     jmp    *0x4050ac
  4018b6: 90                    nop   
  4018b7: 90                    nop   
 ...

004018c0 <_AddAtomA@4>:
  4018c0: ff 25 a4 50 40 00     jmp    *0x4050a4
  4018c6: 90                    nop   
  4018c7: 90                    nop   
 ...

004018d0 <___sjlj_init_ctor>:
  4018d0: 55                    push   %ebp
  4018d1: 89 e5                 mov    %esp,%ebp
  4018d3: 5d                    pop    %ebp
  4018d4: e9 a7 f9 ff ff        jmp    401280 <___do_sjlj_init>
  4018d9: 90                    nop   
  4018da: 90                    nop   
  4018db: 90                    nop   
  4018dc: 90                    nop   
  4018dd: 90                    nop   
  4018de: 90                    nop   
  4018df: 90                    nop   

004018e0 <__CTOR_LIST__>:
  4018e0: ff                    (bad) 
  4018e1: ff                    (bad) 
  4018e2: ff                    (bad) 
  4018e3: ff d0                 call   *%eax

004018e4 <.ctors>:
  4018e4: d0 18                 rcrb   (%eax)
  4018e6: 40                    inc    %eax
  4018e7: 00 00                 add    %al,(%eax)
  4018e9: 00 00                 add    %al,(%eax)
 ...

004018ec <__DTOR_LIST__>:
  4018ec: ff                    (bad) 
  4018ed: ff                    (bad) 
  4018ee: ff                    (bad) 
  4018ef: ff 00                 incl   (%eax)
  4018f1: 00 00                 add    %al,(%eax)
 ...

ASP漏洞源代码下载 给出了扫描ASP网页漏洞具体的源代码,防网站漏洞扫描asp代码。 立即下载

相关推荐

漏洞

漏洞

mingw 踩坑

MinGW,是Minimalist GNU for Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。依据此教程成功安装:x86_64-8.1.0-release-win32-seh-rt_v6-rev0。上面的,因此在线安装器需要从该网站上下载文件。于是下载mingw 64位版本。搜索发现下载的mingw是32位系统使用的。

qq_43009770的博客 2135

【GAMES101】现代计算机图形学入门 资料整理

课程网址 课程主页 包括ppt 课程PPT和视频 一篇搞定!GAMES101现代计算机图形学入门(全) 作业链接地址 作业论坛 GAMES101课程环境搭建(Win10+VSCode) 计算机图形学笔记 虎书pdf 提取:n2rx 【必须】:高等数学(微积分、线性代数)、算法、数据结构 【非必须】:信号处理、数值分析、大学物理(光学) 在线公式编辑器 一定要做作业,如果个人要配置环境的话应该是配置opencv,eigen这两个核心库就行了,目前觉得最核心的一个作业是作业3,实现着色器和渲染管线,做完一遍

ysh的博客 2683

安全漏洞本质扯谈之决战汇编代码

0x00 前言当前比较流行也比较有效率的挖掘的漏洞的方法是Fuzzing,当然这也需要花点时间去写Fuzzing程序。然而不是每个东西都有必要去写Fuzzing程序,也不是每个东西都可以去Fuzzing的,所以也还是要继续修炼我们的二进制安全流派内功—“肉眼挖洞神功”。安全漏洞在源代码层面和汇编代码层面会有不同的表现,想要进阶升级的话,必须清晰的了解每种安全漏...

weixin_34358365的博客 344

spark3.x 写入hudi报错

【代码】spark3.x 写入hudi报错。

W2484980893的博客 1578

OpenCV中SGBM中BT代价计算

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

qq_27606639的博客 5977

Ghidra 软件逆向工程入门 第 2 章 使用 Ghidra 脚本自动化逆向工程任务

幸运的是,您可以根据个人偏好选择使用 Java 或 Python 编程,因为 Ghidra API 在 这两种情况下 都是相同的。在 第 6 章 , 恶意软件脚本分析 和 第 10 章 , 二进制审计脚本编写 中,您将通过开发和分析应用于恶意软件分析及 二进制审计 的更复杂脚本来提升 Ghidra 脚本编写技能。在本章中,您学习了如何使用现有的 Ghidra 脚本,如何轻松调整它们以满足您的需求,最后还学习了如何用您偏好的语言开发一个极其简单的脚本作为该主题的入门。在某些情况下,该脚本可能非常有用。

1771

ESP32-S3数字麦克风入门:手把手教你用Arduino IDE读取MSM261S4030H0R的I2S数据

本文详细介绍了如何使用Arduino IDE读取MSM261S4030H0R数字麦克风的I2S数据,涵盖硬件连接、代码编写和数据可视化全流程。重点解决I2S引脚配置、环境噪声过滤和声波观察等实际问题,适合ESP32-S3开发者快速上手数字麦克风应用。

weixin_26742753的博客 318

PHP 常见漏洞代码总结

漏洞总结。

微软技术分享 8743

工业视觉中HDR算法的动态范围优化与Debevec/Mertens方法实践

本文深入探讨了工业视觉中HDR(高动态范围)成像技术,重点解析了Debevec和Mertens两种核心算法。针对工业场景中因动态范围不足导致的过曝与欠曝问题,文章详细对比了两种方法的原理、实现步骤、参数调优及适用场景,为工程师在静态检测与高速产线等不同需求下,选择并实践HDR算法提供了清晰的指导。

weixin_29099217的博客 193

YOLOv10改进策略【模型轻量化】| MoblieNetV3:基于搜索技术和新颖架构设计的轻量型网络模型

本文记录的是基于MobileNet V3的YOLOv10目标检测轻量化改进方法研究。的模型结构是通过得来的,其中的基础模块结合了的深度可分离卷积、的线性瓶颈和倒置残差结构以及MnasNet中基于挤压和激励的轻量级注意力模块,使模型在性能、效率和灵活性方面都具有显著的优势。本文在替换骨干网络中配置了原论文中的small和large2种模型,以满足不同的需求。

Limiiiing的博客 514

PHP源代码漏洞分析

实验项目 PHP源代码漏洞分析实验 综合性实验 2020年10月31日 一、实验综述 1.实验目的及要求 (1)掌握源代码分析的基本原理 (2)掌握RIPS源代码分析工具的使用 (3)结合源代码分析原理对DVWA平台的代码进行分析 2.实验仪器、设备或软件 Vmware station PHPstudy DVWA Windows7操作系统 3.实验原理 (1)软件漏洞: 软件漏洞分析技术主要分为:软件架构安全分析技术、源代码漏洞分析技术、二进制漏洞分析技术和运行系统漏洞分析技术四大类。...

fencecat的博客 2865

开尔文四线法与电桥(uΩ电阻检测)

本文介绍了开尔文四线法与电桥在电阻测量中的应用,特别是针对uΩ级别电阻的精确检测。讨论了基本电桥电路的工作原理,强调了开尔文四线法的优势,它能消除导线和接触电阻的影响。文中还提到了测试设备的介绍,包括不同级别的电阻测试,并详细阐述了uΩ级别电阻测试的步骤和注意事项。此外,对比了惠斯通电桥与开尔文电桥,强调了它们在电阻测量中的作用和计算方法。

让你爱上电路设计 7858

汇编 scanf_scanf深入理解

概述scanf()是C语言中的一个输出函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include 。(在有一些实现中,printf函数与scanf函数在使用时可以不使用预编译命令#include 。)它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。定义int scanf(const char * restrict for...

weixin_39681486的博客 1292

深入解析机器人软件开发中的核心:状态机管理(FSM)—— 理论、实践与优化

状态机(FSM)是机器人软件开发中管理复杂行为逻辑的核心工具,广泛应用于导航、任务执行、故障处理等场景。本文系统探讨状态机的基础理论(定义、要素)、主流设计模式(经典FSM、分层状态机HSM、行为树BT),以及工业级实现方法(代码架构、线程安全、调试技巧)。通过移动机器人导航和机械臂任务执行的案例,分析分层状态机的实际应用,并总结常见陷阱(如状态爆炸、阻塞操作)与优化策略(异步化、事件过滤)。

郑伟强dev的专栏 292

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

人为漏洞的构造和程序密码验证机制的突破

1 // stack_overflow.cpp : Defines the entry point for the console application. 2 // 3 4 #include "stdafx.h" 5 #include &lt;string.h&gt; //strcmp、strcpy 6 #include &lt;STDIO.H&gt; ...

weixin_33969116的博客 169

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

c语言实现shellcode转换工具

shellcode是一种小型内嵌代码,一般用于入侵,和修补漏洞的。 这种代码是非常简洁的而且跨平台性能高,因为后面博主要写关于shellcode的文章,所以今天这里给大家介绍如何使用c语言写一个能够实现汇编到机器码的转换程序 首先你需要一个汇编解释器: 这里博主已经上传到网盘: 链接:https://pan.baidu.com/s/1TuF1OeBJzAwcwVrlR4d4BQ​​​​​​...

17岁boy的博客 3262

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

PicoCTF_2018_rop_chain

PicoCTF_2018_rop_chain

m0_74073577的博客 621

2017-2018 Exp1 PC平台逆向破解 20155214

目录 Exp1 PC平台逆向破解 实验内容 知识点 官方源 中科大源 上海交大的源 新加坡源 debain源 debian安全更新源 163源的地址 阿里云k...

NavyJhon2015的博客 193

20155231 cho3 课下作业

20155231 cho3 课下作业 4 1 通过输入gcc -S -o main.s main.c 将下面c程序”week0603学号.c“编译成汇编代码 int g(int x){ return x+3; } int f(int x){ int i = 学号后两位; return g(x)+i; } int main(void){ return f(8)+1; } 删除汇编代码中 ...

weixin_30472035的博客 124

ctfshow pwn2

pwn2

qq_39980610的博客 1001

加密与解密笔记-3.5-静态分析技术应用实例

一个小程序,来验证输如的序列号是否正确 用IDA对程序进行反汇编,这里就是关键代码 f5反汇编可进行对照 .text:004010AF call ds:GetDlgItemTextA //调用输入函数 .text:004010B5 lea edx, [esp+14h+String2] .text:004010B9 lea eax, [esp+14h+String] .t.

ookami6497的博客 619

ShellCode的编写入门

上次学习了下堆喷漏洞的原理,虽说之前有学习过缓冲区溢出的原理,但还没了解过堆喷这个概念,于是趁此机会学习了,顺便复习了缓冲区溢出这块知识,之前由于各种原因对Shellcode的编写只是了解个大概,并没有真正动手写过一个Shellcode。眼前遇到个堆喷漏洞找Shellcode时就下决定自己写个Shellcode,考虑到时间和精力的有限就写个计算器简单的练练手。 注:以下在XP SP3+VC6.0...

weixin_34014555的博客 260

CTF PWN练习之函数指针改写

使用objdump工具可以查看一个目标文件的许多内部信息,objdump有许多可选的参数选项,通过控制这些参数选项可以输出不同的文件信息。本实验的程序和代码位于/home/test/4目录下,执行objdump -d pwn4可以看到关于pwn4程序的反汇编指令列表,其中-d选项表示进行反汇编操作.

喜欢Python编程的程序员柚柚呀 178

缓冲区溢出以后

我在优快云发的一个帖子,很久没写日志了,拿来充数,也回顾一下。C代码如下:#include<stdio.h>#include<string.h>#include<stdlib.h>void func1(char *s){ char buf[12]; strcpy(buf,s);}void func2(void){ printf("W...

dianmotang8246的博客 92
上一篇: 堆栈溢出基础教程
下一篇: 如何写shell code
codeshell
博客等级 码龄22年 9粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值