- 博客(45)
- 收藏
- 关注
原创 2021-08-21
import randomn=811962829926061135912336152046805976452085622793278540269813769179778436448551805282270377526924985583700263532449814679000571579974627607320193721859558465079774566577601256821251043092418021088536184684914633262680164501198171813687433769
2021-08-21 22:22:29
107
原创 web浏览器搭建
模拟浏览器实现#-*- codeing = utf-8 -*-#@Time : 2021/2/25 21:30#@Author :Outsider#@File : 01-模拟浏览器.py#@Software: PyCharm# 1、导入模块import socket# 2、创建套接字tcp_client_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)# 3、建立连接tcp_client_socket.connect(
2021-02-25 22:18:24
472
1
原创 TCP的三次握手和四次挥手
TCP的三次握手三次握手是TCP建立连接的时候发送的三个数据包1.概念2.简单描述通信过程3.必须是三次,如果少于三次,会造成系统资源的浪费TCP的四次挥手四次挥手,指的TCP断开连接的时候发送4个数据包,确保断开连接1.概念2.简单描述过程3.必须是4次(新连接收到老的数据包)主动发起断开的一方,必须等待2MSL时间...
2021-02-24 19:15:15
57
原创 TCP文件下载器
文件下载器-客户端#-*- codeing = utf-8 -*-#@Time : 2021/2/23 18:03#@Author :Outsider#@File : 文件下载器-客户端.py#@Software: PyCharm# 1.导入模块import socket# 2.创建套接字tcp_client_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)# 3.建立连接tcp_client_socket.conne
2021-02-24 12:34:15
170
原创 tcp
TCP简介TCP:面向连接,可靠的,基于字节流的传输控制协议TCP的特点面向连接可靠传输应答机制超时重传错误校验流量管控TCP通信模型TCP严格区分客户端,服务端tcp网络程序–客户端#-*- codeing = utf-8 -*-#@Time : 2021/2/19 17:27#@Author :Outsider#@File : TCP客户端.py#@Software: PyCharm'''1.导入模块2.创建套接字3.建立连接4.发送数据
2021-02-19 20:41:54
47
原创 UDP聊天器
'''一、功能1.发送信息2.接收信息3.退出系统二、框架的设计1.发送信息 send_msg()2.接收信息 recv_msg()3.程序的主入口 main()4.当程序独立运行的时候,才启动聊天器三.实现步骤1.发送信息 send_msg()1)定义变量接收用户与输入的接收方的IP地址2)定义变量接收用户与输入的接收方的端口号3)定义变量接收用户与输入的接收方的内容4)使用socket的sendto() 发送信息2.接收信息 recv_msg()1)使用socke
2021-02-19 11:50:53
74
原创 Linux常用命令4
虚拟环境python虚拟环境:允许安装不同版本的套件创建:mkvirtualenv 虚拟环境名称 默认python版本2.7-进入:workon 虚拟环境名称查看所有虚拟环境名称:workon+回车删除:1)先退出虚拟环境 2)rmvirtualenv 虚拟环境名称退出:deactivate创建虚拟环境,指定python路径:mkvirtualenv -p /usr/bin/python3.6 XXX在虚拟环境中安装套件:pip install 套件名==版本...
2021-02-14 20:55:39
82
原创 Linux常用命令3
权限修改chmod 权限修改指令用户:u g a o权限设置:+(增加) -(撤销) =(设置)具体权限:w(权限数字为2)r(权限数字为4)x(权限数字为1)用法:chmod 用户+具体权限 文件名chmod 777 1.txt 修改文件权限chmod -R 777 目录 修改目录下所有文件权限用户管理sudo -s 切换到root权限passwd 修改密码exit 退出登录who 用来查看当前有多少用户登录who -q 查看登录用户数量...
2021-02-05 18:51:00
64
原创 Linux常见命令2
输入流:从键盘或文件中读取内容到文件中输出流:从计算机内存中把数据写到文件或者显示到显示器上重定向:>echo helloworld > 1.txt再次重定向会覆盖原有内容echo 哈哈哈哈哈 >> 1.txt原有内容不被覆盖管道:|多个Linux指令协同工作建立链接文件:lnln :为一个文件建立软连接和硬连接软链接:软链接不占用磁盘空间,源文件删除则软链接失效ln -s 源文件 链接文件硬链接:就是一个文件的一个或多个文件名ln 源文件 链接文件gr
2021-02-03 14:01:38
68
原创 Linux命令
pwd:显示当前路径tree:以树状图的形式来显示文件ls:列出目录的内容ls -l 以列表方式显示文件的详细信息ls -l -h 配合-l以人性化的方式显示文件的大小cd …返回到上一个目录cd ~ 返回到家目录cd - 返回到上一次你所在的目录mkdir 创建目录mkdir -p 递归创建目录touch 创建文件gedit 编辑文件rm 删除文件和文件夹rm -i 提示是否删除文件rm -f 强制删除,不提示rm -r 递归删除目录cp 拷贝文件cp 要拷贝的文件 拷
2021-02-02 20:07:35
79
原创 crackme-AfKayAs2.
寻找消息弹框寻找关键跳转推测,此处调用了错误提示框,附近应该有正确的提示框果然,在我们定位的字符串的上方,又发现了一个消息框通过字符串信息,可以肯定,就是正确提示框。0x00408677位置的JE跳转,理论上就应该是关键跳转了查看跳转的目标地点,正好是两个消息框之间。暴力破解选中0x00408677->右键->二进制(binary)->用NOP填充将修改后的程序dump(save),OK,爆破搞定...
2021-01-18 12:49:37
130
原创 crackme-Afkays1
打开EXE文件打开OD1.查询字符串右键->search for->all referenced text strings发现了“You Get Wrong”双击其中一个,回到代码区,可以看到注释中出现了失败和成功时的字符串:2.条件判断我们发现成功和失败时的字符串相隔不远,可以初步断定程序会在这之前进行判断,如果输入的serial正确则成功,否则失败;接着我们向上看,发现调用字符串比较函数的入口点3、参数传递我们知道调用一个函数时需要给它传递适当的参数。汇编调用函数之
2021-01-18 11:07:22
113
原创 buuctf-内涵的软件
ida进入主要函数感觉这一串DBAPP{49d3c93df25caad81232130f3d2ebfad}像flag但提交错误,看题目用flag{},出flag:flag{49d3c93df25caad81232130f3d2ebfad}
2021-01-17 14:46:01
255
原创 buuctf-reverse2
找到主要部分主函数 for ( i = 0; i <= strlen(&flag); ++i ) { if ( *(&flag + i) == 'i' || *(&flag + i) == 'r' ) *(&flag + i) = '1'; }意思是如果flag中遇见i和r,全都替换成1又看见最后flag{hacking_for_fun}替换成flag(hack1ng_fo1_fun)...
2021-01-17 14:38:31
206
原创 python实现读取并显示图片的方法
import matplotlib.pyplot as plt # plt 用于显示图片import matplotlib.image as mpimg # mpimg 用于读取图片import numpy as np lena = mpimg.imread('lena.png') # 读取和代码处于同一目录下的 lena.png# 此时 lena 就已经是一个 np.array 了,可以对它进行任意处理lena.shape #(512, 512, 3) plt.imshow(lena) #
2021-01-17 11:14:52
167
原创 pip更新
出现这个WARNING: You are using pip version 20.0.2, however version 20.2.3 is available.提示pip该更新了输入此命令行即可之前得完成如下步骤1.不要直接win+R然后cmd,而是要选择“开始”—“Windows系统”—“命令提示符”—右键“以管理员身份运行”!!!2.不要用家用WiFi,开手机热点连接!!!3.管理员身份运行命令提示符后,使用镜像下载升级!!!代码如下:python -m pip install -
2021-01-14 21:17:09
104
原创 攻防世界android-app-100
jeb+ida+apk模拟器(我用的是雷电模拟器)jeb找到主要函数界面大致是这样package com.example.ctf2;import android.util.Log;import android.view.View$OnClickListener;import android.view.View;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;class a
2021-01-12 19:13:40
256
原创 攻防世界babymips
发现是MIPS,ida7.5支持直接反编译进入主函数int __fastcall main(int a1, char **a2, char **a3){ int result; // $v0 int i; // [sp+18h] [+18h] BYREF char v5[36]; // [sp+1Ch] [+1Ch] BYREF setbuf((FILE *)stdout, 0); setbuf((FILE *)stdin, 0); printf("Give me your
2021-01-11 22:16:55
483
原创 攻防世界EASYHOOK
ida进入主要函数int __cdecl sub_401000(int a1, int a2){ char i; // al char v3; // bl char v4; // cl int v5; // eax for ( i = 0; i < a2; ++i ) { if ( i == 18 ) { *(_BYTE *)(a1 + 18) ^= 0x13u; } else { if ( i % 2 )
2021-01-11 18:53:33
537
原创 攻防世界ReverseMe-120
ida进入主函数int __cdecl main(int argc, const char **argv, const char **envp){ unsigned int v3; // edx unsigned int v4; // ecx __m128i v5; // xmm1 unsigned int v6; // esi const __m128i *v7; // eax __m128i v8; // xmm0 int v9; // eax char v11; /
2021-01-11 13:47:23
157
原创 攻防世界easyRE1
ida进入主函数int __cdecl main(int argc, const char **argv, const char **envp){ char s[256]; // [esp+1Ch] [ebp-10Ch] BYREF unsigned int v5; // [esp+11Ch] [ebp-Ch] v5 = __readgsdword(0x14u); puts("What is the password?"); gets(s); if ( !strcmp(s, "
2021-01-11 12:05:30
262
原创 攻防世界SignIn
ida进入到主函数__int64 __fastcall main(int a1, char **a2, char **a3){ char v4[16]; // [rsp+0h] [rbp-4A0h] BYREF char v5[16]; // [rsp+10h] [rbp-490h] BYREF char v6[16]; // [rsp+20h] [rbp-480h] BYREF char v7[16]; // [rsp+30h] [rbp-470h] BYREF char v8[1
2021-01-11 12:00:03
1346
3
原创 攻防世界easy_Maze
ida进入main函数int __cdecl main(int argc, const char **argv, const char **envp){ __int64 v3; // rax int v5[52]; // [rsp+0h] [rbp-270h] BYREF int v6[52]; // [rsp+D0h] [rbp-1A0h] BYREF int v7[7]; // [rsp+1A0h] [rbp-D0h] BYREF int v8; // [rsp+1BCh] [r
2021-01-10 20:16:33
256
原创 攻防世界流浪者
ida打开找到sub_401890函数int __thiscall sub_401890(CWnd *this){ CWnd *v1; // eax int v2; // eax struct CString *v4; // [esp-4h] [ebp-C4h] int v5[26]; // [esp+4Ch] [ebp-74h] BYREF int i; // [esp+B4h] [ebp-Ch] char *Str; // [esp+B8h] [ebp-8h] CWnd
2021-01-09 21:42:20
185
原创 攻防世界re4-unvm-me
发现是pyc文件1.在线反编译https://tool.lu/pyc/2.pyc反编译软件Python Decompiler代码如下:#!/usr/bin/env python#visit http://tool.lu/pyc/ for more informationimport md5md5s = [ 0x831DAA3C843BA8B087C895F0ED305CE7L, 0x6722F7A07246C6AF20662B855846C2C8L, 0x5F04850
2021-01-09 10:42:32
307
原创 攻防世界-notsequence
看见x*(x+1)/2应联想起杨辉三角ida进入主函数int __cdecl main(){ _DWORD *v0; // eax int v2; // [esp+14h] [ebp-Ch] _DWORD *v3; // [esp+1Ch] [ebp-4h] memset(&unk_8049BE0, 0, 0x4000u); puts("input raw_flag please:"); v3 = &unk_8049BE0; do { v0 =
2021-01-04 10:41:49
162
原创 攻防世界--simple-check-100
攻防世界–simple-check-100ida找到main函数// bad sp value at call has been detected, the output may be wrong!int __cdecl main(int argc, const char **argv, const char **envp){ void *v3; // esp int v5; // [esp-14h] [ebp-50h] int v6; // [esp-10h] [ebp-4Ch]
2021-01-02 19:50:12
650
2
原创 攻防世界BYEBYE
攻防世界BYEBYE(超详细)找到主函数int __cdecl main(int argc, const char **argv, const char **envp){ char s[24]; // [rsp+0h] [rbp-20h] BYREF int v5; // [rsp+18h] [rbp-8h] int i; // [rsp+1Ch] [rbp-4h] for ( i = 0; i <= 181; ++i ) *((_BYTE *)judge + i) ^
2021-01-02 12:03:51
267
2
原创 汇编学习
汇编语言的组成2020.12.27汇编语言发展至今,有以下3类指令组成1.汇编指令:机器码的助记符,有对应的机器码。2.伪指令:没有对应的机器码,由编译器执行,计算机并不执行。3.其他符号:如+、-、*、/等,由编译器识别,没有对应的机器码。MOV AX,[3]:传送3号单元的内容如AX寄存器运算器进行信息处理寄存器进行信息存储控制器控制各种器件进行工作内部总线连接各种器件,在他们之间进行数据的传送一个字由两个字节组成十六进制数的一位相当于二进制数的四位在十六进制表示的数据的后面
2020-12-27 22:10:45
251
原创 攻防世界Guess-the-Number
攻防世界Guess-the-Numberimport java.io.PrintStream;public class guess{ static String XOR(String _str_one, String _str_two) { java.math.BigInteger i1 = new java.math.BigInteger(_str_one, 16); java.math.BigInteger i2 = new java.math.BigInteger(_s
2020-12-25 19:31:09
356
原创 攻防世界hackme
攻防世界hackme进入sub_400F8E函数__int64 __fastcall sub_400F8E(__int64 a1, int a2, int a3, int a4, int a5, int a6){ int v6; // edx int v7; // ecx int v8; // er8 int v9; // er9 int v10; // ecx int v11; // er8 int v12; // er9 char v14; // [rsp+0h]
2020-12-25 18:04:50
253
2
原创 攻防世界debug
攻防世界debugida不能反编译出来PEID查壳后显示为NET文件,所以这次我们用dnspy参考:指令大全 https://www.cnblogs.com/zery/p/3368460.htmldnspy 使用总结 https://blog.csdn.net/yuqian123455/article/details/85038617using System;using System.Security.Cryptography;using System.Text;// Token:
2020-12-24 20:01:11
394
3
原创 攻防世界answer_to_everything
攻防世界answer_to_everything打开ida看到not_the_flag函数根据题目提示,直接对kdudpeh进行sha解密http://ontool.cn/sha/得到flag:
2020-12-24 18:56:20
190
1
原创 攻防世界666
攻防世界666ida打开打开encode函数寻找key的16进制进制转换不错的网站:http://www.ab126.com/goju/1711.html写个Python脚本key=[105, 122 ,119, 104, 114,111 ,122 ,34 , 34 ,119, 34, 118, 46 ,75 ,34 ,46 ,78 ,105,0]flag=''for i in range(0,18,3): flag+=chr((18^key[i])-6) flag+=ch
2020-12-24 18:42:04
286
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人