昨天在逆向某App的时候,发现有个加密工具类中的native方法是用C语言编写的,隐藏在so文件中。某大佬推荐逆向工具unidbg,能在pc端直接调用so文件中的函数,最终成功解决了问题。
例子:cp /dev/cdrom /opt/mycd.iso,也可以用 dd if=/dev/cdrom of=/opt/mycd.iso
Ventoy是一个制作可启动U盘的开源工具,有了Ventoy你就无需反复地格式化U盘,你只需要把 ISO/WIM/IMG/VHD(x)/EFI 等类型的文件直接拷贝到U盘里面就可以启动了,无需其他操作。
说明:/home/tecmint/Fedora-18-i386-DVD.iso是iso文件路径名的
使用VMware安装的ubuntu虚拟机的显示屏幕太小,可以通过在VMware里安装“VMware Tool”插件解决,安装步骤记录一下。
例如,用test1.c、test2.c、test3.c、test4.c以及main1.c形成可执行文件,我们需要先得到各个文件的目标文件test1.o、test2.o、test3.o、test4.o以及main1.o,然后再将这写目标文件链接起来,最终形成一个可执行程序。
FFmpeg是一套用于录制、转换和流化音视频的完整的跨平台解决方案,它的强大之处不用过多描述,本文主要介绍如何编译出so文件和在Android Studio工程中的引入
前不久,我们准备将自己开发的视频播放sdk提供给公司其他部门,在打包的时候,同事问了我一个问题,为什么我们打sdk的时候需要分别提供armeabi和arm64-v8a(ps,还有其他7种CPU架构)。其实这是一个常识问题,针对不同的架构我们肯定要提供不同的动态链接库,所以,在实际开发过程中,我们并不是将这7种so库都集成到我们的项目中去,我们会根据实际情况做一个取舍。 那么旧事重提,我们再来看看Android动态链接库。 简介 早期的Android系统几乎只支持ARMv5的CPU架构,不过到目前为止支持7种
目前很多 App 的加密签名算法都在so文件中,强行逆向so的话可能会消耗大量时间和资源。
其实这部分,不比多言了。虽然在网上可以找到很多类似的经验,但其实第一次使用还是要花费不少的时间。
在说明Linux的.a、.so和.o文件关系之前,先来看看windows下obj,lib,dll,exe的关系。
此种情况用户在对配置文件做了修改后(例如修改桌面壁纸、修改系统属性)后,注销重新登陆会还原到标准的配置文件配置,其他关于强制配置文件的更多描述可以参见微软官方文档
看到移除 so文件可能有些同学会问,这不是只要在as中删除libs目录就搞定了么?这样会有几个问题
转:https://blog.csdn.net/iteye_20658/article/details/82650699
Security Onion是免费的开源Linux发行版,用于入侵检测,企业安全监视和日志管理。包括Elasticsearch,Logstash,Kibana,Snort,Suricata,Bro,Wazuh,Sguil,Squit,CyberChef,NetworkMiner和许多其他安全工具。Security Onion是网络安全监控,流量分析人员的必备利器。
这个漏洞早在去年的时候就看过一些文章了, 不过一直都没用过这个漏洞的打法, 直到昨天的DASCTF才上手用了这个漏洞的一小段原理, 今天就写一篇关于这个漏洞的文章吧。
其中isofile改为 某个非系统盘里的iso文件路径。 使得grub2生效:
http://blog.163.com/xychenbaihu@yeah/blog/static/13222965520101023104745738/
-E:只进行预处理,不编译 -S:只编译,不汇编 -c:只编译、汇编,不链接 -g:编译器在编译的时候产生调试信息。 -I:指定include包含文件的搜索目录 -o:输出成指定文件名,如果缺省则输出位a.out -L:搜索库的路径 -l:指定程序要链接的库 -w:忽略所有警告 -shared:指定生成动态链接库。 -static:指定生成静态链接库。 -fPIC:表示编译为位置独立的代码,用于编译共享库。目标文件需要创建成位置无关码,概念上就是在可执行程序装载它们的时候,它们可以放在可执行程序的内存里的任何地方。
值得注意的是,靶机貌似有个bug,当shell连接中断后,我们无法直接再次连接,只能重启靶机,再故技重施
挖矿木马会占用CPU进行超频运算,从而占用主机大量的CPU资源,严重影响服务器上的其他应用的正常运行。黑客为了得到更多的算力资源,一般都会对全网进行无差别扫描,同时利用SSH爆破和漏洞利用等手段攻击主机。部分挖矿木马还具备蠕虫化的特点,在主机被成功入侵之后,挖矿木马还会向内网渗透,并在被入侵的服务器上持久化驻留以获取最大收益。整体的攻击流程大致如下图所示:
已获取自动化工具包,并上传到服务器完成解压,得到完整的软件文件夹tsdbtool。已下载依赖:GCC-7.3.0、CMake-3.5.2的源码包,放到tsdbtool文件夹下的postgresqlDep文件夹中,下载地址见表2。已获取PostgreSQL的源码包或者RPM包,并上传到自动化工具tsdbtool目录下。根据实际环境,完成安装
为了将对环境变量的修改应用到未来所有环境下,可以将修改命令放到~/.bashrc文件中。 修改完~/.bashrc文件后,记得执行source ~/.bashrc,来将修改应用到当前的bash环境下。
一. 简述 Android中的so文件是动态链接库,是二进制文件,即ELF文件。多用于NDK开发中。
JNI——(Java Native Interface),他是java平台的特性,不是安卓系统提供的。他定义了一些JNI函数,来让开发者可以通过调用这些函数来实现java代码调用C/C++代码。
几乎稍有经验的Android开发,都会在工作中用到JNI的开发。即使工作中没有涉及到JNI的开发,在我们使用第三方的库时,也经常需要引入.so文件。
前言 笔者看了一些NDK的项目。一些教程不是HelloWord就是直接整FFmpeg或OpenCV,可谓一个天一个地,而且目录结构和Android3.5的默认结构并不是太一致,一直没找到什么合心的文章。故写此文连接这天地,来总结一下在NDK开发之前你应知道的东西。 ---- 在此之前,先划分三类人,如果不认清自己是什么角色(垃圾)就去玩NDK,你会很糟心: user : 纯粹.so链接库使用者(伸手党) creator : 纯粹ndk开发者,创作.so链接库(创作家) designer : 在现
Microsoft Surface Pro 系列一直是平板+PC中的强者,刷新了针对PC的看法。这次由于项目的需求搭建测试环境,需要使用Ubuntu 16.04 系统,在Surface Pro 7 安装Ubuntu 16.04 进行开发体验。
我在路径/root/host/my_program/asoc/include下创建四个文件
公司的硬件让我帮忙调用一个so文件,想着一直都没机会自己写一个jni,于是就答应了,在调用的过程中还踩了不少坑,特地写一篇博客记录一下。
一、安装ubuntu 1、下载ubuntu镜像文件 Download Ubuntu Desktop 2、制作启动光盘 如果是windows操作系统:插入空白dvd光盘,在iso文件上右键,选择“刻录光盘映像” 参考windows7中把ISO文件轻松刻录成光盘的方法(图文教程) 如果是ubuntu系统:Ubuntu14.04系统下,如何将.iso文件刻录到CD/DVD光盘 3、安装 二、搜狗输入法安装 1、参考Ubuntu 16.04 LTS安装sogou输入法详解 注意:fcitx configure未出现
我想对于静态加载 so 库文件,大家都已经很熟悉了,这里就不多说了。在 Android 开发中调用动态库文件(*.so)都是通过 jni 的方式,而静态加载往往是在 apk 或 jar 包中调用so文件时,都要将对应 so 文件打包进 apk 或 jar 包。 动态加载的优点 静态加载,不灵活,apk 包有可能大。所以采用动态加载 so 库文件,有以下几点好处: 灵活,so 文件可以动态加载,不是绑定死的,修改方便,so 库有问题,我们可以动态更新。 so 库文件很大的话,采用动态加载可以减少 apk 的包
so其实就是shared object的意思。今天看了上面的博客,感觉好吃力。赶紧做个笔记记录一下。下面的内容大多都是连接中的,穿插我自己的笔记
我们知道 Windows下有类似 UltraISO的这样的软件可以用来编辑 ISO文件,可引导 ISO也没有问题。近来在 Linux下玩的比较多,正好要改个 ISO,于是就开始找 Linux下有没有类似的软件。
静态链接是在链接阶段将程序各模块文件链接成一个完整的可执行文件,运行时作为整体一次性加载进内存。动态加载允许用户将程序各模块编译成独立的文件而不将它们链接起来,在需要使用到模块时再动态地将其加载到内存中。
可以用两种方法创建kvm虚拟机,一种是virt-manager管理工具创建,一种是命令行的方式。
使用phpize为PHP动态添加扩展时,报Cannot find autoconf错误 解决方案 $ /app/php/bin/phpize Configuring for: PHP Api Version: 20170718 Zend Module Api No: 20170718 Zend Extension Api No: 320170718 Cannot find autoconf. Please check your a
关于JavaCPP JavaCPP 使得Java 应用可以在高效的访问本地C++方法,JavaCPP底层使用了JNI技术,可以广泛的用在Java SE应用中(也包括安卓),以下两个特性是JavaCPP的关键,稍后咱们会用到: 提供一些注解,将Java代码映射为C++代码 提供一个jar,用java -jar命令可以将C++代码转为java应用可以访问的动态链接库文件; 目前JavaCPP团队已经用JavaCPP为多个著名C++项目生成了完整的接口,这意味着咱们的java应用可以很方便的使用这些C++库,这里
在实现android插件化过程中,在插件代码中加载so时出现了一些问题,因此特地研究了一下android系统中加载so的过程,记录下来,整理成文。
系统层面上有.和…硬链接指向目录。假设我们是超级用户,允许给目录建立硬链接,给根目录建立硬链接,从根目录开始查找,当查找硬链接的时候就是根目录,这时候递归式查找,形成了环路查找,最后导致软件无法正常进行查找工作!所以不允许普通用户给目录建立硬链接。
每个版本专项测试都需要记录apk的总大小值,然后对比每个版本的包大小总值,这个总大小对于开发并没有什么实际价值,因为不够细化apk中各种资源的大小.
方法一、Linux下用mount挂载命令 在网上下载的软件盘是iso格式的,不刻成光盘就可以读取里面的文件。不用解压。 在终端用mount -o loop /mnt/*/1.iso /mnt/cdrom 命令,(其中*是你工具盘放置的路径)。 输入命令后,打开我的电脑——〉打开CD-ROM就能看到里面的文件了。运行install或者 autorun。 当提示charudi二张光盘时,键入命令umount /mnt/cdrom 。 然后再键入mount -o loop /mnt/*/2.iso/mnt/cdr
在终端用mount -o loop /mnt/*/1.iso /mnt/cdrom 命令,(其中*是你工具盘放置的路径)。
ELF病毒背景 1.Android病毒发展趋势 自 2010 年开始,全球进入了移动互联网时代,作为主流移动操作系统Android也得到了迅猛发展。Android病毒也从简单到复杂,从单纯的dex病毒转向为elf病毒(其中elf是Linux下的可执行程序)。这一发展趋势有几个原因: 经过多年发展程序编写人员水平普遍提高,大量的linux程序移植到android系统,病毒也随之发展。 android系统碎片化严重,提取漏洞不断累积导致病毒攻击方式多元化 , elf文件具有比dex程序更难分析的特点。 常规杀
关于库相比大家之前肯定使用过,比如C/C++里面的标准库,STL里面的各种库,我们在调用STL里的容器时都需要使用库,那么库到底是什么呢?
由于Android项目是基于java语言的,而java属于高层抽象语言,易于反编译,其编译后的程序包包含了大量的源代码变量、函数名、数据结构等信息,根据其编译打包后的APK文件,可以非常容易的得到 近乎源代码质量 的反编译代码。如果不加混淆,相当于直接将源代码拱手送人,内容严密的app权限审核可以说是形同虚设。如果大家想避免自己的成果被别人夺取,然后重新修改策划而额外增加的工作量,那就尽量得自己的Android项目加上混淆吧。
近日,腾讯云安全团队监测到部分云上及外部用户机器存在安全漏洞被入侵,同时植入 watchdogs 挖矿病毒,出现 crontab 任务异常、系统文件被删除、CPU 异常等情况,并且会自动感染更多机器。攻击者主要利用 Redis 未授权访问入侵服务器并通过内网扫描和 known_hosts 历史登录尝试感染更多机器。(对此,腾讯云安全团队第一时间发布了病毒预警——预警 | 中招 watchdogs 感染性挖矿病毒,如何及时止损?)
从filesystem根目录开始寻找文件。 写法: 以 / 开头。例如找usr下local中内容,路径: /usr/local
Android中有时候为了效率以及平台开发库的支持,难免会用到NDK开发,那么都会产生一个so文件,通过native方法进行调用,开发和调用步骤很简单,这里就不多说了,本文主要来介绍,我们在使用so的时候总是会出现一些常见的问题,而现在插件化开发也很普遍了,有时候插件中也会包含一些so文件,需要加载,这时候也会出现一些问题。本文就来详细总结一下这些问题出现的原因,以及解决方法,主要还是通过源码来分析。
领取专属 10元无门槛券
手把手带您无忧上云