伪随机的简单绕过

news/2026/1/18 15:49:52/文章来源:https://www.cnblogs.com/ziranziran/p/19498610

伪随机数

在二进制分析中,会遇到很多很多伪随机数生成的问题,对于伪随机数,我们需要进行绕过,这里系统的总结一下伪随机数的绕过的思路

我们使用random直接进行随机数生成的话效果是不对的

random.seed()
rand_num = random_randint(a,b)
decrypted = (rand_num ^ enc[i])

对于这种情况,我们可以使用cyptes库进行生成

这里windows中的加载的是msvcrt.dll这个库

libc = ctypes.CDLL("msvcrt.dll")
libc.srand()
rand_num = libc.rand()
decrypted = (rand_num ^ enc[i])

伪随机有以当前的时间戳为种子,也有直接以准确的数字为种子,一般有这两种形式

python写的脚本

常规的这样写就行了

libc库的加载方式以2.23为分界线,相邻版本的种子生成的区别并不是很大

import ctypes
elf1 = ctypes.CDLL("./libc-2.27.so")
#多了一步前提的条件准备str
elf1.srand(ctypes.c_uint(int(time.time())))#ctypes.c_uint(int(time.time()))
for i in range(100):rand_num = elf1.rand()%100000 + 1#print(f"Random number: {rand_num}")sl(str(rand_num))

C写的脚本

常规的这样写就行

#include <stdio.h>
#include <time.h>int main(){
printf("%ld",time(0));
return  0;
}

或者像下面这样去写也行,多了几个库的问题

#include <stdio.h>
#include <stdlib.h>
#include <time.h>int main(){time_t v1;unsigned long long v2;unsigned long long seed = (unsigned long long)time(NULL);srand((unsigned int)seed);v2 = (unsigned long long)rand();//  printf("%#9llx\\n", v2);v2 = v2 <<12;printf("%#9llx\\n", v2);return 0;
}

题目源码

#include <stdio.h>
#include <stdlib.h>
#include <time.h>int main(){srand((unsigned int)time(NULL));int num = rand() % 100; // Generate a random number between 0 and 99int luck;scanf("%d", &luck);if(num == luck){printf("You win!\\n");system("/bin/sh");} else {printf("You lose! The number was %d\\n", num);}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1178620.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vim中复制内容到系统剪贴板

设置Vim 检查 Vim 是否支持 +clipboard(即让 Vim 能直接读写系统剪贴板) vim --version | grep clipboard如果你看到 +clipboard:恭喜,你的 Vim 已经支持了如果你看到 -clipboard(前面是减号):说明你当前安装的…

《2026:全球 AI 工程化白皮书》

前言&#xff1a;消失的红利与浮现的真相2023年&#xff0c;全世界都在谈论“奇点临近”&#xff1b;2024年&#xff0c;我们在“百模大战”中目不暇接。然而&#xff0c;当时间进入2025与2026年的交汇点&#xff0c;喧嚣的潮水开始退去&#xff0c;一个冷酷的真相摆在所有企业…

电磁阀的工作原理

1、P端是进气口&#xff0c;也就是输入端&#xff0c;也就是气从这个口进&#xff0c;这个气将被用来控制气缸的伸出和缩回2、P -> A是常通&#xff0c;P -> B是常断3、由于P->A是常通的&#xff0c;所以只要P端进气&#xff0c;A端就会有气&#xff0c;此时气缸的杆是…

百货商店楼层布局的秘密:男装在下、女装在上的商业逻辑

为什么大多数百货商店把男装摆在较低楼层&#xff0c;而女装摆在较高楼层呢&#xff1f;百货商店楼层布局的秘密&#xff1a;男装在下、女装在上的商业逻辑大多数百货商店将男装布局在较低楼层&#xff0c;女装放在较高楼层&#xff0c;并非随机安排&#xff0c;而是基于消费行…

Spring Cloud 集成 Nacos,全面的配置中心与服务发现解决方案

大家好&#xff0c;我是小悟。 一、Nacos 详细介绍 1.1 什么是 Nacos Nacos&#xff08;Dynamic Naming and Configuration Service&#xff09;是阿里巴巴开源的一款集服务发现、配置管理和服务管理于一体的平台。Nacos 的名字来源于 Naming and Configuration Service 的缩写…

spring boot中异常日志输出:log.error(“【文件上传】失败,{},{}“, endpoint, method, e);最后的e是异常对象,会输出堆栈信息

澄清&#xff1a;SLF4J 的特殊处理规则SLF4J 确实允许最后一个参数是 Throwable 类型&#xff0c;即使没有对应的占位符&#xff01;您的写法&#xff1a;javalog.error("【文件上传】失败&#xff0c;{}&#xff0c;{}", endpoint, method, e);这是完全正确的&#…

深入解析:JMeter的基本使用与性能测试

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

女装标号、男装量体:美国服装尺码差异背后的产业与消费逻辑

为什么美国销售的女装按标号尺寸表示大小&#xff0c;而男装却直接采用测量尺寸呢&#xff1f;女装标号、男装量体&#xff1a;美国服装尺码差异背后的产业与消费逻辑美国服装市场里女装用标号&#xff08;如 0、2、4 号或 S、M、L&#xff09;&#xff0c;男装却直接标注测量尺…

科研 / 工业采购必看:国产高端仪器品牌 + 上市公司实力盘点 - 品牌推荐大师1

科研与工业采购必看:国产高端仪器品牌与上市公司实力全解析 在科学研究与工业生产的核心环节,精密分析仪器扮演着“眼睛”与“标尺”的关键角色。其中,检漏仪、离子色谱仪、液相色谱仪和液质联用仪是四大重要工具。…

禁止win11自动更新,禁止windows更新的工具软件方法教程攻略

您可以通过多种方法禁止Windows 11的自动更新&#xff0c;包括修改设置、服务管理、组策略、注册表和利用禁止windows更新工具等。 每个方法&#xff0c;各有特点&#xff0c;想要方便快捷&#xff0c;直接用方法6的工具。下面逐个讲解 Win11彻底关闭系统自动更新的6种方法&…

从城市运管到灾害救援:2026年好用的应急调度系统场景推荐 - 速递信息

应急调度系统的价值,终需在具体场景中检验。从城市日常运管的精细治理到灾害救援的极限挑战,不同场景对系统提出了截然不同的要求。本文跳出技术参数堆砌,深入城运中心、自然灾害前线等典型场景,推荐那些经过实战验…

基于多鱼眼的视觉SLAM系统(毕业论文)

【摘 要】 同时定位与建图&#xff08;Simultaneous Localization and Mapping&#xff0c;SLAM&#xff09;&#xff0c;是目前智能机体自主定位的主流技术&#xff0c;能够持续获取环境信息并实时预估系统位姿信息&#xff0c;得到较为准确的环境地图与移动轨迹。伴随着计算机…

Nginx http模块配置详解

http {include /etc/nginx/mime.types; # MIME类型default_type application/octet-stream;# 日志格式log_format main $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"…

Polar靶场web 随写笔记 - 指南

Polar靶场web 随写笔记 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco"…

Nginx http模块配置详解

http {include /etc/nginx/mime.types; # MIME类型default_type application/octet-stream;# 日志格式log_format main $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"…

Nginx 虚拟主机 Server块配置详细解读

Nginx Server块配置详细解读 server {listen 80; # 监听端口listen [::]:80 ipv6onlyon; # IPv6server_name example.com www.example.com; # 域名# 根目录和索引root /var/www/html;index index.html index.htm index.php;# 字符集charset utf-8;# SSL配…

ROS1 noetic 中将 Unitree G1 基于 Gazebo/RViz 关节联动【使用一个launch文件启动】

博客地址:https://www.cnblogs.com/zylyehuo/Unitree G1 模型文件下载地址(挑选自己需要的部分,本教程基于 g1_29dof.urdf (以及 .xml 和 meshes 文件夹))有核心的 URDF 文件和 Meshes (STL 网格文件)效果预览工作空…

写论文软件哪个好?实测揭秘!宏智树 AI 凭 “真研究” 实力出圈

毕业季的论文焦虑&#xff0c;几乎是每一位学子的必经之路&#xff1a;选题太泛被导师打回、文献堆砌逻辑混乱、数据分析无从下手、查重率居高不下、AI 生成痕迹被系统标红…… 面对五花八门的论文写作工具&#xff0c;“写论文软件哪个好” 成了无数学子的灵魂拷问。 作为深耕…

什么是 CMS 站群系统?以及它在百度 SEO 中的真实作用

在做网站矩阵、内容覆盖或 SEO 项目时&#xff0c;很多人都会听到一个词——CMS 站群系统。 但这个概念在实际使用中&#xff0c;经常被误解成“多个 CMS 拼在一起”&#xff0c;甚至被简单等同于泛目录工具&#xff0c;这种理解并不准确。本文从实际使用和搜索引擎角度&#x…

5 款 AI 写论文哪个好?实测宏智树 AI:毕业论文的全能型学术助手

毕业季的论文赛道上&#xff0c;“5 款 AI 写论文哪个好” 的灵魂拷问&#xff0c;总能在各大高校的互助群里刷屏。作为深耕论文写作科普的测评博主&#xff0c;我选取计算机、汉语言文学、临床医学等 5 个专业的毕业论文为样本&#xff0c;对宏智树 AI、万能小 in、DeepSeek、…