0x50, //
0x57, //
0x56, //
0x52, //
0x48, 0xc7, 0xc0, 0x01, 0x00, 0x00, 0x00,
0x48, 0xc7, 0xc6, data_arr[0], data_arr[1], data_arr[2], 0x00,
0x48, 0xc7, 0xc7, 0x01, 0x00, 0x00, 0x00,
0x48, 0xc7, 0xc2, 0x0b, 0x00, 0x00, 0x00,
0xcd, 0x80,
0x5a,
0x5e,
0x5f,
......................
阅读全部
|
gougoudan
贴于 2020年6月11日 14:35
hide
bbsi
section .text
global _start
_start:
;; save cpu state
push rax
push rdi
push rsi
push rdx
;; write msg to stdout
mov rax,1 ; [1] - sys_write
......................
阅读全部
|
gougoudan
贴于 2020年6月11日 13:51
hide
bbsi
.text
.global main
.type main, @function
main:
pushq %rax
pushq %rbx
pushq %rcx
pushq %rdx
movq $8, %rax
movq $.L, %rbx
......................
阅读全部
|
gougoudan
贴于 2020年6月11日 12:30
hide
bbsi
#include <stdio.h>
int main()
{
printf("This is the program, which will be injected.");
return 0;
}
阅读全部
|
gougoudan
贴于 2020年6月11日 11:15
hide
bbsi
#include<stdio.h>
#include<unistd.h>
#include<elf.h>
#include<fcntl.h>
#include<stdlib.h>
//暂定为4096,即默认被插入的代码大小 < 4096
#define pageSize 4096
Elf64_Addr program_head_vaddr;
Elf64_Xword program_head_size;
Elf64_Off entry_section_offset;
Elf64_Xword entry_section_size;
......................
阅读全部
|
gougoudan
贴于 2020年6月11日 11:06
hide
bbsi
// 功能:统计输入字符串长度
// ih: 输入字符串
// 返回字符个数
unsigned int _strlen(const char* s)
{
if (!s) return 0u;
const char *sc = s;
for (; *sc; ++sc);
return unsigned int(sc - s);
}
......................
阅读全部
|
gougoudan
贴于 2020年6月11日 10:18
hide
bbsi
// 功能:跳过字符串前导空白与正负符号
// ih: 输入字符串
// cnt: 输入字符个数
const char* __SkipLeadSignBlank(const char ih, unsigned int cnt)
{
const char *s = ih, *h = ih;
do {
const auto c = *s;
if (('-') == c) continue;
if (('+') == c) continue;
if (::isblank(c)) continue;//(c == (' ')) || (c == ('\t'))
if (0 == c) return NULL;
......................
阅读全部
|
gougoudan
贴于 2020年6月11日 10:07
hide
bbsi
// 功能:跳过字符串前导空白与正负符号
// ih: 输入字符串
// cnt: 输入字符个数
const char* __SkipLeadSignBlank(const char ih, unsigned int cnt)
{
const char *s = ih, *h = ih;
do {
const auto c = *s;
if (('-') == c) continue;
if (('+') == c) continue;
if (::isblank(c)) continue;//(c == (' ')) || (c == ('\t'))
if (0 == c) return NULL;
......................
阅读全部
|
gougoudan
贴于 2020年6月11日 10:03
hide
bbsi
#include<bits/stdc++.h>
using namespace std;
char a[10][10];
int x,y,f;
bool judge(int yy,int xx)
{
int c=yy,d=xx;
for(int i=1;i<=4;i++)
{
if(a[c][d]!=a[++c][d]) break;
if(i==4) return false;
}
......................
阅读全部
|
l879800503
贴于 2020年6月10日 17:55
hide
bbsi
#include <stdio.h>
#include <string.h>
#pragma warning(disable:4996)
#define N 20
#define Bool int
#define True 1
#define False 0
typedef struct AddressBook
{
char _name[N];
......................
阅读全部
|
gougoudan
贴于 2020年6月8日 16:59
hide
bbsi