社区
C++ 语言
帖子详情
怎么知道软件里使用了开源的代码??
chary8088
2011-11-10 10:23:27
for example:
某个软件使用了开源的库,如果他使用的静态库,你怎么知道他使用了某个开源的库?
比如绿坝,如果它使用静态库,你怎么查出来呢???
Apache,BSD,GPL,LGPL,MIT,协议还怎么实现,你没法他的软件使用了开源的代码,怎么还要求他开源??
...全文
809
14
打赏
收藏
怎么知道软件里使用了开源的代码??
for example: 某个软件使用了开源的库,如果他使用的静态库,你怎么知道他使用了某个开源的库? 比如绿坝,如果它使用静态库,你怎么查出来呢??? Apache,BSD,GPL,LGPL,MIT,协议还怎么实现,你没法他的软件使用了开源的代码,怎么还要求他开源??
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chary8088
2011-11-10
打赏
举报
回复
[Quote=引用 9 楼 keiy 的回复:]
用peid或ollgdb可以搜索EXE中字串,看看是否含开源码的关键字
[/Quote]
面对浩如烟海的软件,这样应该不行的
柯本
2011-11-10
打赏
举报
回复
用peid或ollgdb可以搜索EXE中字串,看看是否含开源码的关键字
chary8088
2011-11-10
打赏
举报
回复
[Quote=引用 5 楼 akirya 的回复:]
引用楼主 chary8088 的回复:
for example:
某个软件使用了开源的库,如果他使用的静态库,你怎么知道他使用了某个开源的库?
比如绿坝,如果它使用静态库,你怎么查出来呢???
Apache,BSD,GPL,LGPL,MIT,协议还怎么实现,你没法他的软件使用了开源的代码,怎么还要求他开源??
一般来说,同样的代码,编译出来的二进制是一样的。
用二进制工具比对一下……
[/Quote]
能从二进制中搜索出加密算法?这个还没用过
看到过一些修改二进制程序中作者名之类的
wxwlll
2011-11-10
打赏
举报
回复
看注释!
chary8088
2011-11-10
打赏
举报
回复
[Quote=引用 4 楼 waistcoat06 的回复:]
开源代码里一般都有版本描述的串,类似下面的东西
static char[] = "GUN xxx version 1.1 etc"
这种东西最终会编译,进入lib中
如果某个软件没有修改过开源代码,而直接引入lib,在最终的二进制文件EXE DLL中一般会有这种字符串存在
去www.sysinternals.com中下载个提串工具strings.exe跑一下这种二进制文件
[/Quote]
哦 原来是这样,
听另一位同事说导出符号表,我认为不对,导出的都是汇编,都一样。。。
珍惜生命远离CPP
2011-11-10
打赏
举报
回复
[Quote=引用楼主 chary8088 的回复:]
for example:
某个软件使用了开源的库,如果他使用的静态库,你怎么知道他使用了某个开源的库?
比如绿坝,如果它使用静态库,你怎么查出来呢???
Apache,BSD,GPL,LGPL,MIT,协议还怎么实现,你没法他的软件使用了开源的代码,怎么还要求他开源??
[/Quote]
一般来说,同样的代码,编译出来的二进制是一样的。
用二进制工具比对一下基本上就可以确定。
估计lz是没见过某些破解专用工具,搜索可执行文件,能够找出代码中使用了那些加密算法。
WaistCoat06
2011-11-10
打赏
举报
回复
开源代码里一般都有版本描述的串,类似下面的东西
static char[] = "GUN xxx version 1.1 etc"
这种东西最终会编译,进入lib中
如果某个软件没有修改过开源代码,而直接引入lib,在最终的二进制文件EXE DLL中一般会有这种字符串存在
去www.sysinternals.com中下载个提串工具strings.exe跑一下这种二进制文件
chary8088
2011-11-10
打赏
举报
回复
[Quote=引用 2 楼 luciferisnotsatan 的回复:]
至于驴霸,传说是直接把一些信息传到别人服务器上了(抄的代码里,有上报数据相关的内容,比如,更新。改都没改,直接发到对方服务器上了)
[/Quote]
这也太懒了吧,稍微修改下就OK了
luciferisnotsatan
2011-11-10
打赏
举报
回复
至于驴霸,传说是直接把一些信息传到别人服务器上了(抄的代码里,有上报数据相关的内容,比如,更新。改都没改,直接发到对方服务器上了)
luciferisnotsatan
2011-11-10
打赏
举报
回复
个人觉得,查编译后的汇编码,看看是不是整段整段一样的。
chary8088
2011-11-10
打赏
举报
回复
[Quote=引用 13 楼 luciferisnotsatan 的回复:]
传送门
http://bbs.chinaunix.net/thread-3617163-1-1.html
难道lz主要想问Apache,BSD,GPL,LGPL,MIT这几个里哪个商用有限制??
[/Quote]
不是,我是想知道开源组织怎么知道你使用了他们的library或一些中间件,底层网络库
luciferisnotsatan
2011-11-10
打赏
举报
回复
传送门
http://bbs.chinaunix.net/thread-3617163-1-1.html
难道lz主要想问Apache,BSD,GPL,LGPL,MIT这几个里哪个商用有限制??
luciferisnotsatan
2011-11-10
打赏
举报
回复
[Quote=引用 11 楼 chary8088 的回复:]
同时同样的帖子chinaunix论坛,
CSDN看来学生和新手站了多数。。。。。。。
[/Quote]
????
我怎么觉得这边的回答比那边c++版的靠谱点
chary8088
2011-11-10
打赏
举报
回复
同时同样的帖子chinaunix论坛,
CSDN看来学生和新手站了多数。。。。。。。
串口调试助手V2.2源
代码
龚建伟编写的
软件
串口调试助手V2.2的
开源
源
代码
svn客户端64位下载 中文
svn(subversion)是近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数
开源
软件
都
使用
svn作为
代码
版本管理
软件
。
一款比Hadoop快10倍的物联网大数据平台,为什么我把它
开源
了?
一款比Hadoop快10倍的物联网大数据平台;一款连续5天在GitHub霸榜的物联网大数据平台,一个不依赖任何
开源
软件
、从底层开始完全自主研发的物联网大数据平台。50岁依旧奋战在一线的老程序员为你讲述关于这个平台的故事。
什么是
开源
软件
?
什么是
开源
软件
?
开源
软件
就是把
软件
程序与源
代码
文件一起打包提供给用户。...用户具有
使用
自由、修改自由、重新发布自由,因此
开源
软件
都有着很高的人气,大家聚集在
开源
社区,共同推动
开源
软件
的进步。 ...
开源
软件
协议,小白应该怎么
使用
开源
代码
、
软件
?
1、来自网络的一张图:...如何一句话简明介绍各种
软件
开源
协议? 如何选择
开源
许可证?
开源
协议 记录 五分钟看懂
开源
协议 【
开源
协议】BSD、Apache2、GPL、LGPL、MIT 了解常见的
开源
协议(BSD, GPL, LGPL,MIT) ...
C++ 语言
64,648
社区成员
250,503
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章