近日,Apache Solr官方发布Apache Solr远程代码执行漏洞(CVE-2019-0193)安全通告,此漏洞存在于可选模块DataImportHandler中,DataImportHandler是用于从数据库或其他源提取数据的常用模块,该模块中所有DIH配置都可以通过外部请求的dataConfig参数来设置,由于DIH配置可以包含脚本,因此该参数存在安全隐患。
Apache Solr是一个开源的搜索服务,使用Java语言开发,主要基于HTTP和Apache Lucene实现的。
Apache Solr 是一个开源的企业级搜索服务器。Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现。Apache Solr 中存储的资源是以 Document 为对象进行存储的。它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
近日,Apache官方发布Apache Solr远程代码执行漏洞(CVE-2019-0193)安全通告,此漏洞存在于可选模块DataImportHandler中,DataImportHandler是用于从数据库或其他源提取数据的常用模块,该模块中所有DIH配置都可以通过外部请求的dataConfig参数来设置,由于DIH配置可以包含脚本,因此该参数存在安全隐患。
将/opt/solr/solr-7.3.1下的dist和contrib目录拷贝到/opt/solr/solrhome目录下.
2019年08月01日,Apache Solr官方发布预警[1],Apache Solr DataImport功能 在开启Debug模式时,可以接收来自请求的"dataConfig"参数,这个参数的功能与data-config.xml一样,不过是在开启Debug模式时方便通过此参数进行调试,并且Debug模式的开启是通过参数传入的。在dataConfig参数中可以包含script恶意脚本导致远程代码执行。
Solr是一个开源搜索平台,用于构建搜索应用程序。它建立在Lucene(全文搜索引擎)之上。Solr是企业级的,快速的和高度可扩展的。使用Solr构建的应用程序非常复杂,可提供高性能 。它提供了层面搜索(就是统计)、命中醒目显示并且支持多种输出格式(包括XML/XSLT 和JSON等格式),并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。Solr7要求JDK为1.8以上。在Solr7版本中新增了跨核(solr 跨核概念,是建立在solr存储方式的基础上,因为使用solr前必须创建Core,Core即为solr的核,那不同的业务有可能在不同的核中,之前版本是不支持跨核搜索的)搜索功能。本文主要介绍如何在CDH6.2.0集群中使用Solr7对多种格式的文件建立全文索引。
常常在业务开发中会遇到大列表的查询需求或者按照各项条件搜索内容,一般的做法往往都是数据库直接搞定,但是到了一定的程度只有这类需求会带来巨大的开销,一个表格中涉及到了5张表的数据,搜索要求从其中3张表的不同字段做到模糊查询,如果还用传统的方式实现起来就很有难度了逻辑和数据库性能就是一个考验,要是如果在A表一个字段是很长的text需要模糊匹配,在B表需要用简拼音搜索,那就难上加难了,solr恰巧就解决了这些问题。
启动后访问 http://127.0.0.1:8983/, 理论上即可进入Solr管理界面。具体内容见Solr Admin UI
安装目录假设为#solr_home,本文的#solr_home为apps/svr/solr
Solr主要是做数据搜索的,那么Solr的数据是从哪里来的呢?总不能一条一条的插入吧。Solr也有这方面的考虑,比如配置Dataimport将mysql数据批量导入Solr中。 环境说明:
并可以在apache-tomcat-7.0.73\webapps\solr\WEB-INF\classes下新建自己的扩展词典
1.将下载下来的solr4.6的dist文件夹下的solr-dataimporthandler-4.6.0.jar和solr-dataimporthandler-extras-4.6.0.jar放入tomcat该路径下:F:\solr\tomcat7.0.27\webapps\solr\WEB-INF\lib
目前百度上面关于solr对MYSQL的集成一般都是4.0左右。但是前solr的版本已经到了6.0,很多配置都和一起不一样了。所以我今天就和大家聊聊solr6.0如何进行MYSQL数据库的配置。(配置的前提是已经搭建好solr服务器了,如果有什么不清楚的可以参考这篇博客:点击打开链接)。
昨天已经在Tomcat容器中成功的部署了solr全文检索引擎系统的服务;今天来分享一下solr服务在海量数据的网站中是如何实现数据的检索。 在solr服务中集成IKAnalyzer中文分词器的步骤:
下载solr 下载地址:http://archive.apache.org/dist/lucene/solr/或去百度云盘链接:链接:http://pan.baidu.com/s/1o8wGwuI 密
语雀链接:https://www.yuque.com/tianxiadamutou/zcfd4v/uyceyo
搞定了一切的一切之后下一步就是正式使用了,但是之前介绍的都是在单台服务器上进行的部署,如果在生产环境出现了单台故障怎么办呢?提供稳定性和性能的最直观的方式就是集群,solr官方提供了cloud的集群方式
将下载后的solr文件解压,然后进入solr-xxx/bin目录,打开命令窗口,输入如下命令,启动solr节点;
2019年08月01日,Apache Solr官方发布预警,Apache Solr DataImport功能 在开启Debug模式时,可以接收来自请求的"dataConfig"参数,这个参数的功能与data-config.xml一样,不过是在开启Debug模式时方便通过此参数进行调试,并且Debug模式的开启是通过参数传入的。在dataConfig参数中可以包含script恶意脚本导致远程代码执行。
Solr是一个高性能,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,和Elasticseach一样是一款非常优秀的全文搜索引擎
Apache Solr 是一个开源的搜索服务器。Solr使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现。此次漏洞出现在Apache Solr的DataImportHandler,该模块是一个可选但常用的模块,用于从数据库和其他源中提取数据。它具有一个功能,其中所有的DIH配置都可以通过外部请求的dataConfig参数来设置。由于DIH配置可以包含脚本,因此攻击者可以通过构造危险的请求,从而造成远程命令执行。
bin目录下 solr start 后台url (opens new window)
schema.xml,在SolrCore的conf目录下,它是Solr数据表配置文件,它定义了加入索引的数据的数据类型的。主要包括FieldTypes、Fields和其他的一些缺省设置。
Apache Solr Velocity 注入远程命令执行漏洞 (CVE-2019-17558) 漏洞描述
首先依然是在solrconfig.xml配置文件中配置dataimport请求处理器,并指定data-config.xml配置文件加载路径:
上一篇试着进行了solr的安装和配置,以及如何solr的检索,今天试着简单的将solr连接MySQL数据库(才尝试了单表、一对多和多对多的还有待研究) 1、MySQL的目录结构 2、新建一个democ
在笔记 2 中,可能在执行导入时会报错,那是因为还需要将 mysql-connector-java-xxx.jar 放入 solr-xxx/server/lib 文件夹下;
搜索是项目中常用的功能,对于大数据量的搜索,查询关系型数据库是非常低效的,好在有三方专门用于搜索的工具,常用的搜索解决方案为:
solr-5.3.0/contrib/dataimporthandler-extras/lib/
在利用Solr的DataImportHandler来导入MySQL的数据前,需要MySQL满足一些条件。
Apache Solr 是Apache开发的一个开源的基于Lucene的全文搜索服务器。其集合的配置方法(config路径)可以增加和修改监听器,通过RunExecutableListener执行任意系统命令。
Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
apache最近爆出的漏洞越来越多,旗下的solr产品存在远程服务器执行恶意代码漏洞,该漏洞产生的主要原因是因为apache dataimporthandler数据外部收集的一个端口模块,该模块支持从远程的地址进行通信,并多数据进行收集,正因为开放了远程地址,可导致攻击者构造恶意的代码对DIH进行脚本注入,从而让后端服务器对恶意代码进行了执行,该漏洞可导致服务器被攻击,被入侵,关于该漏洞的详情我们SINE安全技术深入的带大家来分析:
除了数据库驱动,还需要solr自带的两个jar文件,这两个jar文件主要是用来把数据库数据导入solr服务器的,都在该目录下:
Solrj和图形界面操作的区别就类似于数据库中使用jdbc和mysql客户端的区别一样。
http://www.apache.org/dyn/closer.lua/lucene/solr/6.4.1
在笔记1中,我们已经介绍了Solr下载及单节点启动和配置,以及如何创建core,但是如何进行数据导入却还没有介绍。这篇文章就将教你在创建core之后,应该如何进行相关配置并导入数据;
在笔记 1 中,我们已经介绍了Solr下载及单节点启动和配置,以及如何创建core,但是如何进行数据导入却还没有介绍。这篇文章就将教你在创建core之后,应该如何进行相关配置并导入数据;
在上一篇 文章 中,我们已经介绍了Solr下载及单节点启动和配置,以及如何创建core,但是如何进行数据导入却还没有介绍。这篇文章就将教你在创建core之后,应该如何进行相关配置并导入数据;
root@h102 solr-5.3.0# bin/post -c gettingstarted docs/
DataImportHandler是一个可选但使用广泛的模块,默认不启用,用于从数据库和其他源中提取数据,它有一个特性即整个DIH配置可以来自一个请求的“dataConfig”参数。DIH管理的调试模式使用它来方便地调试DIH配置的开发。因为DIH配置可以包含script脚本,所以这个参数存在安全风险。从Solr的8.2.0版本开始,使用这个参数需要设置 Java System property,设置"enable.dih.dataConfigParam" 为 true.。
上一节我们已经通过两种方式运行了solr,本节演示怎么配置solr的mysql数据源
1 导入需要的驱动文件 2 在solrconfig.xml文件中添加 <requestHandler name="/dataimport" class="org
0x00 开头照例扯淡 自从各种脱裤门事件开始层出不穷,在下就学乖了,各个地方的密码全都改成不一样的,重要帐号的密码定期更换,生怕被人社出祖宗十八代的我,甚至开始用起了假名字,我给自己起一新网名”兴才
lucene引入ByteBuffersDirectoryFactory类,用于替换RAMDirectoryFactory,RAMDirectoryFactory将在solr 9.0版本中移除。
左边部分是针对索引解析器的处理过程,右边部分是针对查询解析器的处理过程,我们来做一下测试,选择底部的字段或者字段类型,这里我们选择content字段,输入“I love you”,然后点击Analyse Values按钮,让我们来看一下索引解析器和查询解析器的处理结果
领取专属 10元无门槛券
手把手带您无忧上云