一:起因
最近公司代码被扫出有一个xss漏洞,检查之后,发现大致是这样一个页面:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
最近公司代码被扫出有一个xss漏洞,检查之后,发现大致是这样一个页面:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
之前做了个Java项目MockSocks,要做UI,用Swing写实在是又low又费劲,跟前端同事聊起node-webkit,觉得很不错。但是我大部分业务都在Java上,于是就涉及到Java与js通信问题。
当然最常用的解决方案就是用Java写一个Web后端。但是这样解决太重,大部分时间都要花费在web的配置上,最终还要使用一个容器去启动它,程序流程也无法由我来控制了。
其实挺喜欢JMX的控制方式,只是用其他语言连接它成本有点高。于是就想仿照JMX的方式写一个Web Server,同时可嵌入到应用中。直接使用Jetty又太原生态了,URL路由/参数映射和转换总是要做的,于是参考了express的语法,就有了一个非常小的Web框架express.java。
一直以来都有个想法,想要将爬虫做到可配置化,同时可复用这些配置。然后将这些配置做成可复用,可分享,可搜索的,这样就不会经常有一堆人重复劳动了!
双11的时候启动这个项目,希望解放苦逼的程序员,以后多点时间去谈恋爱,陪家人!
我们常说,这个世界太浮躁。实际上也是如此,今年小孩出生,同时又买了房子,生活上的压力顿时压下来,差点趴下了。但是我是个老实人,急躁又有什么用呢,还不是每天上班下班,下班看书写代码,没有那个业余找钱的能力,于是也就算了,安心搞点好玩的。
之前在并发编程网http://ifeve.com发过两篇关于netty的文章,就混进了编辑群,正好群主有两张Qcon上海的票,我又刚好在上海,就拿了一张票,请了天假,奔赴现场了。
十问:
时隔3个月,MockSocks终于又能继续开发了。这个项目是目前为止做过的最有技术挑战的一个,目标是做成一个后端应用的fiddler,可以监控应用对外的网络流量、分析协议、重定向、并针对每个协议进行修改,同时可以录制和回放。项目也得到了部门总监和其他leader的肯定,可以多花心思弄弄好。
因为项目的核心是一个Socks代理,通过这个代理捕获双方的流量,并进行后续的操作。
一直觉得Mou写markdown,小巧灵活,久而久之也喜欢把一些临时文本放在里面。
结果晚上回来的时候打不开了,内存飙到1.6G,CPU跑到200%多,死活打不开。作为markdown重度患者,简直要崩溃了。
怀疑是打开了非法的文件导致。删了App重新装,问题依旧,不知道是把临时文件存在哪的。用进程管理器找到打开的文件,将疑似缓存的文件都删了(~/Library
下面几个),依然没有用!
后来都要绝望的时候,竟然蹦出来了,原来是之前随便贴了一些数据,估计是有markdown的保留字,导致Mou解析出错了!下次还是不要乱拷数据到Mou里了吧!
前几天在reddit上看到Java8 M8 Developer Preview版本已经发布了,不免想要尝鲜一把。Developer Preview版本已经所有Feature都完成了,Java8的特性可以在这里看到http://openjdk.java.net/projects/jdk8/features,下载地址:http://jdk8.java.net/download.html。
webmagic从第一个正式版本到现在大概有一个月了,这一个月一直在提交代码,Longest Streak已经达到了25天,打破了开发blackhole时15天的记录了。webmagic确实是我最得意的一个项目,结合了领域经验和编码功底,包括注释和编码都是精雕细琢的。