pycharm 老是弹出,影响工作效率
Can't start Git: git.exe
Probably the path to Git executable is not valid. Fix it.
解决它的办法就是,点fix it,然后指定git.exe路径,然后test一下
返回正常的话,就不会再烦你了
2017年1月2日星期一
2016年12月30日星期五
打印出对象or模块所有的属性跟方法
当你需要查看模块有哪些方法可以完成你的任务的时候,就可以用这个办法。
我的使用场景是,__main__模块去调用其他模块,其他模块需要调用__mian__模块的变量时,用这个的办法:sys.modules['__main__'].threads[1]
module_ 可以是一个对象,或者一个模块
在print_all 里面传入改参数,就可以获取到所有的属性跟方法
我的使用场景是,__main__模块去调用其他模块,其他模块需要调用__mian__模块的变量时,用这个的办法:sys.modules['__main__'].threads[1]
def print_all(module_):
modulelist = dir(module_)
length = len(modulelist)
for i in range(0,length,1):
print modulelist[i]+' : '+ str(getattr(module_,modulelist[i]))
module_ 可以是一个对象,或者一个模块
在print_all 里面传入改参数,就可以获取到所有的属性跟方法
2016年12月28日星期三
企业访问控制实施的最佳实践
分析web客户端访问服务端,正常的流量所需要走的地方。
比如10.1.1.1 是一台web服务器
正常需要打开 所有地址到10.1.1.1的访问
但是这远远不够
如果web服务器里面的前端页面包含了去到其他内网主机的链接,这就会对业务的正常工作造成故障。
所以弄清楚这个业务数据流的办法就是,用爬虫去完成所有页面的url链接地址,分析完成并且放行这些地址。
基于交换机接口的访问控制
要考虑多种情况的流量,而且很影响正常的办公,策略经常调整
vs
基于vlan接口的访问控制
只需要考虑来自该vlan的流量,不会有其他情况出现
需要统计公共服务器,以及用ntopng去分析去往服务器的流量
NAT导致的还是其他原因?
有一个很奇葩的情况就是,服务器到防火墙有直接的TCP连接,我之前就吃过很多亏,
在对服务器网络进行访问控制的时候,必须要放行 服务器 到 防火墙的访问权限,web服务器的工作才正常。目前尚不清楚原因。
2017年2月24日,我似乎找到了,二次NAT是导致服务器到防火墙的tcp连接的主要原因,但是这未经证实,接下来要研究的是二次NAT的原理以及导致的特别现象
二次nat原理我找了半天,没有找到思科文档对它的详细解释,最后通过了RFC 2663找到了
二次nat原理的详细介绍(这里有一篇简单的翻译):
两次NAT是NAT的一个变种,它同时修改源和目的地址。这与前面的传统NAT和双向NAT(BiDirectional)都不同,前面的两种NAT只翻译源或者目的地址(端口)。
不得不说,有些时候原理的东西去看看RFC更适合,而不是思科文档。
2017年3月6日
找到二次NAT的应用场景
原因: 当需要去回流的时候需启用回流允许命令
same-security-traffic permit intra-interface
内网主机去访问防火墙外网接口地址的时候需要使用二次NAT
ASA防火墙tcp连接标志
ASA防火墙可以通过下面命令去看到自己跟其他人的连接
show conn protocol tcp all | in 172.16.1.253
比如10.1.1.1 是一台web服务器
正常需要打开 所有地址到10.1.1.1的访问
但是这远远不够
如果web服务器里面的前端页面包含了去到其他内网主机的链接,这就会对业务的正常工作造成故障。
所以弄清楚这个业务数据流的办法就是,用爬虫去完成所有页面的url链接地址,分析完成并且放行这些地址。
基于交换机接口的访问控制
要考虑多种情况的流量,而且很影响正常的办公,策略经常调整
vs
基于vlan接口的访问控制
只需要考虑来自该vlan的流量,不会有其他情况出现
需要统计公共服务器,以及用ntopng去分析去往服务器的流量
NAT导致的还是其他原因?
有一个很奇葩的情况就是,服务器到防火墙有直接的TCP连接,我之前就吃过很多亏,
在对服务器网络进行访问控制的时候,必须要放行 服务器 到 防火墙的访问权限,web服务器的工作才正常。目前尚不清楚原因。
2017年2月24日,我似乎找到了,二次NAT是导致服务器到防火墙的tcp连接的主要原因,但是这未经证实,接下来要研究的是二次NAT的原理以及导致的特别现象
二次nat原理我找了半天,没有找到思科文档对它的详细解释,最后通过了RFC 2663找到了
二次nat原理的详细介绍(这里有一篇简单的翻译):
两次NAT是NAT的一个变种,它同时修改源和目的地址。这与前面的传统NAT和双向NAT(BiDirectional)都不同,前面的两种NAT只翻译源或者目的地址(端口)。
不得不说,有些时候原理的东西去看看RFC更适合,而不是思科文档。
2017年3月6日
找到二次NAT的应用场景
原因: 当需要去回流的时候需启用回流允许命令
same-security-traffic permit intra-interface
内网主机去访问防火墙外网接口地址的时候需要使用二次NAT
ASA防火墙tcp连接标志
ASA防火墙可以通过下面命令去看到自己跟其他人的连接
show conn protocol tcp all | in 172.16.1.253
异或加密以及python的实现
python2java模块,用来转换代码
java : Passwd.getBytes()
python : bytearray(passwd)
java
String secret = "secret";
byte[] thebytes = secret.getBytes();
python3
secret = "secret"
secret.encode()
python27
s = 'secret'
b = bytearray(s)
for i in b:
print i
这次的安卓代码审计,主要依靠工具JD-GUI,并且使用搜索功能,只要把想要知道的变量名
一个个的搜索,总会找到相要的代码,不要不耐烦.
这次遇到很多不熟悉的函数
map()
数据的进制转换
int() 可以将 二进制,八进制,十六进制转换成十进制整型
>>> int('1111', 2)
15
>>> int('f', 16)
15
>>> int('17', 8)
15
chr() 将整型数字转换为字符
ord() 将字符转换为整型
hex() 将十进制转换为十六进制
oct() 将十进制转换为八进制
bin() 将十进制转换为二进制
ASCII码 与 字符 相互转换
ord() 字符 转 数字
chr() 数字 转 字符
base64 编码与解码
import base64
text = 'test'
cipher = base64.b64encode(text)
re_text = base64.b64decode(cipher)
print cipher
print re_text
参考链接:
1. 异或加密原理
2. ASCII码对照表
3. Python: convert string to byte array
java : Passwd.getBytes()
python : bytearray(passwd)
java
String secret = "secret";
byte[] thebytes = secret.getBytes();
python3
secret = "secret"
secret.encode()
python27
s = 'secret'
b = bytearray(s)
for i in b:
print i
这次的安卓代码审计,主要依靠工具JD-GUI,并且使用搜索功能,只要把想要知道的变量名
一个个的搜索,总会找到相要的代码,不要不耐烦.
这次遇到很多不熟悉的函数
map()
数据的进制转换
int() 可以将 二进制,八进制,十六进制转换成十进制整型
>>> int('1111', 2)
15
>>> int('f', 16)
15
>>> int('17', 8)
15
chr() 将整型数字转换为字符
ord() 将字符转换为整型
hex() 将十进制转换为十六进制
oct() 将十进制转换为八进制
bin() 将十进制转换为二进制
ASCII码 与 字符 相互转换
ord() 字符 转 数字
chr() 数字 转 字符
base64 编码与解码
import base64
text = 'test'
cipher = base64.b64encode(text)
re_text = base64.b64decode(cipher)
print cipher
print re_text
下面是python2.7代码的实现
import base64
# 密码转成字节码
password = "123456"
passwd = bytearray(password)
def trans_code(trans_type, para_dict):
if trans_type == 'en':
# 编码
for (x,y) in para_dict.items():
# 参数转成字节码
bytecode = bytearray(y)
j = 0
cryptoValue = ''
ascii_words = ''
for i in range( len(bytecode) ):
# 将 参数字节码 与 密码字节码 做异或操作,异或是对称加解密算法
cryptoValue = bin( bytecode[i] ^ passwd[j] )
# 密码长度有限,需要循环使用
j += 1
if j > len(passwd):
j = 0
# 二进制 转 十进制
decimal = int(cryptoValue, 2)
# 十进制 转 ASCII字符
ascii_words += chr( decimal )
# base64 编码 ASCII字符
cipher = base64.b64encode(ascii_words)
print x + ' : ' + y + ' : ' + cipher
print '='*10 + 'encode finish' + '='*10
参考链接:
1. 异或加密原理
2. ASCII码对照表
3. Python: convert string to byte array
2016年12月27日星期二
php版本升级
这个方法来自v2ex,链接在此
yum 快速升级降级 php 版本 5.4 5.5 5.6 7
这个方法好就好在,你不需要升级centos,或者是更新centos的repo源,直接使用yum下面的一个php包的专用模块,然后只需要在指定的版本源上把enable打开即可。
模块的安装方法:
下面有几个repo
最后一条命令搞定升级
yum install php php-cli php-common php-devel php-fpm php-gd php-imap php-ldap php-mbstring php-mcrypt php-mssql php-mysqlnd php-odbc php-pdo php-pear php-pecl-jsonc php-pecl-jsonc-devel php-pecl-zip php-process php-snmp php-soap php-tidy php-xml php-xmlrpc php-opcache
yum 快速升级降级 php 版本 5.4 5.5 5.6 7
这个方法好就好在,你不需要升级centos,或者是更新centos的repo源,直接使用yum下面的一个php包的专用模块,然后只需要在指定的版本源上把enable打开即可。
模块的安装方法:
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
下面有几个repo
[root@jamka yum.repos.d]# vim remi remi-php70.repo remi-php71.repo remi.repo remi-safe.repo编辑文件 vim remi.repo,把想要升级或者降级的版本enabled打开即可
[remi-php55] name=Remi's PHP 5.5 RPM repository for Enterprise Linux 6 - $basearch #baseurl=http://rpms.remirepo.net/enterprise/6/php55/$basearch/ mirrorlist=http://rpms.remirepo.net/enterprise/6/php55/mirror # NOTICE: common dependencies are in "remi-safe" enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
最后一条命令搞定升级
yum install php php-cli php-common php-devel php-fpm php-gd php-imap php-ldap php-mbstring php-mcrypt php-mssql php-mysqlnd php-odbc php-pdo php-pear php-pecl-jsonc php-pecl-jsonc-devel php-pecl-zip php-process php-snmp php-soap php-tidy php-xml php-xmlrpc php-opcache
2016年12月24日星期六
代码审计常用命令
代码审计的方法
1. 过滤文本的方式,grep递归查找代码,或者IDE全项目搜索文本
2. 根据程序运行的思路,逐步查找
常用思路:
a. 程序通常的入口叫main
b. 入口通常有加载配置文件的函数
c. 查看变量或者函数的调用地方
3. 注意快捷键的使用
phpstorm 高效审计快捷键:
Ctrl + G 行号跳转
Ctrl + Alt + <-/-> 光标跳转的返回/前进(重要功能!!!)
Ctrl + 点击 查找函数/类/变量,定义或者使用
Ctrl + Shift + F 全局搜索字符串
Ctrl + Shift + N 全局搜索文件名
pycharm 高效审计快捷键:
Ctrl + G 行号跳转
Ctrl + Alt + <-/-> 光标跳转的返回/前进(重要功能!!!)
Ctrl + 点击 查找函数/类/变量,定义或者使用
Ctrl + Shift + R 全局搜索字符串
递归当前目录文件内容,查找wish to display
代码审计工具:
RIPS 开源版本0.55的,已经不更新,商业版的要收费也没有破解版
Fortify SCA 完全商业的工具,没有破解版
seay 比较不错的审计工具,免费开源
cobra 美联集团开发的一款代码审计工具
参考链接:
1. 逐浪CMS(ZOOMLA CMS)漏洞挖掘
2. 信息系统源代码安全审查过程
3. 代码审计安全服务流程
4. 代码审计思路之实例解说全文通读
1. 过滤文本的方式,grep递归查找代码,或者IDE全项目搜索文本
2. 根据程序运行的思路,逐步查找
常用思路:
a. 程序通常的入口叫main
b. 入口通常有加载配置文件的函数
c. 查看变量或者函数的调用地方
3. 注意快捷键的使用
phpstorm 高效审计快捷键:
Ctrl + G 行号跳转
Ctrl + Alt + <-/-> 光标跳转的返回/前进(重要功能!!!)
Ctrl + 点击 查找函数/类/变量,定义或者使用
Ctrl + Shift + F 全局搜索字符串
Ctrl + Shift + N 全局搜索文件名
pycharm 高效审计快捷键:
Ctrl + G 行号跳转
Ctrl + Alt + <-/-> 光标跳转的返回/前进(重要功能!!!)
Ctrl + 点击 查找函数/类/变量,定义或者使用
Ctrl + Shift + R 全局搜索字符串
递归当前目录文件内容,查找wish to display
[root@jamka dvwa]# grep -r -n 'wish to display' . ./vulnerabilities/fi/source/impossible.php:3:// The page we wish to display ./vulnerabilities/fi/source/medium.php:3:// The page we wish to display ./vulnerabilities/fi/source/low.php:3:// The page we wish to display ./vulnerabilities/fi/source/high.php:3:// The page we wish to display
代码审计工具:
RIPS 开源版本0.55的,已经不更新,商业版的要收费也没有破解版
Fortify SCA 完全商业的工具,没有破解版
seay 比较不错的审计工具,免费开源
cobra 美联集团开发的一款代码审计工具
参考链接:
1. 逐浪CMS(ZOOMLA CMS)漏洞挖掘
2. 信息系统源代码安全审查过程
3. 代码审计安全服务流程
4. 代码审计思路之实例解说全文通读
2016年12月9日星期五
vmware pro 12 安装 kali_2016_2 版本 与宿主机的互拷文件的办法
解决问题的链接在这里
首先 2016.2 版本没有设置网络源的,去 /etc/apt/source.list
写入deb http://http.kali.org/kali kali-rolling main non-free contrib
退出保存后,apt-get update
apt-get install open-vm-tools-desktop fuse
重启下就ok了
不需要安装vmtools了
vmware 12 pro版本
如果下载kali的vm虚拟机版本,里面全部自带,不需要安装了,建议下载这种版本。
首先 2016.2 版本没有设置网络源的,去 /etc/apt/source.list
写入deb http://http.kali.org/kali kali-rolling main non-free contrib
退出保存后,apt-get update
apt-get install open-vm-tools-desktop fuse
重启下就ok了
不需要安装vmtools了
vmware 12 pro版本
如果下载kali的vm虚拟机版本,里面全部自带,不需要安装了,建议下载这种版本。
订阅:
博文 (Atom)


