君莫笑WXH 发表于 2024-4-19 09:09

如何提高软件安全性?

如题~
楼主大学期间一直热衷于论坛灌水,也有些小作品发布~(后面违规被diss了哈哈哈哈~)
关注破解内容很久了,自己也稍微会一丢丢破解的知识以及思路~
目前楼主是c/c++程序员一枚,python/c#/java也是穿插着晚一点儿~
想讨论下,就C/C++而言,要怎么提高自己软件的安全性?
目前自己知道的
1. 反调试器保护
2. 校验保护
3. 私有授权协议
……
但是最近研究了下ida pro,感觉这些手段都有办法跳过绕过~而且不需要太多时间~
有什么好的办法和工具可以增强软件安全性么?

虚幻魔王 发表于 2024-4-19 09:21

函数的共用,以及明文的转码,解码,能够在常规的传递中增加无数繁琐的跳转,以及判定。给获取正常的跳转增加无数的困难程度。

BaobaoBusnie 发表于 2024-4-19 09:57

两方面:
1.C/C++中的内存管理是引发安全漏洞的关键点之一。要合理使用malloc()和free()等函数进行动态内存分配和释放,避免内存泄漏和野指针等问题。此外,使用智能指针和RAII等技术可以帮助自动管理资源,减少内存相关的漏洞。
2.C/C++标准库和第三方安全库提供了许多安全功能和API,如加密、哈希函数、数字证书等。利用这些库和API,可以加强应用程序的安全性。

bester 发表于 2024-4-19 09:54

vm还是主流,无所谓反不反调试,校验这块主要考虑通讯安全,话说楼主对CS架构通讯了解多深?

君莫笑WXH 发表于 2024-4-19 10:06

bester 发表于 2024-4-19 09:54
vm还是主流,无所谓反不反调试,校验这块主要考虑通讯安全,话说楼主对CS架构通讯了解多深?

目前可能无法用到cs架构做鉴权保证~只能依赖宿主机~
有试过就是注册守护服务程序然后做本地cs认证的方式,但是一样~依然有办法~而且难度不大~

君莫笑WXH 发表于 2024-4-19 10:09

虚幻魔王 发表于 2024-4-19 09:21
函数的共用,以及明文的转码,解码,能够在常规的传递中增加无数繁琐的跳转,以及判定。给获取正常的跳转增 ...

有具体做法参考么?
还有比我我使用公共API,比如发现软件不合规运行退出进程,那调用terminalProcess,我直接dll方式劫持cs::terminalProcess或者全局定位函数nop掉就绕过了~这种请教下如何提高安全性~

yes2 发表于 2024-4-19 10:21

君莫笑WXH 发表于 2024-4-19 10:09
有具体做法参考么?
还有比我我使用公共API,比如发现软件不合规运行退出进程,那调用terminalProcess, ...

terminalProcess干啥,放飞eip啊

无知灰灰 发表于 2024-4-19 10:32

买商业加壳的吧。。。靠自己算法保护难。。。

君莫笑WXH 发表于 2024-4-19 11:59

yes2 发表于 2024-4-19 10:21
terminalProcess干啥,放飞eip啊

TerminateProcess,敲错了,结束主进程~

君莫笑WXH 发表于 2024-4-19 12:01

无知灰灰 发表于 2024-4-19 10:32
买商业加壳的吧。。。靠自己算法保护难。。。

我们小组测试了目前一些论坛里面可以用的加壳软件,emmm~都不太可~
页: [1] 2
查看完整版本: 如何提高软件安全性?