搜索结果
查询Tags标签: cfi,共有 11条记录-
c++之函数与函数重载
一、函数默认参数1.1 函数默认参数简介在C++中,定义函数时可以给形参指定一个默认的值,这样调用函数时如果没有给这个形参赋值(没有对应的实参),那么就使用这个默认的值。 比如:我们要实现一个 分页 插件,在使用时可以由用户指定当前是第几页以及每页显示多少条数据…
2022/3/20 11:27:33 人评论 次浏览 -
C++虚函数调用简单分析
C++代码如下: class parent_parent { public:virtual int print() const{return 1;} };class sub : public parent_parent { public:int print() const override{return 0;} };int main() {parent_parent* p = new sub;p->print();delete p;return 0; }通过使用反汇编…
2022/2/23 9:21:41 人评论 次浏览 -
BUUCTF:[CFI-CTF 2018]webLogon capture
题目来源:https://buuoj.cn/challenges#[CFI-CTF%202018]webLogon%20capture流量题 追踪TCP 转字符
2022/1/30 6:04:18 人评论 次浏览 -
OpenEuler中C与汇编混合编程
OpenEuler中C与汇编混合编程 在X86_64架构下实践2.5中的内容,提交代码和实践截图 a.c #include <stdio.h>extern int B();int A(int x,int y) { int d, e,f; d = 4; e = 5; f= 6; f = B(d,e); }通过gcc -m32 -S a.c a.s将a.c的汇编代码放入a.s中a.s代码 .file &qu…
2021/12/7 11:17:45 人评论 次浏览 -
OpenEuler中C与汇编混合编程
OpenEuler中C与汇编混合编程 在X86_64架构下实践2.5中的内容,提交代码和实践截图 a.c #include <stdio.h>extern int B();int A(int x,int y) { int d, e,f; d = 4; e = 5; f= 6; f = B(d,e); }通过gcc -m32 -S a.c a.s将a.c的汇编代码放入a.s中a.s代码 .file &qu…
2021/12/7 11:17:45 人评论 次浏览 -
OpenEuler 中C与汇编的混合编程(选做)
2.5 OpenEuler 中C与汇编的混合编程(选做) 一、X86_64实践内容 2.5.1 1.代码如下: /************a.c*************/ #include<stdio.h>extern int B();int A(int x,int y) {int d,e,f;d =4; e =5; f=6;d=B(d,e); }经过汇编命令gcc -m32 -S a.c -o a.s 得到汇编文…
2021/12/5 22:18:05 人评论 次浏览 -
OpenEuler 中C与汇编的混合编程(选做)
2.5 OpenEuler 中C与汇编的混合编程(选做) 一、X86_64实践内容 2.5.1 1.代码如下: /************a.c*************/ #include<stdio.h>extern int B();int A(int x,int y) {int d,e,f;d =4; e =5; f=6;d=B(d,e); }经过汇编命令gcc -m32 -S a.c -o a.s 得到汇编文…
2021/12/5 22:18:05 人评论 次浏览 -
[译] Android 内核控制流完整性,程序员如何技术划水
利用内核的常用方法是使用错误来覆盖存储在内存中的函数指针,例如存储了回调函数的指针,或已被推送到堆栈的返回地址。这允许攻击者执行任意内核代码来完成利用,即使他们不能注入自己的可执行代码。这种获取代码执行能力的方法在内核中特别受欢迎,因为它使用了大量的函…
2021/9/8 14:07:07 人评论 次浏览 -
[译] Android 内核控制流完整性,程序员如何技术划水
利用内核的常用方法是使用错误来覆盖存储在内存中的函数指针,例如存储了回调函数的指针,或已被推送到堆栈的返回地址。这允许攻击者执行任意内核代码来完成利用,即使他们不能注入自己的可执行代码。这种获取代码执行能力的方法在内核中特别受欢迎,因为它使用了大量的函…
2021/9/8 14:07:07 人评论 次浏览 -
C++11 CAS无锁函数compare_exchange_weak的使用
#include <iostream> // std::cout #include <atomic> // std::atomic #include <thread> // std::thread #include <vector> // std::vector// a simple global linked list: struct Node { int value; Node* nex…
2021/8/3 12:05:50 人评论 次浏览 -
C++11 CAS无锁函数compare_exchange_weak的使用
#include <iostream> // std::cout #include <atomic> // std::atomic #include <thread> // std::thread #include <vector> // std::vector// a simple global linked list: struct Node { int value; Node* nex…
2021/8/3 12:05:50 人评论 次浏览