简单的FreeBSD 的内核编译

删除并重新下载内核源码删除自带的内核源码rm-rf/usr/src下载内核源码wgethttps://download.freebsd.org/ftp/releases/amd64/11.1-RELEASE/src.txz也可以使用国内的源地址下载wgethttp://ftp1.chinafreebsd.cn/pub/FreeBSD/releases/amd64/11.1-RELEASE/src.txz解压内核源码tarxvzfpsrc.txz-C/修改内核参数进入对应内核的目录,虚拟机是AMD64cd/usr/local/amd64/conf修改内核参数,并将optionVIMAGE加入viGENERICconfigGENERIC重新编译内核进入内核编译的目录 cd/usr/local/amd64/compile/GENERIC清理依赖关系makecleandepend重新构建依赖关系makedepend编译make安装makeinstall重启服务器reboot ...
代码星球 代码星球·2020-08-01

Bsd内核选项总结

一:下面这个选项在每个内核中都要有:machine i386它指明了机器的硬件体系结构。它必须是i386, pc98, sparc64, alpha, ia64, amd64,和powerpc当中的一 种。cpu I486_CPUcpu I586_CPUcpu I686_CPU二:ident GENERICident 是一个内核的标识符。你应该把它改成想给内核取的名字, 注意:象machine 与cpu 这两个设置。如果你的内核名称包含数字,请记得用双引号把它括起来。内核名称将会使用-D 参数传给编译器,所以不要用像DEBUG 或是其它可能干扰编译器的机器、CPU 名称,如vax 。三:maxusers nmaxusers值的大小定义了重要的系统表(最多并行进程数)的大小。这个数值大概地和你机器的同时使用者的数量相等。在5。x中,如果这个值没有指定, 那么它默 认是0。...
代码星球 代码星球·2020-08-01

动态方式破解apk进阶篇(IDA调试so源码)

来源https://blog.csdn.net/qq_21051503/article/details/74907449下面就说关于在IDA中Android so的动态调试的问题以及在so的三个层次下断点的操作。问题篇:1.动态调试的作用以及与我们常说的脱壳区别之处?2.IDA的下断点调试的原理?3.有无反调试的步骤区别?以及原理?4.反调试与反附加的区别?5.IDA动态调试so时有哪三个层次?以及如何下断点?注意:so的动态调试与脱壳在步骤上有很多的相似之处,关于脱壳在后面会详细介绍加壳以及脱壳的发展历程。解答原理篇:第一个问题:曰:动态调试作用有二:其一:dump内存,即:找准时机dump出解密后的正确文件;其二:查看每一步状态,进一步分析出正确的逻辑;脱壳只是我们在调试系统级别的.so文件后 ,找准时机dump出正确而真实的.so文件,而动态调试只不过是手动脱壳的一种表现方式。 第二个问题:曰:(由于师哥说面试时喜欢问,此处列出来)下断点原理:由于下断点有硬件断点和软件断点,我们在这里只说IDA中的软件断点原理: X86系列处理器提供了一条...

Android逆向之旅---动态方式破解apk进阶篇(IDA调试so源码)

来源 https://blog.csdn.net/jiangwei0910410003/article/details/51500328今天我们继续来看破解apk的相关知识,在前一篇:Eclipse动态调试smali源码破解apk 我们今天主要来看如何使用IDA来调试Android中的native源码,因为现在一些app,为了安全或者效率问题,会把一些重要的功能放到native层,那么这样一来,我们前篇说到的Eclipse调试smali源码就显得很无力了,因为核心的都在native层,Android中一般native层使用的是so库文件,所以我们这篇就来介绍如何调试so文件的内容,从而让我们破解成功率达到更高的一层。 我们在介绍如何调试so文件的时候,先来看一下准备知识:早在之前的一篇文章:Android中通过静态分析技术破解apk 中使用IDA工具静态分析so文件,通过分析arm指令,来获取破解信息,比如打印的log信息,来破解apk的,在那时候我们就已经介绍了如何使用IDA工具:这里有多个窗口,也有多个视图,用到最多的就是:1、Functio...

IDA动态调试技术及Dump内存

来源 https://blog.csdn.net/u010019468/article/details/78491815最近研究SO文件调试和dump内存时,为了完整IDA调试起来,前后摸索了3天才成功,里面有很多坑和细节,稍微不注意,就一直排行,需要理解每步骤的作用意义,否则就会觉得教程不对,要详细的教程可能找不到,大部分都是简单介绍,没有提醒细节和易忽视的点事先准备工作 1、要求root手机或者直接用模拟器 否则没有权限启动android_server 2、IDA在6.6以上版本或者手机为5.0以下否则会出现pie异常:error:onlypositionindependentexecutables(PIE)aresupported.1细步骤如下::1、首先把IDA安装目录下的android_server文件通过adbpush命令push到手机/data/local/tmp/目录下,并通过root权限身份运行./android_serverC:WindowsSystem32>adbshellshell@HWGRA:/$cd/data/l...

ida动态调试笔记

 目标文件:阿里安全挑战赛的第二题 点击打开链接使用环境:ida6.8点击打开链接,adtbundle点击打开链接首先打开avd安卓模拟器,界面如下:在dos下运行adb命令,查看当前连接的设备: [plain] viewplain copy adb devices  得到结果如下:上图显示了本机连接的安卓模拟设备。然后用adb命令安装上面的阿里测试文件: [html] viewplain copy adb install 阿里测试路径/文件名  出现上述提示,标识文件安装成功 上图中红色区域是刚刚安装的程序接下来把ida下面的调试服务器上传到安卓模拟器当中就是上图中那个android_server文件,使用如下命令上传: [html] viewplain copy adb push C:吾爱破解安卓工具箱v1.0fixRolanindebugID...
代码星球 代码星球·2020-08-01

ELF反调试初探

http://www.freebuf.com/sectool/83509.html ELF(ExecutableandLinkableFormat)是Unix及类Unix系统下可执行文件、共享库等二进制文件标准格式。为了提高动态分析的难度,我们往往需要对ELF文件增加反调试措施。本文便对相关技术进行了总结归纳。1.背景知识1.1ELF文件布局ELF文件主要由以下几部分组成: (1) ELF header(2) Program header table,对应于segments(3) Section header table,对应于sections(4) 被Program header table或Sectionheader table指向的内容注意这里segments与sections是两个不同的概念。之间的关系如下:(1) 每个segments可以包含多个sections(2) 每个sections可以属于多个segments(...
代码星球 代码星球·2020-08-01

FreeBSD 用kgdb调试kernel dump文件

来自: http://blog.csdn.net/ztz0223/article/details/8600052 kgdb貌似和ddb一样属于FreeBSD专属的调试器。1、开启kdump功能root@BTazuo:/root#cat/etc/rc.conf#Setdumpdevto"AUTO"toenablecrashdumps,"NO"todisabledumpdev="AUTO"2、模拟触发一个内核崩溃,做一个panic即可root@BTazuo:/root#sysctldebug.kdb.panic=13、系统会把这个panic导致的dump文件存储在/var/crash/目录下面,第一个命名为vmcore.04、开始调试,先到对应的内核版本的kernel.debug文件的路径下去:root@BTazuo:/usr/obj/usr/src/sys/GENERIC_20130219#ll|grepkernel-rwxr-xr-x 1root wheel 16031061Feb1914:36kernel*-rwxr-xr-x&nbs...

使用 GDB 调试多进程程序

来源 https://www.ibm.com/developerworks/cn/linux/l-cn-gdbmp/index.html GDB是linux系统上常用的c/c++调试工具,功能十分强大。对于较为复杂的系统,比如多进程系统,如何使用GDB调试呢?考虑下面这个三进程系统:进程Proc2是Proc1的子进程,Proc3又是Proc2的子进程。如何使用GDB调试proc2或者proc3呢?实际上,GDB没有对多进程程序调试提供直接支持。例如,使用GDB调试某个进程,如果该进程fork了子进程,GDB会继续调试该进程,子进程会不受干扰地运行下去。如果你事先在子进程代码里设定了断点,子进程会收到SIGTRAP信号并终止。那么该如何调试子进程呢?其实我们可以利用GDB的特点或者其他一些辅助手段来达到目的。此外,GDB也在较新内核上加入一些多进程调试支持。接下来我们详细介绍几种方法,分别是follow-fork-mode方法,attach子进程方法和GDBwrapper方法。在2.5.60版Linux内核及以后,GDB对使用fork/vfork创建子进程的程序提供了...

gdb调试多线程程序总结

 来源 https://www.cnblogs.com/jingzhishen/p/4324071.html 一、多线程调试1.多线程调试,最重要的几个命令:infothreads             查看当前进程的线程。                      GDB会为每个线程分配一个ID,后面操作线程的时候会用到这个ID.                      前面有*的是当前调试...

gdb调试命令的使用及总结

 gdb是一个在UNIX环境下的命令行调试工具。如果需要使用gdb调试程序,请在gcc时加上-g选项。下面的命令部分是简化版,比如使用l代替list等等。 1.基本命令  命令描述backtrace(或bt)查看各级函数调用及参数finish连续运行到当前函数返回为止,然后停下来等待命令frame(或f)帧编号选择栈帧info(或i)locals查看当前栈帧局部变量的值list(或l)列出源代码,接着上次的位置往下列,每次列10行list行号列出从第几行开始的源代码list函数名列出某个函数的源代码next(或n)执行下一行语句print(或p)打印表达式的值,通过表达式可以修改变量的值或者调用函数quit(或q)退出gdb调试环境setvar修改变量的值start开始执行程序,停在main函数第一行语句前面等待命令step(或s)执行下一行语句,如果有函数调用则进入到函数中  1)进入GDB  #gdbtest  test是要调试程序,由gcctest.c-g-otest生成。进入后提示符变为(gdb)。2)查看源码  (...

GDB调试程序

GDB三个功能1.启动欲被调试的程序;2.令程序在指定位置停住;3.程序被停时,可检查此时程序状态(如变量值)。 GDB调试流程:  "-g"编译选项使生成的可执行文件具备可调试信息   按照以上步骤进行,运行后即可输入GDB命令进行调试!GDB调试命令如下: ...
代码星球 代码星球·2020-07-29

内核下载、nfs挂载:个性问题及解决方法~~共勉

  开发板下载内核遇到startingwaiting问题时:首先想到是下载地址的问题!  将原本下载地址减去0X40,例如:smart210下载地址0X20008000,修改为0X20007FC0,即可!再者  设置环境变量:setenvbootargsnoinitrdconsole=ttySAC0,115200。...

启用adb wifi无线调试功能(无需root)

1 工具电脑、手机2 前提电脑和手机出于同一网段3 步骤以管理员方式打开cmd,运行 adbtcpip5555(执行tcpip调试模式)adbconnect 192.168.xxx.xxx(后面的ip地址换成你的手机的ip地址)4运行程序...

chrome调试创建sq设备进行调试

  工作中开发基于手机qq的webapp页面时,通常开发会对页面进行限制让用户通过手机qq访问,进行引导,如下图所示。    很多时候我们开发只是在手机展示,而在pc端进行调试,当开发加了这一层限制之后,就会导致有些数据样式出不来,让pc端调试整个就废掉了。  由于这一级限制是通过判断useragent来确定是否通过手q访问,那么,我们就可以有解决办法,那就是获取手q内置浏览器的useragent,进行模拟就可以了,事实就是如此。  手机qq的userAgent:Mozilla/5.0(iPhone;CPUiPhoneOS9_2likeMacOSX)AppleWebKit/601.1.46(KHTML,likeGecko)Mobile/13C75QQ/6.1.0.496Pixel/750NetType/WIFIMem/657  但是每次在chrome里面去输确实非常的麻烦,那么这里教大家创建设备,来进行模拟:  1.打开chrome的控制台,点击settings。  2.选择device,添加设备,添加一些参数就可以了。点击addcustomdevice,按照操作就可以了打开要访问的链...
首页上一页...2526272829...下一页尾页