News for hackers. Stuff that matters.
Re:Knowledge Graphs by motohagiography on Friday March 06, 2020 @02:03PM (#22506252)
Current consulting project involves strategy for patching 8000 vulnerabilities, across 300 OS images, hosting 500 applications, managed by 50 branches, in 20 divisions, where about 40 people are accountable at a business level for the applications.

I'm using neo4j to integrate this set with HR and financial allocations data to show the direct exposure of business applications to their budgets, and provide a rough value at risk on a per branch basis, and create big scary graph viz clouds of vulnerabilities that all point to the person responsible for them, mainly to get people to get off their asses and patch their shit.

I'm also using queries of the graph to auto-generate hierarchies of jira epics and stories and assign them to the business owners so we can track remediation across the whole enterprise in both jira and azure devops.

It has produced a navigable organization map and we can run queries like, show me the vulnerability exposure of this division based on the aggregate risk of the applications deployed by its branches, and show me who is responsible for fixing it. Show me the sr. manager who has the most vulnerabilites roll up to them by their jr. managers, etc.

Re:Knowledge Graphs by Iv on Saturday March 07, 2020 @01:56AM (#22510230)
Isn't that mostly a database problem? I have loved knowledge graphs for a while until I realized they were just a way to obfuscate complex problems, not solving them.

Here, what part of your problem wouldn't be solved by a DB with a table of vulnerabilities, a table of branches and divisions, and a table of people?

A query can fetch the images and apps used by a division, then use that to query the vuln database.

I mean, I understand the problem is not super simple, but I fail to see what knowledge graphs bring to it?

Re:Knowledge Graphs by motohagiography on Saturday March 07, 2020 @09:14AM (#22511603)
Using a graph simplifies the query parameters, reduces the need for join() operations, and allows you to reason more directly about the data model instead of rdbms concepts and SQL. Could you do it in SQL? Sure, but the bolt browser and cypher made it go a lot faster. I'd go so far as to argue that graphs are optimized for reasoning and analysis, where relational dbs are optimized for performance.

When I need a performance problem solved, I'll hire an engineer to reimplement it, but until then, I can analyze the data at the business level. Right now I just need a rope across a river to see what's on the other side and not a bridge. :)

Re:Knowledge Graphs by bawolff on Saturday March 07, 2020 @03:06AM (#22510485)
Aren't knowledge graphs just a buzzword way of saying "graph database"?

So yeah, the types of problem a db system solves are db problems, even if its using a semantic network model instead of a relational model

Re:Knowledge Graphs by __afk__ on Saturday March 07, 2020 @09:37AM (#22511682)
Graph databases can hold totally bespoke data that makes sense only to the consuming application or they can hold data that has been factored and connected to outside terminologies and external datasets. One holds data, one holds knowledge.
Re:Knowledge Graphs by Londane on Saturday March 07, 2020 @04:30AM (#22510783)
As i understand it, the graph nature of Knowledge Graphs allows simpler queries. And also a better moddeling of the data.

Some even support techniques like inferring "new" wisdome that was not implicitly moddeld.

In the end you could solve all that on other ways like making the application smarter and using a "not so smart" db system. But i am not an expert in that topic...

Re:Knowledge Graphs by sjg007 on Friday March 06, 2020 @03:27PM (#22507007)
Sounds like a good idea for a startup or SaaS project. The JIRA epics to business owner mapping seems quite useful.
Re:Knowledge Graphs by motohagiography on Friday March 06, 2020 @04:11PM (#22507341)
Thanks, my actual product does that now. (qtra.io, collaboration tool for product level TRAs, exports to Jira for normal agile backlog grooming of threat/risk stories into iterations and development, shrinks TRAs from weeks to hours,) It generates a graph on the back end as well, aggregating risk data across all customers, without proprietary vuln data in it.

However, reality is on this project, all the input data exists in spreadsheets, which means you have to normalize it into your graph ontology data model. The SaaS here would be something like Graphene or hosted Neo4j.

If there were a graph model for something like powerBI for graphs, that could be a play. Else, it's more of a high dollar consulting solution.

Finding that SaaS in enterprise is limited because most enterprise people live in spreadsheets, which are both orders of magnitude more sophisticated, yet stunted compared to SaaS. But for all it's limitations, excel is turing complete, and your CRUD application never will be, even if the users don't know what that means. Enterprise tech is about generating data to drive conversations, it isn't about solving problems because managing that problem is somebody's job.

If a CIO came to me and said "fix my company," I would say, "sure, give me your data, then 6-12 months to herd all your cats" and I could do it. Nice lifestyle, but there's no exit in that.

Re:Knowledge Graphs by jnwatson on Friday March 06, 2020 @09:01PM (#22509212)
Yes indeed. I work for a startup that offers an intelligence analysis platform built on a knowledge graph. It is open source.

https://github.com/vertexproject/synapse

SaaS is in the works.

Re:Knowledge Graphs by bjonnh on Friday March 06, 2020 @10:09PM (#22509468)
to which extent does it scale? are we limited to in memory graphs?
Re:Knowledge Graphs by jnwatson on Saturday March 07, 2020 @12:52AM (#22510035)
We’re releasing a cluster version soon. It is a persistent graph (so not limited to RAM).

A single host can probably handle a billion nodes or so. Our largest in-production graph is about a third of that.