.NetCore(Avalonia) 项目dll混淆,Ubuntu 或者deepin操作系统 deb安装包解压,重新打包
.NetCore(Avalonia) 项目dll混淆,deb安装包解压,重新打包
本文分为两部分,一部分是介绍使用 DotNetReactor6.0 及以上版本混淆.netcore项目的dll。
另一部分是介绍将混淆后的dll,放入打包好的deb安装包中。这里需要在deepin(unbuntu)下解压deb包,替换文件后重新打deb包。
这部分采用avalonia应用程序在deepin上演示。
一、dll混淆
.NetCore 所创建的类库项目,是可跨平台的.Net Standard类库,DotNetReactor6.0 及以上版本可混淆.Net Standard类库生成的dll。经过测试,使用ILSpy,
.NET Reflector 以及JetBrains dotPeek 反编译后,无法看到源码。本次演示使用ILSpy反编译工具。
(一)创建.netcore 的类库,编译生成dll,不经过混淆用ILSpy 查看。

(二)用ILSpy打开 hello.dll,查看class1,可以看到源码。

(三)将dll混淆,然后再用ILSpy查看该dll
1.混淆dll:



2.ILSpy反编译浏览混淆后的dll

二、deb安装包解压、替换混淆后的dll,重新打deb包。
这部分将用avalonia应用程序的deb包,在deepin系统上进行演示
1.新建一个文件夹,比如 在桌面新建一个文件夹app

2.在app文件夹内,再新建文件夹。将要重新打包的deb包放入app文件夹中。

3.解压deb安装包:将要重新打包的 deb安装包,放入 app文件夹中,执行解压缩命令。解压后,可修改、替换解压出来的文件
dpkg -X testapp.1.0.0.linux-x64.deb extract/ 将deb包解压出来的文件,放入extract文件夹中。

dpkg -e testapp.1.0.0.linux-x64.deb extract/DEBIAN/ 解压出包的控制信息 文件放入 app/extract/DEBIAN文件夹中。

4.重新打deb包。重新打包,会根据解压出来的控制信息重新打包,并将打包后的deb安装包,放入到app/build文件夹中。

.NetCore(Avalonia) 项目dll混淆,Ubuntu 或者deepin操作系统 deb安装包解压,重新打包的更多相关文章
- Ubuntu下deb包的解压、打包、安装、卸载及常用命令参数
1.首先下载deb包,比如:将其放在 /home/tools/ 根目录下: 2.进入到tools根目录下的终端,输入下面命令创建文件夹extract,并在extract文件夹下创建DEBIAN文件夹 ...
- ubuntu下如何用命令行运行deb安装包
如果ubuntu要安装新软件,已有deb安装包(例如:iptux.deb),但是无法登录到桌面环境.那该怎么安装?答案是:使用dpkg命令. dpkg命令常用格式如下: sudo dpkg -I ip ...
- ubuntu要安装新软件,已有deb安装包
如果ubuntu要安装新软件,已有deb安装包(例如:iptux.deb),但是无法登录到桌面环境.那该怎么安装?答案是:使用dpkg命令.dpkg命令常用格式如下:sudo dpkg -I iptu ...
- Ubuntu下如何用命令运行deb安装包
转载自 WindTaiL的博客 如果ubuntu要安装新软件,已有deb安装包(例如:iptux.deb),但是无法登录到桌面环境.那该怎么安装?答案是:使用dpkg命令. dpkg命令常用格式如下: ...
- 使用secureCRT和Telnet将文件压缩导出到Ubuntu中,到Ubuntu中加压缩发现:tar解压包的时候出现错误gzip: stdin: not in gzip format tar: Child returned status 1 tar: Error is not recoverable: exiting now
细节描述: 问题如题所示:查找博客园和CSDN上查找问题,得到问题解决方法大致如下: 1 修改解压缩命令: 由 tar zxvf software_package.tar.gz变为tar xvf so ...
- java 项目 存入mysql后 变问号 MySql 5.6 (X64) 解压版 1067错误与编码问题的解决方案
[参考]MySQL 5.7.19 忘记密码 重置密码 my.ini示例 服务启动后停止 环境 Java环境JDK1.8 安装好了 mysql-5.6.38-winx64 idea2016(64) ...
- ubuntu 构建 deb 安装包
源码包下载:http://mirrors.163.com/ubuntu/ 编译工具安装: apt-get install dpkg-dev 以openvswitch为例: wget http://mi ...
- ubuntu下dpkg、phantomjs安装包下载地址
dpkg下载地址 http://download.chinaunix.net/download/0003000/2377.shtml phantomjs下载地址 https://bitbucket.o ...
- Ubuntu 18.04安装arm-linux-gcc交叉编译器(超简单,附安装包下载地址)
目前网上搜索发现,最多人安装的是4.4.3版本的: arm-linux-gcc-4.4.3.tar.gz下载地址:https://pan.baidu.com/s/1rAIBASIRZAXl-P1UOW ...
随机推荐
- Python网络数据采集PDF高清完整版免费下载|百度云盘
百度云盘:Python网络数据采集PDF高清完整版免费下载 提取码:1vc5 内容简介 本书采用简洁强大的Python语言,介绍了网络数据采集,并为采集新式网络中的各种数据类型提供了全面的指导.第 ...
- Tomcat内部结构、工作原理、工作模式和运行模式
TOMCAT的内部结构 Tomcat是一个基于组件的服务器,它的构成组件都是可配置的,其中最外层的是Catalina servlet容器,其他组件按照一定的格式要求配置在这个顶层容器中.Tomcat的 ...
- Redis之NoSql入门和概述(二)
2. 什么是NoSQL? 2.1 NoSQL 概述 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库.随着互联网web2.0网站的兴起, ...
- 解决移动端rem加载瞬间页面错乱的方法(放大或者缩小)
移动端布局有很多种,这里我们最常使用到rem+百分比的布局方式(高度/字体设置rem单位,宽度设置百分比)来处理屏幕兼容,这种方法在兼容上是比较不错的,可以使得字体以及整体适应各种大小的屏幕,可以解决 ...
- pycharm 退出虚拟环境
pycharm 内置虚拟环境 venv 如果要退出就直接 deactivate 命令就行 运行的话直接在命令行输python3 文件名
- Caused by: java.sql.SQLSyntaxErrorException: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'c.id'
打开mysql客户端,输入 select @@global.sql_mode 再执行 set @@global.sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DA ...
- 用xshell连接linux服务器失败 Could not connect to '112.74.73.194' (port 22): Connection failed.
用XSHELL连接linux服务器出现以下错误 Connecting to 42.51.xxx.xxx:22... Connection established. To escape to local ...
- pandas_处理异常值缺失值重复值数据差分
# 处理异常值缺失值重复值数据差分 import pandas as pd import numpy as np import copy # 设置列对齐 pd.set_option("dis ...
- 使用opencv为没有透明通道的图像加入透明通道
在图像处理中,我们经常需要处理带透明通道的图片,比如为图片或视频添加水印,为图片或视频添加字幕.贴图等.然而,我们的素材图片未必总是带有透明通道.比如,素材的背景本该透明的地方,却是黑色和白色.有时, ...
- Python List count()方法
描述 count() 方法用于统计某个元素在列表中出现的次数.高佣联盟 www.cgewang.com 语法 count()方法语法: list.count(obj) 参数 obj -- 列表中统计的 ...