[VY开源中国] VY-netcat开发日志

少于 1 分钟阅读时长

发布时间:

很荣幸能迎来VY-netcat脱胎换骨的一天, 实在是有很多话想聊一聊, 在此请容许我唠叨几句, 聊聊这段时间的经历与感受.

VY-netcat的诞生

VY开源中国希望转型做一些更基本的东西, 还有sakana联队在强推vlang, 但这些只是部分诱因. 以前在ctf中常常能感受到gnu-netcat和openbsd-netcat的一些处理问题, 恰好那段时间在编写vlang的教学文档, 于是机缘巧合之下有了VY-netcat仓库.

VY-netcat最初与vlang教学文档的案例基本一致, 只是包装得像其他nc工具, 但是竟然真的有人使用了, 并进行反馈, 有一段时间突然感觉自己的开发是有意义的, 真的很开心, 那段时间赶上了vtf立项, 在思考题目环境的时候考虑到可以将VY-netcat集成进去, 这个项目的意义就开始重要了起来.

在持续两个月面向ctf环境的功能开发中, VY-netcat终于走到了今天.

开发经历

使用vlang的开发过程很艰苦, 虽然官方文档详细, 还有各种案例, 不过这次的开发需求还是有点太偏门, 也缺少各种参考资料, 最终只能不断地踩坑, 艰难地推进开发.

这段时间我啃了很多源码, 也有了很多感悟, 比较直观的是这一篇文章: gnu-netcat执行部分原理分析(1), 因为找不到-e参数的实现方法, 我去慢慢学习了gnu-netcat的源码, 初次之外又重新学习重定向, socket, 数据流这些基础知识, 甚至给vlang官方发送了e-mail.

因为语言问题, 过程中我们在尝试宣传, 培养其他人参与贡献, 不过这个过程并不理想, 独特的场景环境和独特的开发工具让很多人选择了放弃.

好在过程中还有一点好消息, 在basectf的题目解析中我稍微夹带了那么点私货, 虽然对于大家来说对于VY-netcat的印象可能来自几张福利图, 不过开始有人了解这个仓库, 甚至是vlang语言, 感觉还是挺欣慰的, 这次开发并没有拿到任何钱, 只有一个弱小的开发者不断在空闲时间和各种功能进行战斗.

VTF在v1.2.0版本后有了重构意向, 面对即将开始的比赛, 一个能够投入使用的环境变得很有必要, 好在我们放了几天假, 趁着这段时间, 加上以前的积累, 虽然难看, 但VY-netcat的v1.0.0版本还是基本完成了.

更多的是, 有了这段时间的开发经历, 我对于VY-netcat有了更多的认识, 我们在重新考虑VY-netcat的未来发展, 并针对性实现了一些新的功能, 现在的VY-netcat不在是其他nc工具的替代品, 而是真正存在自己优势与应用场景的一个工具, 这是一件很令人骄傲的事情.

个人感受

痛苦, 可以说这是最能形容这段时间的开发过程的词汇了.

这段时间本身已经堆了很多事, 算上出题、写报告、宣传、竞赛、学习、备考…..各种事情, 每天除了睡几个小时, 一睁眼就需要拼命地忙; 可能对于身边的一些师傅来说很能感同身受, 自己加倍付出时间, 却往往不能得到一个能匹配自己工作强度的结果, 然后审视自己的生活, 反复陷入迷茫.

有一段时间实在很累, 即使还拖着一堆死线, 下班后也选择直接倒下睡觉, 然后一睁眼又拖着疲惫的身体继续上班. 不知道大家是否有过这种感受, 感觉自己的生活糟糕透了, 不停地拼命却无法缓解自己面前的痛苦, 反而各种事情会变本加厉地挤压自己的生存空间, 要是有一天突然猝死就好了, 不时会这么幻想.

好在目前有了进展, 之后的开发也会更加有针对性, 不过有时我也在想, 这么拼命到底是为了什么呢? 大家其实内心还是挺向往开源的吧, 互联网让人不是孤独的个体, 从开源的世界中, 人们能了解得更多, 能学到更多, 能去更好地建立一个各取所需, 每个人能充分表现自己的共产世界, 不过这段时间看到的很多东西也会让人难受, VY开源中国的落魄转型, linux中国的告别, Godot社区的lgbt事件, 开源在现实生活中还是过于脆弱, 只有让人活下去, 才能想着往前看.

梦是现实的延续, 现实是梦的终结, 该直面生活了.

小结

这不是一切的结束, 后续包括集成VTF, 封包VY-netcat, 完善功能, 检验安全性, 还有很多事情要做.

不过到此为止, 至少现在的痛苦已经不再是我一个人偷偷承受了, 先想想开心的事吧.