常见网络抓包方法概述

本文主要介绍几种常见网络抓取/分析工具tcpdump, wireshark, fiddler, burp suite的使用。

Read More

jquery tmpl模板渲染

在分析腾讯公益时发现的一个挺有意思的tmpl函数,它可能是腾讯定制的,用于将数据绑定到HTML。

腾讯的tmpl

如下是一个简单的示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html>
<head>
<title>jquery template demo</title>
<script type="text/javascript" src="http://gongyi.qq.com/js/static/lib/jquery-1.8.3.min.js"></script>
</head>
<body>
<div id="tmpl-container" />

</body>
<script type="text/html" id="tmpl">
<ul>
<% for(var i =0; i<10; i++) { %>
<li> <b> <%=name%> </b></li>
<% } %>
</ul>
</script>

<script type="text/javascript">
$("#tmpl-container").tmpl('tmpl',{name: "Lucy"});
</script>
</html>

Read More

深入理解scala的类成员定义

分析scala类成员的定义与底层实现。

对于代码

1
2
3
4
5
6
7
8
9
abstract class Test{
val a: String = "a"
val i1 = { val base = 0; base + 1 }
var b: String = "b"
var i2 = { val base = 0; base +2 }
def c: String = "c"
def i3 = { val base = 0; base +3 }
def d: String
}

Read More

scala类的构造函数参数

本文主要讨论了类参数与类属性

class C0(par: String)

par是类参数,它与方法的参数类似,只在类内部可见, 编译输出为

1
2
3
4
5
6
7
public class C0
{

public C0(String par)
{
}
}

Read More

通过命令行控制android

通过命令行启动应用,发送点击、划屏以及控制传感器。
需要手机开启usb调试,并安装adb工具。通过adb [-d|-e|-s <serialNumber>] shell命令进入手机的shell

Read More

scala中的apply

本文主要讲解scala中特殊方法apply。

1
case class SomeBean(name: String, age: Int)

Read More

web页面中异步数据的加载分析

早期的页面数据是与html绑定在一起的,只需对源页面进行简单的解析就可以取得目标数据。但随着ajax的流行,SOA、静/动分离(即为了提高站点响应速度或效率,静态资源与动态资源相互分离)等思想的兴起,以及对数据保护意识的提高,数据普遍采用了异步方式进行加载。本文主要针对异步数据的加载进行分析。

Read More

scala中的while循环陷阱

while((line = readLine()) != “d”) println(“line=” + line)的死循环问题

问题描述

在java中我们通过使用类似如下代码从控制台中读取用户输入,但在scala中输入”d”后并不会退出循环,即while中的条件判断失效了

1
2
while((line = readLine()) != "d") 
println("line=" + line)

Read More

无线网络破解

使用aircrack-ng与reaver实现无线网络密码的破解。

通过抓取wpa握手包进行破解

这种方法的原理是抓取合法用户与路由器成功认证的数据包,多然后通过字典进行暴力破解。

Read More

使用Hash容器要注意

同事遇到的HashMap取值为null的问题。

问题

公司要弄个股票行情系统,任务指派给一队phper,然后公司花钱从外面买了一套java开发的系统交给他们做二次开发,他们大部分都没接触过java,于是我悲催地成为了他们的顾问。

1
2
3
Map<byte[], Object> map = new HashMap();
map.put("hello".getBytes(), "world");
System.out.println(map.get("hello".getBytes()));

Read More

Fork me on GitHub