« 用 mod_rewirte 解决 referer 攻击 | Main | mrtg 的加和等计算绘图 v.s. RRD 的加和等计算绘图 »
June 10, 2006
squid 的内容替换
|
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。 http://windtear.net/archives/2006/06/10/001003.html http://windtear.net/archives/2006/06/10/001003.html squid 的内容替换 上个月遇到的问题,问题的提出比较搞笑 不过据说伟大的金盾也会替换两端的数据 确实还是有意思的 原理就是把用户的请求改了给服务器 再把服务器的返回改了给用户 修改 src/client_side.c 发回用户的时候: /* * accepts chunk of a http message in buf, parses prefix, filters headers and * such, writes processed message to the client's socket */ static void clientSendMoreData(void *data, char *buf, ssize_t size) 替换 buf 就行了(buf & mb.buf) strstr 匹配上给出指针位置 然后strncpy覆盖相关内容 然后 comm_write(fd, buf, size, clientWriteBodyComplete, http, NULL); comm_write_mbuf(fd, mb, clientWriteComplete, http); /* * parseHttpRequest() * * Returns * NULL on error or incomplete request * a clientHttpRequest structure on success */ static clientHttpRequest * parseHttpRequest(ConnStateData * conn, method_t * method_p, int *status, char **prefix_p, size_t * req_line_sz_p) 替换 conn->in.buf 完成用户请求的替换 |
Posted by windtear at June 10, 2006 11:31 PM
Trackback Pings
TrackBack URL for this entry:
http://cgi.windtear.net/cgi-bin/wt-tb.cgi/1003
Comments
Post a comment
【我爱网络】
2007-12-31 23:51 2007年度 ipcn.org/ipchina.org 总结报告
2007-12-31 00:31 vmware gsx server service
2007-12-31 00:15 squid 对 404 302 缓存的相关问题
2007-12-30 14:24 升级到 MovableType 3.3x 并修改 entry_basename 兼容性
2007-12-30 13:52 [php] realip judge 前面补0的ip格式剔除
2007-12-14 16:34 rm -rf * 系统管理员要排查的定时炸弹
2007-12-13 19:03 山西的宽带运营商太过分了 私自窜改dns解析
2007-12-13 16:35 F5 MIB 再学习 唯一性标记用地址的小bug
2007-12-11 22:15 perl 用Spreadsheet::WriteExcel写了个处理/读写excel的小程序
2007-12-11 13:39 perl 变量转义的问题