记录一次后台移植(thinkphp)

流沙 | 运维 | 2018-02-28
0x01 背景 项目开发:微信小程序 环境部署: 需要将app的后台代码移植到腾讯云的服务上,数据库还是在阿里云那边。 config.php 文件的'DB_HOST'   修改属性 0x02 允许mysql远程连接 1、改表法 可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%" mysql -u root -p  mysql&g...

阅读全文>>

ė249次浏览 60条评论 0

已回上海

流沙 | 随笔 | 2018-02-22
十几天没怎么摸电脑了, 回家过了个年,两个电脑虽然扛回去了, 但是一直没怎么用, 过年回家事情挺多的, 刚刚到出租屋, 工作的事情解决掉以后, 就想起了自己的博客, 这几天还不用上班, 准备把 第二期的教程, 完整的看完, 后天还要去练车,  以前在百度博客写自己的心情, 下笔很快, 也很有调理, 后来就不怎么写了, 嫌麻烦吧.. 今年的事情很多 1\ 换工作 2\ 驾照 3\ 结婚 4\ 房子装修 5\ 泰国旅游 6\ 买车 ........

阅读全文>>

ė290次浏览 60条评论 0

硬编码总结

流沙 | 网络安全 | 2018-02-11
理解定长 理解可变长 MOdR/M SIB 全文下载 直接分享给大家,DT的课件 硬编码.xls Intel白皮书.zip

阅读全文>>

ė311次浏览 60条评论 0

硬编码——经典定长指令

流沙 | C/C++ | 2018-02-08
经典定长指令上(修改寄存器) 1、PUSH/POP 特点: 0x50 PUSH EAX 1、记住32位、16、8位的通用寄存器,按照顺序记住. 0x51 PUSH ECX 0x52 PUSH EDX 2、将操作数编码到指令当中 0x53 PUSH EBX 0x54 PUSH ESP 0x55 PUSH EBP 0x56 PUSH ESI 0x57 PUSH EDI 0x58 POP EAX 0x59 POP ECX 0x5A POP EDX 0x5B POP EBX 0x5C POP...

阅读全文>>

ė506次浏览 60条评论 0

申请

流沙 | | 2018-02-08
源代码下载地址 PeTool2018 - 加壳段.rar shell.rar

阅读全文>>

ė243次浏览 60条评论 0

进程通信 - 匿名管道

流沙 | C/C++ | 2018-02-06
0x01 核心代码 父进程: HANDLE hRead; HANDLE hWrite; SECURITY_ATTRIBUTES sa; sa.bInheritHandle = TRUE; sa.lpSecurityDescriptor = NULL; sa.nLength = sizeof(SECURITY_ATTRIBUTES); if(!CreatePi...

阅读全文>>

ė244次浏览 60条评论 0

进程通信 - 共享内存

流沙 | C/C++ | 2018-02-06
0x01 核心代码 发送端代码: HANDLE hMapObject; HANDLE hMapView; //创建FileMapping对象 hMapObject = CreateFileMapping((HANDLE)0xFFFFFFFF,NULL,PAGE_READWRITE,0,0x1000,TEXT("shared")); if(!hMapObject) { MessageBox(NULL,TEXT("共享内存失败"),TEXT("Error"),MB_OK); ...

阅读全文>>

ė295次浏览 60条评论 0

进程通信 - SendMessage

流沙 | C/C++ | 2018-02-06
核心代码: 发送端代码: HWND hwnd = ::FindWindow(NULL,TEXT("接收端窗口名")); if(hwnd == NULL) { MessageBox(0,TEXT("没找到窗口"),TEXT("ERROR"),MB_OK); } else { // 发送消息 //SendMessage(hwnd,WM_USER+0x1,NULL, (LPARAM)100...

阅读全文>>

ė282次浏览 60条评论 0

测试InlineHook

流沙 | C/C++ | 2018-02-04
0x01主要是针对内部函数的hook 这里有需要注意的地方 内部含糊的地址 HOOK的位置 保存现场: pushfd  pushad 原本硬编码的恢复 extern "C" _declspec(naked)void HookProc() { //保存现场 _asm { pushad pushfd } //获取寄存器 _asm { mov reg.Eax,eax mov reg.Ecx,ecx mov reg.Ebx,ebx mov ...

阅读全文>>

ė302次浏览 60条评论 0

IATHOOK详细讲解

流沙 | C/C++ | 2018-02-02
0x01 HOOK函数的编写 有一定的格式要求 直接直接hook MessageBoxA 函数格式 int WINAPI NewMessageBox( HWND hWnd, // handle to owner window LPCTSTR lpText, // text in message box LPCTSTR lpCaption, // message box title UINT uType // message box sty...

阅读全文>>

ė246次浏览 60条评论 0

LoadLibrary和GetModuleHandle的区别

流沙 | C/C++ | 2018-02-02
写代码的时候注意到的,以前没注意这两个函数的用法 主要区别: LoadLibrary是把一个模块映射进调用进程的地址空间,需要时增加引用计数 而GetModuleHandle是返回一个已经映射进调用进程地址空间的模块的句柄 并不增加引用计数 使用GetModuleHandle可以判断做需要加载的模块是否已经被加载(到调用进程的地址空间). 代码1: typedef void *(__stdcall *pfVirtualAllocEx)(unsigned long, void *, unsigned long, unsigned long, u...

阅读全文>>

ė230次浏览 60条评论 0

运行内存中的exe(二)

流沙 | C/C++ | 2018-02-02
0x01 学习进程注入的知识, 调试的代码 代码不是很完整, 已经写了很长的时间了, 终点遇到了各种各样的问题, 好多还没有解决!! 判断EXE在其他线程中运行,直接查询WinMain的地址, 进行比对 修复IAT表, 有些可以实现,修复, 有些事修复不了的, 看什么样的程序, 好多限制 0x02 代码贴上来, 有两段代码, 一段 pack端, 一段exe的back端 自己能看懂, 主要学习思路吧 0x03 代码下载地址 vc_code_20180202.zip

阅读全文>>

ė273次浏览 60条评论 0

双进程调试小结

流沙 | C/C++ | 2018-02-01
写一下方法就可以了, 1、CE查看内存数据, 只要确定内存地址, 就可以查看远程线程中的内存 2、 OD直接附加进程, 点位内存中的位置, 下断点 进行调试 找到自己程序写错的位置,真心很好的调试方法!!

阅读全文>>

ė236次浏览 60条评论 0

CreateRemoteThread简单运用

流沙 | C/C++ | 2018-01-31
测试代码可行, 推荐给大家 #pragma once #include <windows.h> #include <TlHelp32.h> #include "stdio.h" //线程参数结构体定义 typedef struct _RemoteParam { char szMsg[12]; //MessageBox函数中显示的字符提示 DWORD dwMessageBox;//MessageBox函数的入口地址 } RemoteParam, * PRemoteParam; ...

阅读全文>>

ė223次浏览 60条评论 0

运行内存中的exe(一)

流沙 | C/C++ | 2018-01-31
0x01 主要功能, 加载一个exe到 一个内存中, 并运行这块内存 0x02 有限制条件, EXE必须具有重定位表, 否则运行失败!! 截图 pid模块还没写完 想把进程移植到指定的 PID中运行! 0x03 关键代码 (有参考价值的代码,  重定位表的修复,  导入表的修复) // 20180118_20.cpp : Defines the entry point for the ap...

阅读全文>>

ė272次浏览 60条评论 0

win7 桌面图标异常

流沙 | 运维 | 2018-01-30
修复; 点击 开始 运行 输入 cmd 右键,选择“粘贴”以下代码;敲下回车就哦了! taskkill /im explorer.exe /f cd /d %userprofile%\appdata\local  del iconcache.db /a  start explorer.exe  exit 

阅读全文>>

ė216次浏览 60条评论 0

ReadProcessMemory 与 WriteProcessMemory

流沙 | C/C++ | 2018-01-29
修改一个程序的过程如下:1、获得进程的句柄 2、以一定的权限打开进程 3、调用ReadProcessMemory读取内存,WriteProcessMemory修改内存,这也是内存补丁的实现过程。下面贴出的是调用ReadProcessMemory的例程 #include <windows.h> #include <tlhelp32.h> BOOL CALLBACK EnumChildWindowProc(HWND hWnd,LPARAM lParam);//枚举记事本中的子窗口 char mess[999999]; int WIN...

阅读全文>>

ė239次浏览 60条评论 0

代码跳转到指定位置

流沙 | C/C++ | 2018-01-28
因为测试源码的失败,这里写一下原理和贴图 0x01 控制进程上下文 GetCurrentThread GetThreadContex 0x02 获取汇编的地址位置,修改Context memcpy [ctx.Ebx+8]内存处存的是外壳进程的加载基址,ctx.Eax存放有外壳进程的入口地址 0x03 __asm{     jmp  addr }

阅读全文>>

ė252次浏览 60条评论 0

PeLoader测试失败

流沙 | C/C++ | 2018-01-28
测试VirtualAlloc 的函数 一直提示 487 错误  无法解决!! 为了加深对PE文件结构的理解,写了个简单的模拟PE文件加载过程的程序,不过程序有些地方没处理好(资源节处),也存在这些小bug写的分四个文件写的,如下: ReadFile.h : 代码: #include <stdio.h> #include <windows.h> #include <assert.h> HANDLE OpenFile(char *name); int ReadFile(HANDLE ...

阅读全文>>

ė261次浏览 60条评论 0

记一下一个头文件

流沙 | C/C++ | 2018-01-25
#include <windows.h> #include <winnt.h> 用#include <winnt.h>   记得前面加上 #include <windows.h>   调试了半天, 我去!!!

阅读全文>>

ė223次浏览 60条评论 0

Ɣ回顶部