【知乎】 如果我違反了開源協(xié)議,不公開源代碼,那別人怎么樣知道我違反了協(xié)議呢?
?如果我違反了開源協(xié)議,不公開源代碼,那別人怎么樣知道我違反了協(xié)議呢?

琴梨梨OvO
硬件焦慮是一種特殊的精神內(nèi)耗
如果不加殼的話,代碼里的字符串是會(huì)保持原樣出現(xiàn)在二進(jìn)制文件里的,而一般很少有人對(duì)第三方開源庫(kù)加殼
所以通過加入一些特定的字符串,并且保證這些字符串不會(huì)被編譯器優(yōu)化掉,就可以通過在二進(jìn)制文件里查找特定字符串來(lái)判斷是否使用特定的開源庫(kù)
舉個(gè)例子,某開源庫(kù)里我寫了一行
const aboutInfo="本項(xiàng)目由琴梨梨開發(fā),關(guān)注琴梨梨謝謝喵";(text=>{return false;})(aboutInfo);
注意后面一段匿名函數(shù),這是純粹避免字符串被優(yōu)化掉的
然后如果有個(gè)項(xiàng)目引用了這個(gè)開源庫(kù),沒有刪除這一行,也沒有加殼
通過對(duì)二進(jìn)制文件直接字符串搜索琴梨梨,我發(fā)現(xiàn)了一模一樣的字符串
那么很顯然,就可以確定這個(gè)項(xiàng)目使用了我的開源庫(kù)
因?yàn)闆]人會(huì)在不使用我的庫(kù)的情況下在代碼里寫關(guān)注琴梨梨謝謝喵,除了我自己,當(dāng)然根據(jù)猴子打字機(jī)理論也不完全排除這種可能
當(dāng)然,這種辦法沒法避免批量替換,如果有人批量把琴梨梨替換成張三
發(fā)布于 2023-10-02 16:46

發(fā)布一條帶圖評(píng)論吧
19 條評(píng)論
默認(rèn)
最新
殷微粒
此應(yīng)用專為舊版鴻蒙打造
10-02?·?IP 屬地湖北
不愛笑了

10-03?·?IP 屬地江蘇
小肥羊

灌注琴梨梨謝謝喵
10-02?·?IP 屬地山西
Yehowah
狠狠灌注

10-04?·?IP 屬地浙江
不愛笑了
狠狠灌注

10-03?·?IP 屬地江蘇
qin meng
這種簡(jiǎn)直不要太容易被搞定,反手一個(gè)VMprotect我甚至不關(guān)心你加了什么東西在里面。你能搜到同時(shí)你就已經(jīng)違反軟件協(xié)議了,你要么掛debuger入侵我進(jìn)程,這算是exploit,你違法。要么你能靜態(tài)脫VMprotect,咱都不說(shuō)你能不能做到,就算你能做到,由于附屬加密段屬于軟件協(xié)議保護(hù)范圍內(nèi),你這個(gè)屬于還原行為,恰好我在里面不小心放了點(diǎn)源碼,對(duì)不起你反編譯了,你又違法了。
10-04?·?IP 屬地美國(guó)
qin meng
琴梨梨OvO
我用不著證明,舉證是原告方責(zé)任,你沒發(fā)出示你的合法證據(jù)來(lái)源那就沒用。
10-04?·?IP 屬地美國(guó)
琴梨梨OvO
作者

qin meng
我先用動(dòng)態(tài)分析確認(rèn),然后想辦法基于動(dòng)態(tài)分析的成果找到靜態(tài)分析的舉證方法,而靜態(tài)分析是合法的,你卻不能證明我在靜態(tài)分析之前用了動(dòng)態(tài)分析
10-05?·?IP 屬地澳大利亞
C0ss4ck

BSCA(二進(jìn)制軟件成分分析)也能用來(lái)解決這個(gè)問題,騰訊有個(gè)免費(fèi)產(chǎn)品叫BinaryAI
10-03?·?IP 屬地江蘇
YFdyh
當(dāng)用戶協(xié)議說(shuō)禁止反編譯本產(chǎn)品,是否能合法取證

10-02?·?IP 屬地北京
琴梨梨OvO
作者

反編譯必須要有一個(gè)還原的動(dòng)作,只是字符串查找不屬于反編譯
10-02?·?IP 屬地澳大利亞
琴梨梨OvO
作者

YFdyh
脫殼不屬于反編譯,脫殼后的程序仍然可以運(yùn)行,反編譯是還原成代碼的步驟,反編譯后的產(chǎn)物必須重新經(jīng)過編譯才可以運(yùn)行
10-03?·?IP 屬地澳大利亞
Splendar
懂了,下次就在自己代碼里面加上
10-02?·?IP 屬地河南